【发布时间】:2018-11-11 08:48:04
【问题描述】:
我是 Arduino 新手,我正在尝试制作一款游戏。我正在使用 Python 将串行数据发送到 Arduino。我想让 Arduino 等到它从 Python 接收到串行数据。
我的问题是:
- 为什么 Arduino 程序不能处理来自 Python 的串行数据,而是处理来自串行监视器的数据?
- 如何使程序处理来自 Python 的数据? (等到 Python 的串行数据,然后保存数据。)
Arduino 代码:
int select;
void setup() {
Serial.begin(9600);
Serial.flush();
while(!Serial.available()){
}
if(Serial.available()>0){
select=Serial.read();
}
}
void loop() {
Serial.println(select);
delay(500);
}
Python 代码:
import serial
ser=serial.Serial('COM4',9600)
ser.write(b'1235')
ser.close()
解决了我没有得到串口数据的问题,但是又出现了一个新问题:
问题是,如果我得到串行数据,我的 Arduino 程序会跳回 while(!Serial.available()){} 循环,而不是转到 void loop(){}。
【问题讨论】: