在串口監視器中發送數據,板子收到數據並打印出來。
不需要額外電路,但是板子必須連接電腦,Arduino IDE的串口監視器也需要被打開。
代碼
/* 串口事件 當新的串口數據到來時,我們會將它添加到一個緩存字符串中。當收到換行符時就將緩存字符串 輸出到串口監視器並將字符串清空。 本例程的最好測試方式是使用不斷發送NMEA 0183語句的GPS接收器模塊 代碼公開。 */ String inputString = ""; // 緩存字符串 boolean stringComplete = false; // 是否string已經完成緩存 void setup() { // 初始化串口: Serial.begin(9600); // 將inputString反轉200個字符: inputString.reserve(200); } void loop() { // 如果緩存string接收完成: if (stringComplete) { Serial.println(inputString); // 清空String: inputString = ""; stringComplete = false; } } /* SerialEvent在arduino板上的RX引腳收到數據時會被系統自動調用。在系統內部,它是在每次loop函數執行時連帶執行的。因此如果再loop使用delay,serialEvent的調用也會被延遲,這樣就有可能一次收到>=2個字符。 */ void serialEvent() { while (Serial.available()) { // 獲取新的字符: char inChar = (char)Serial.read(); // 將它加到inputString中: inputString += inChar; // 如果收到了換行符,就將一個“旗標”變量設置為true,這樣loop函數就知道inputString已經緩存完成了: if (inChar == '\n') { stringComplete = true; } } }
難道是並行的程序??
還有,波特率也不會算,I am so vegetable!
參考連接:https://www.kancloud.cn/yundantiankong/arduino_examples/431653