Arduino - 按鈕 - 長按短按

Arduino - Button - Long Press Short Press Arduino - 按鈕 - 長按短按

Arduino - Button - Long Press Short Press

We will learn: 我們將學習:

  • How to detect the button’s short press
    如何檢測按鈕的短按
  • How to detect the button’s long press
    如何檢測按鈕的長按
  • How to detect both the button’s long press and short press
    如何檢測按鈕的長按和短按
  • Long press and short press with debouncing
    長按和短按帶去彈跳

In the first three parts, we learn how to detect in principle.
在前三部分中,我們學習了如何原則上進行檢測。

In the last part, we learn how to detect in practical use by applying the debounce. See why do we need to debounce for button. Without debouncing, we may detect wrong the button short press.
在最后一部分中,我們將學習如何通過應用去抖動來檢測實際使用中的檢測。看看為什么我們需要為按鈕去抖動。如果不去抖動,我們可能會檢測到錯誤的按鈕短按。

Hardware Required 所需硬件

1×Arduino UNO or Genuino UNO Arduino UNO 或 Genuino UNO
1×USB 2.0 cable type A/B USB 2.0 電纜 A/B 型
1×Push Button 按鈕
1×(Optional) Panel-mount Push Button (可選)面板安裝按鈕
1×Breadboard 面包板
1×Jumper Wires 跳線
1×(Optional) 9V Power Adapter for Arduino (可選)用于Arduino的9V電源適配器
1×(Recommended) Screw Terminal Block Shield for Arduino Uno (推薦)用于Arduino Uno的螺釘接線端子屏蔽層
1×(Optional) Transparent Acrylic Enclosure For Arduino Uno (可選)Arduino Uno透明亞克力外殼

About Button 關于按鈕

If you do not know about button (pinout, how it works, how to program …), learn about them in the following tutorials:
如果您不了解按鈕(引腳排列、工作原理、如何編程等),請在以下教程中了解它們:

  • Arduino - Button tutorial
    Arduino - 按鈕教程

Wiring Diagram 接線圖

Arduino Button Wiring Diagram

In this tutorial, we will use the internal pull-up resistor. Therefore, the state of the button is HIGH when normal and LOW when pressed.
在本教程中,我們將使用內部上拉電阻。因此,按鈕的狀態在正常時為高電平,按下時為低電平。

How To Detect Short Press 如何檢測短按

We measure the time duration between the pressed and released events. If the duration is shorter than a defined time, the short press event is detected.
我們測量按下和發布事件之間的持續時間。如果持續時間短于定義的時間,則檢測短按事件。

Let’s see step by step:
讓我們一步一步地看:

  • Define how long the maximum of short press lasts
    定義短按的最大持續時間
const int SHORT_PRESS_TIME = 500; // 500 milliseconds 
  • Detect the button is pressed and save the pressed time
    檢測按鈕是否被按下并保存按下時間
if(lastState == HIGH && currentState == LOW)pressedTime = millis(); 
  • Detect the button is released and save the released time
    檢測按鈕已釋放并保存釋放時間
if(lastState == LOW && currentState == HIGH)releasedTime = millis(); 
  • Calculate press duration and
    計算按壓持續時間和
long pressDuration = releasedTime - pressedTime; 
  • Determine the short press by comparing the press duration with the defined short press time.
    通過將按壓持續時間與定義的短按壓時間進行比較來確定短按。
if( pressDuration < SHORT_PRESS_TIME )  Serial.println("A short press is detected"); 

Arduino Code for detecting the short press 用于檢測短按的Arduino代碼

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/// constants won't change. They're used here to set pin numbers:
const int BUTTON_PIN = 7; // the number of the pushbutton pin
const int SHORT_PRESS_TIME = 500; // 500 milliseconds// Variables will change:
int lastState = LOW;  // the previous state from the input pin
int currentState;     // the current reading from the input pin
unsigned long pressedTime  = 0;
unsigned long releasedTime = 0;void setup() {Serial.begin(9600);pinMode(BUTTON_PIN, INPUT_PULLUP);
}void loop() {// read the state of the switch/button:currentState = digitalRead(BUTTON_PIN);if(lastState == HIGH && currentState == LOW)        // button is pressedpressedTime = millis();else if(lastState == LOW && currentState == HIGH) { // button is releasedreleasedTime = millis();long pressDuration = releasedTime - pressedTime;if( pressDuration < SHORT_PRESS_TIME )Serial.println("A short press is detected");}// save the the last statelastState = currentState;
}
Quick Steps 快速步驟
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Press the button shortly several times.
    短按按鈕幾次。
  • See the result on Serial Monitor
    在串行監視器上查看結果

