Arduino 等待輸入

Ammar Ali 2023年1月30日 2021年4月29日
  1. 使用 Serial.avaiable() 函式將 Arduino 設定為等待輸入
  2. 使用 digitalRead() 函式將 Arduino 設定為等待輸入
Arduino 等待輸入

本教程將討論兩種方法來設定 Arduino 以等待輸入。一種方法用於串列埠或模擬引腳,另一種方法用於數字引腳。

使用 Serial.avaiable() 函式將 Arduino 設定為等待輸入

如果要從串列埠讀取輸入,則可以使用 Serial.available() 函式來等待輸入。該函式獲取串列埠上存在的位元組數。如果沒有輸入,它將返回零。

void setup() {
    Serial.begin(9600);
}

void loop() {
    while(Serial.available() == 0) {
    }
    int mydata = Serial.read();
}

在上面的程式碼中,如果串列埠沒有輸入,則 Arduino 將卡在一個迴圈中並保持在那裡。如果輸入到達串列埠,則迴圈將中斷,並且串列埠將使用 Serial.read() 讀取資料,並將其儲存在變數 mydata 中。

使用 digitalRead() 函式將 Arduino 設定為等待輸入

如果要從數字引腳讀取輸入,則可以使用 digitalRead() 函式等待輸入。該函式讀取數字引腳 LOWHIGH 的數字值。

int valPin = 0;
int inputPin = 7;

void setup() {
    pinMode(inputPin, INPUT);
}

void loop() {
    while(digitalRead(inputPin) != LOW);{
  }
    valPin = digitalRead(inputPin);
}

在上面的程式碼中,如果數字引腳上沒有輸入,則 Arduino 將卡在一個迴圈中並保持在那裡。如果輸入到達數字引腳,則迴圈將中斷,並且序列將使用 digitalRead() 讀取資料並將其儲存在變數 valPin 中。

Author: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook