Python serial.write()不向Arduino发送串行数据
我正在编写一个Python脚本,它向Arduino发送一个字符,Arduino将收到的字符打印回来。但在这种情况下,Arduino总是给出一个垃圾值。执行Python脚本时也没有错误 我查看了多个博客、文章和教程,并遵循了确切的步骤,但没有找到解决方案 这是我的Python脚本:Python serial.write()不向Arduino发送串行数据,python,arduino,raspberry-pi,pyserial,Python,Arduino,Raspberry Pi,Pyserial,我正在编写一个Python脚本,它向Arduino发送一个字符,Arduino将收到的字符打印回来。但在这种情况下,Arduino总是给出一个垃圾值。执行Python脚本时也没有错误 我查看了多个博客、文章和教程,并遵循了确切的步骤,但没有找到解决方案 这是我的Python脚本: 导入序列号 ser=serial.serial(“/dev/ttyACM0”,9600) ser.write('8') read=ser.readline() 打印(阅读) 这是Arduino代码: int-temp
导入序列号
ser=serial.serial(“/dev/ttyACM0”,9600)
ser.write('8')
read=ser.readline()
打印(阅读)
这是Arduino代码:
int-temp;
无效设置(){
Serial.begin(9600);
温度=5;
}
void循环(){
temp=Serial.read();
串行打印LN(温度);
延迟(1000);
}
Arduino总是打印-1作为响应。您需要添加
Serial.available()
void循环()
{
如果(Serial.available()>0)
{
temp=Serial.read();
连续打印(“我收到:”);
串行打印LN(温度);
}
}
您需要添加Serial.available()
void循环()
{
如果(Serial.available()>0)
{
temp=Serial.read();
连续打印(“我收到:”);
串行打印LN(温度);
}
}
关于以下内容的文档:
返回
输入串行数据的第一个字节可用(如果没有可用数据,则为-1)-int
按照伊万·谢恩的建议去做,或者
void setup(){
Serial.begin(9600);
Serial.print(“您发送:”);
}
void循环(){
int temp=Serial.read();
如果(温度>=0)
串行打印((字符)温度);
}
确保将传入值强制转换为char(char)temp
文档:
返回
输入串行数据的第一个字节可用(如果没有可用数据,则为-1)-int
按照伊万·谢恩的建议去做,或者
void setup(){
Serial.begin(9600);
Serial.print(“您发送:”);
}
void循环(){
int temp=Serial.read();
如果(温度>=0)
串行打印((字符)温度);
}
确保将传入值强制转换为char(char)temp