※ NOTE THAT: ※ 注意事項:

The Serial Monitor may show several short press detection for one press. This is the normal behavior of the button. This behavior is called the “chattering phenomenon”. The issue will be solved in the last part of this tutorial.
串行監視器可能會顯示一次按下的幾次短按檢測。這是按鈕的正常行為。這種行為被稱為“顫動現象”。該問題將在本教程的最后一部分解決。

How To Detect Long Press 如何檢測長按

There are two use cases for detecting the long press.
檢測長按有兩個用例。

  • The long-press event is detected right after the button is released
    釋放按鈕后立即檢測到長按事件
  • The long-press event is detected during the time the button is being pressed, even the button is not released yet.
    在按下按鈕期間檢測到長按事件,甚至按鈕尚未松開。

In the first use case, We measure the time duration between the pressed and released events. If the duration is longer than a defined time, the long-press event is detected.
在第一個用例中,我們測量按下和發布事件之間的持續時間。如果持續時間超過定義的時間,則檢測長按事件。

In the second use case, After the button is pressed, We continuously measure the pressing time and check the long-press event until the button is released. During the time button is being pressed. If the duration is longer than a defined time, the long-press event is detected.
在第二個用例中,按下按鈕后,我們連續測量按下時間并檢查長按事件,直到釋放按鈕。在按下時間按鈕期間。如果持續時間超過定義的時間,則檢測長按事件。

Arduino Code for detecting long press when released Arduino代碼,用于在釋放時檢測長按

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/// constants won't change. They're used here to set pin numbers:
const int BUTTON_PIN = 7; // the number of the pushbutton pin
const int LONG_PRESS_TIME  = 1000; // 1000 milliseconds// Variables will change:
int lastState = LOW;  // the previous state from the input pin
int currentState;     // the current reading from the input pin
unsigned long pressedTime  = 0;
unsigned long releasedTime = 0;void setup() {Serial.begin(9600);pinMode(BUTTON_PIN, INPUT_PULLUP);
}void loop() {// read the state of the switch/button:currentState = digitalRead(BUTTON_PIN);if(lastState == HIGH && currentState == LOW)        // button is pressedpressedTime = millis();else if(lastState == LOW && currentState == HIGH) { // button is releasedreleasedTime = millis();long pressDuration = releasedTime - pressedTime;if( pressDuration > LONG_PRESS_TIME )Serial.println("A long press is detected");}// save the the last statelastState = currentState;
}
Quick Steps 快速步驟
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Press and release the button after one second.
    一秒鐘后按下并松開按鈕。
  • See the result on Serial Monitor
    在串行監視器上查看結果

The long-press event is only detected right after the button is released
只有在釋放按鈕后才能檢測到長按事件

Arduino Code for detecting long press during pressing 用于在按壓過程中檢測長按的Arduino代碼

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/// constants won't change. They're used here to set pin numbers:
const int BUTTON_PIN = 7; // the number of the pushbutton pin
const int LONG_PRESS_TIME  = 1000; // 1000 milliseconds// Variables will change:
int lastState = LOW;  // the previous state from the input pin
int currentState;     // the current reading from the input pin
unsigned long pressedTime  = 0;
bool isPressing = false;
bool isLongDetected = false;void setup() {Serial.begin(9600);pinMode(BUTTON_PIN, INPUT_PULLUP);
}void loop() {// read the state of the switch/button:currentState = digitalRead(BUTTON_PIN);if(lastState == HIGH && currentState == LOW) {        // button is pressedpressedTime = millis();isPressing = true;isLongDetected = false;} else if(lastState == LOW && currentState == HIGH) { // button is releasedisPressing = false;}if(isPressing == true && isLongDetected == false) {long pressDuration = millis() - pressedTime;if( pressDuration > LONG_PRESS_TIME ) {Serial.println("A long press is detected");isLongDetected = true;}}// save the the last statelastState = currentState;
}
Quick Steps 快速步驟
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Press and release the button after several seconds.
    幾秒鐘后按下并松開按鈕。
  • See the result on Serial Monitor
    在串行監視器上查看結果

