1. 程式人生 > 其它 >arduino串列埠讀取有delay和無delay的區別

arduino串列埠讀取有delay和無delay的區別

技術標籤:Arduino串列埠讀取arduino

String comdata="";
void setup() {
    Serial.begin(9600); // 設定串列埠波特率為9600
while (!Serial);    // 如果串列埠沒有開啟,則死迴圈下去不進行下面的操作
}
void loop() { 
      comdata="";
      delay(10);
       while(Serial.available()>0)//如果串列埠有bai資料進du入的話 
      {
        comdata +=char
(Serial.read());//每次讀一個字元,是ASCII碼的 //Serial.print(comdata); } if(comdata.length()==0){return;} Serial.println(comdata); comdata=""; }

//下面是執行圖
在這裡插入圖片描述
可以看出,讀取到的資料顯示很不穩定 - - !,但是加上delay之後

void loop() { 
      comdata="";
      delay(10);
while(Serial.available()>0)//如果串列埠有bai資料進du入的話 { comdata +=char(Serial.read());//每次讀一個字元,是ASCII碼的 //Serial.print(comdata); delay(10); } if(comdata.length()==0){return;} Serial.println(comdata); comdata=""; }

執行圖
在這裡插入圖片描述
加上delay之後就非常穩定了