How To Detect Both Long Press and Short Press 如何檢測長按和短按

Short Press and Long Press after released 發布后短按和長按

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/// constants won't change. They're used here to set pin numbers:
const int BUTTON_PIN = 7; // the number of the pushbutton pin
const int SHORT_PRESS_TIME = 1000; // 1000 milliseconds
const int LONG_PRESS_TIME  = 1000; // 1000 milliseconds// Variables will change:
int lastState = LOW;  // the previous state from the input pin
int currentState;     // the current reading from the input pin
unsigned long pressedTime  = 0;
unsigned long releasedTime = 0;void setup() {Serial.begin(9600);pinMode(BUTTON_PIN, INPUT_PULLUP);
}void loop() {// read the state of the switch/button:currentState = digitalRead(BUTTON_PIN);if(lastState == HIGH && currentState == LOW)        // button is pressedpressedTime = millis();else if(lastState == LOW && currentState == HIGH) { // button is releasedreleasedTime = millis();long pressDuration = releasedTime - pressedTime;if( pressDuration < SHORT_PRESS_TIME )Serial.println("A short press is detected");if( pressDuration > LONG_PRESS_TIME )Serial.println("A long press is detected");}// save the the last statelastState = currentState;
}
Quick Steps 快速步驟
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Long and short press the button.
    長按和短按按鈕。
  • See the result on Serial Monitor
    在串行監視器上查看結果

※ NOTE THAT: ※ 注意事項:

The Serial Monitor may show several short press detection when long press. This is the normal behavior of the button. This behavior is called the “chattering phenomenon”. The issue will be solved in the last part of this tutorial.
長按時,串行監視器可能會顯示幾次短按檢測。這是按鈕的正常行為。這種行為被稱為“顫動現象”。該問題將在本教程的最后一部分解決。

Short Press and Long Press During pressing 短按和長按 按壓過程中

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/// constants won't change. They're used here to set pin numbers:
const int BUTTON_PIN = 7; // the number of the pushbutton pin
const int SHORT_PRESS_TIME = 1000; // 1000 milliseconds
const int LONG_PRESS_TIME  = 1000; // 1000 milliseconds// Variables will change:
int lastState = LOW;  // the previous state from the input pin
int currentState;     // the current reading from the input pin
unsigned long pressedTime  = 0;
unsigned long releasedTime = 0;
bool isPressing = false;
bool isLongDetected = false;void setup() {Serial.begin(9600);pinMode(BUTTON_PIN, INPUT_PULLUP);
}void loop() {// read the state of the switch/button:currentState = digitalRead(BUTTON_PIN);if(lastState == HIGH && currentState == LOW) {        // button is pressedpressedTime = millis();isPressing = true;isLongDetected = false;} else if(lastState == LOW && currentState == HIGH) { // button is releasedisPressing = false;releasedTime = millis();long pressDuration = releasedTime - pressedTime;if( pressDuration < SHORT_PRESS_TIME )Serial.println("A short press is detected");}if(isPressing == true && isLongDetected == false) {long pressDuration = millis() - pressedTime;if( pressDuration > LONG_PRESS_TIME ) {Serial.println("A long press is detected");isLongDetected = true;}}// save the the last statelastState = currentState;
}
Quick Steps 快速步驟
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Long and short press the button.
    長按和短按按鈕。
  • See the result on Serial Monitor
    在串行監視器上查看結果

※ NOTE THAT: ※ 注意事項:

The Serial Monitor may show several short press detection when long press. This is the normal behavior of the button. This behavior is called the “chattering phenomenon”. The issue will be solved in the last part of this tutorial.
長按時,串行監視器可能會顯示幾次短按檢測。這是按鈕的正常行為。這種行為被稱為“顫動現象”。該問題將在本教程的最后一部分解決。

Long Press and Short Press with Debouncing 長按和短按帶去彈跳

It is very important to debounce the button in many applications.
在許多應用中,對按鈕進行去抖動非常重要。

Debouncing is a little complicated, especially when using multiple buttons. To make it much easier for beginners, we created a library, called ezButton.
去抖動有點復雜,尤其是在使用多個按鈕時。為了讓初學者更容易,我們創建了一個名為 ezButton 的庫。

We will use this library in below codes
我們將在下面的代碼中使用這個庫

Short Press and Long Press with debouncing after released 短按和長按,釋放后去彈跳

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/#include <ezButton.h>const int SHORT_PRESS_TIME = 1000; // 1000 milliseconds
const int LONG_PRESS_TIME  = 1000; // 1000 millisecondsezButton button(7);  // create ezButton object that attach to pin 7;unsigned long pressedTime  = 0;
unsigned long releasedTime = 0;void setup() {Serial.begin(9600);button.setDebounceTime(50); // set debounce time to 50 milliseconds
}void loop() {button.loop(); // MUST call the loop() function firstif(button.isPressed())pressedTime = millis();if(button.isReleased()) {releasedTime = millis();?    long pressDuration = releasedTime - pressedTime;?    if( pressDuration < SHORT_PRESS_TIME )
?      Serial.println("A short press is detected");?    if( pressDuration > LONG_PRESS_TIME )
?      Serial.println("A long press is detected");}
}
Quick Steps 快速步驟
  • Install ezButton library. See How To
    安裝 ezButton 庫。了解操作方法
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Long and short press the button.
    長按和短按按鈕。
  • See the result on Serial Monitor
    在串行監視器上查看結果

Short Press and Long Press with debouncing During Pressing 短按和長按,按壓過程中去彈跳

/** Created by ArduinoGetStarted.com** This example code is in the public domain** Tutorial page: https://arduinogetstarted.com/tutorials/arduino-button-long-press-short-press*/#include <ezButton.h>const int SHORT_PRESS_TIME = 1000; // 1000 milliseconds
const int LONG_PRESS_TIME  = 1000; // 1000 millisecondsezButton button(7);  // create ezButton object that attach to pin 7;unsigned long pressedTime  = 0;
unsigned long releasedTime = 0;
bool isPressing = false;
bool isLongDetected = false;void setup() {Serial.begin(9600);button.setDebounceTime(50); // set debounce time to 50 milliseconds
}void loop() {button.loop(); // MUST call the loop() function firstif(button.isPressed()){pressedTime = millis();isPressing = true;isLongDetected = false;}if(button.isReleased()) {isPressing = false;releasedTime = millis();long pressDuration = releasedTime - pressedTime;if( pressDuration < SHORT_PRESS_TIME )Serial.println("A short press is detected");}if(isPressing == true && isLongDetected == false) {long pressDuration = millis() - pressedTime;if( pressDuration > LONG_PRESS_TIME ) {Serial.println("A long press is detected");isLongDetected = true;}}
}
Quick Steps 快速步驟
  • Install ezButton library. See How To
    安裝 ezButton 庫。了解操作方法
  • Upload the above code to Arduino via Arduino IDE
    通過Arduino IDE將上述代碼上傳到Arduino
  • Long and short press the button.
    長按和短按按鈕。
  • See the result on Serial Monitor
    在串行監視器上查看結果

Video Tutorial 視頻教程

We are considering to make the video tutorials. If you think the video tutorials are essential, please subscribe to our YouTube channel to give us motivation for making the videos.
我們正在考慮制作視頻教程。如果您認為視頻教程是必不可少的,請訂閱我們的 YouTube 頻道,為我們制作視頻提供動力。

Why Needs Long Press and Short Press 為什么需要長按和短按

  • To save the number of buttons. A single button can keep two or more functionalities. For example, short press for changing operation mode, long press for turn off the device.
    保存按鈕數量。一個按鈕可以保留兩個或多個功能。例如,短按可更改操作模式,長按可關閉設備。
  • Use of long press to reduce the short press by accident. For example, some kinds of devices use the button for factory reset. If the button is pressed by accident, it is dangerous. To avoid it, the device is implemented to be factory reset only when the button is long-press (e.g over 5 seconds)
    使用長按減少意外短按。例如,有些設備使用按鈕進行出廠重置。如果意外按下按鈕,就會造成危險。為了避免這種情況,設備只有在長按按鈕(例如超過 5 秒)時才能進行出廠重置。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35875.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35875.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35875.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

重大進展!微信支付收款碼全場景接入銀聯網絡

據中國銀聯6月19日消息&#xff0c;近日&#xff0c;銀聯網絡迎來微信支付收款碼場景的全面接入&#xff0c;推動條碼支付互聯互通取得新進展&#xff0c;為境內外廣大消費者提供更多支付選擇、更好支付體驗。 2024年6月&#xff0c;伴隨微信支付經營收款碼的開放&#xff0c;微…

Docker部署Nginx+Keepalived

# 創建掛載路徑 mkdir /data/nginx_keep/nginx/conf -p mkdir /data/nginx_keep/keepalived/vim nginx.conf user nginx; worker_processes auto;error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid;events {worker_connections 1024; }http {incl…

Rust: duckdb和polars讀csv文件比較

一、文件準備 樣本內容&#xff0c;N行9列的csv標準格式&#xff0c;有字符串&#xff0c;有浮點數&#xff0c;有整型。 有兩個csv文件&#xff0c;一個大約是2.1萬行&#xff1b;一個是64萬行。 二、toml文件 [package] name "my_duckdb" version "0.1.0&…

opencv簡單小項目

OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一個開源的計算機視覺和機器學習軟件庫&#xff0c;它提供了大量的圖像和視頻處理功能。使用OpenCV可以開發各種簡單的小項目&#xff0c;例如&#xff1a; 圖像基本操作&#xff1a; 讀取和顯示圖像。調整…

弱監督學習

弱監督學習&#xff08;Weak Supervision&#xff09;是一種利用不完全、不精確或噪聲數據進行模型訓練的方法。以下是一些常用的弱監督方法及其原理&#xff1a; 1. 數據增強&#xff08;Data Augmentation&#xff09; 原理&#xff1a; 數據增強是一種通過增加訓練數據的多…

區塊鏈的歷史和發展:從比特幣到以太坊

想象一下&#xff0c;你住在一個小鎮上&#xff0c;每個人都有一個大賬本&#xff0c;記錄著所有的交易。這個賬本很神奇&#xff0c;每當有人買賣東西&#xff0c;大家都會在自己的賬本上記一筆&#xff0c;確保每個人的賬本都是一致的。這就是區塊鏈的基本思想。而區塊鏈的故…

HG/T 5838-2021金屬骨架發泡橡膠復合密封板檢測

金屬骨架發泡橡膠復合密封板是指工作溫度范圍-40&#xff5e;140℃&#xff0c;峰值溫度為150℃條件下使用的金屬骨架發泡密封板。 HG/T 5838-2021金屬骨架發泡橡膠復合密封板檢測項目&#xff1a; 測試項目 測試標準 外觀 HG/T 5838 厚度 HG/T 5838 壓縮性能 GB/T 206…

VSCode安裝OpenImageDebugger

VSCode安裝OpenImageDebugger 1. 官網2. 編譯2.1 依賴項2.2 編譯 OpenImageDebugger2.3 配置 GDB 和 LLDB 3. 驗證安裝是否成功 1. 官網 下載路徑&#xff1a;OpenImageDebugger 2. 編譯 2.1 依賴項 官網上描述&#xff0c; Qt 5.15.1Python 3.10.12 這兩個其實配置并不需…

【好物推薦】給大家安利一個liux運維全能腳本工具箱

前幾天在開源社區沖浪的時候無意間逛到一個部署帖&#xff0c;里面提到了一個腳本&#xff0c;讓我眼前一亮。 科技Lion的Shell腳本&#xff01;大家趕緊去體驗學習一下&#xff0c;感覺寫的還是不錯的。 該工具是一款全能腳本工具箱&#xff0c;使用shell腳本編寫。專為Linux服…

Jenkins多stage共享同一變量方式

在第一個stage中為這個變量賦值&#xff0c;在其它stage中使用這個變量 import java.nio.file.Files import java.nio.file.Path import java.nio.file.Paths import java.nio.file.StandardCopyOption import groovy.json.JsonOutput import groovy.json.JsonSlurper// 共享的…

圖解HTTP筆記整理(前六章)

圖解HTTP 第一章 web使用HTTP &#xff08;HyperText Transfer Protocol&#xff0c;超文本傳輸協議&#xff09;協議作文規范&#xff0c;完成從客戶端到服務器端等一系列運作流程。 協議&#xff1a;計算機與網絡設備要相互通信&#xff0c;雙方就必須基于相同的方法。比如…

【論文閱讀】--Popup-Plots: Warping Temporal Data Visualization

彈出圖&#xff1a;扭曲時態數據可視化 摘要1 引言2 相關工作3 彈出圖3.1 橢球模型3.1.1 水平軌跡3.1.2 垂直軌跡3.1.3 組合軌跡 3.2 視覺映射與交互 4 實施5 結果6 評估7 討論8 結論和未來工作致謝參考文獻 期刊: IEEE Trans. Vis. Comput. Graph.&#xff08;發表日期: 2019&…

【TS】Typescript 中,什么是函數重載

在JavaScript中&#xff0c;傳統上并沒有直接支持函數重載&#xff08;Function Overloading&#xff09;的概念&#xff0c;這是許多其他面向對象編程語言&#xff08;如Java、C#、C等&#xff09;的一個特性。函數重載意味著可以使用相同的函數名但不同的參數列表&#xff08…

1.3.數據的表示

定點數 原碼 最高位是符號位&#xff0c;0表示正號&#xff0c;1表示負號&#xff0c;其余的n-1位表示數值的絕對值。 數值0的原碼表示有兩種形式&#xff1a; [0]原0 0000000 [-0]原1 0000000 例&#xff1a;1010 最高位為1表示這是一個負數&#xff0c; 其它三位 010…

HQChart使用教程30-K線圖如何對接第3方數據41-分鐘K線疊加股票增量更新

HQChart使用教程30-K線圖如何對接第3方數據40-日K疊加股票增量更新 疊加股票疊加分鐘K線更新Request 字段說明Data.symbol 協議截圖返回json數據結構overlaydata HQChart代碼地址交流 疊加股票 示例地址:https://jones2000.github.io/HQChart/webhqchart.demo/samples/kline_i…

可以一鍵生成熱點營銷視頻的工具,建議收藏

在當今的商業環境中&#xff0c;熱點營銷已經成為了一種非常重要的營銷策略。那么&#xff0c;什么是熱點營銷呢&#xff1f;又怎么做熱點營銷視頻呢&#xff1f; 最近高考成績慢慢公布了&#xff0c;領導讓結合“高考成績公布”這個熱點&#xff0c;做一個關于企業或產品的營銷…

運用 Offer 管理來提高候選人感受的關鍵點

一些公司不遺余力地為應聘者提供一流的感受&#xff0c;通過建立個性化的求職網站、簡單的處理流程和合作的面試流程。然而&#xff0c;由于Offer管理緩慢笨拙&#xff0c;所有這些好工作都可能失敗。 如果申請人想等幾天才能得到你的錄取通知書&#xff0c;而你的錄取通知書必…

鴻蒙NEXT開發:工具常用命令—install

安裝三方庫。 命令格式 ohpm install [options] [[<group>/]<pkg>[<version> | tag:<tag>]] ... ohpm install [options] <folder> ohpm install [options] <har file> alias: i 說明 group&#xff1a;三方庫的命名空間&#xff0c;可…

sys.stdin對象——實現標準輸入

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 語法參考 sys.stdin是一個標準化輸入對象&#xff0c;可以連續輸入或讀入文件所有內容&#xff0c;不結束&#xff0c;不能直接使用。輸入完成后&am…

print()函數——打印輸出

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 print()函數是Python編程最常見的函數&#xff0c;常用于輸出程序結果&#xff0c;默認輸出到屏幕&#xff0c;也可以輸出到指定文件。 語法參考 pr…