Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中通过pyserial调用arduino函数_Python_Arduino - Fatal编程技术网

在python中通过pyserial调用arduino函数

在python中通过pyserial调用arduino函数,python,arduino,Python,Arduino,我正在尝试从连接到arduino的传感器获取超声波读数,运行该传感器的函数在ardunio草图中,但是我希望能够在需要时通过python脚本调用该函数?有人能帮忙吗 这很简单。。首先,您需要具有正确设置(正确的COM端口和波特率)的pyserial库。然后在主函数中的arduino中添加如下代码: int incoming; void loop() { if(Serial.available() > 0) { incoming = Serial.read(); } if

我正在尝试从连接到arduino的传感器获取超声波读数,运行该传感器的函数在ardunio草图中,但是我希望能够在需要时通过python脚本调用该函数?有人能帮忙吗

这很简单。。首先,您需要具有正确设置(正确的COM端口和波特率)的pyserial库。然后在主函数中的arduino中添加如下代码:

int incoming;
void loop() {
  if(Serial.available() > 0) {
    incoming = Serial.read();
  }
  if(incoming == 1) {
    yourFunction();
  } else {
    errorFunction();
  }
}

需要从python脚本发送值“1”。如果它是由arduino发送和接收的,则将执行
yourFunction()
,否则将执行
errorFunction()
。如果(传入==1)将
更改为您想要的任何内容

请看:谢谢,这非常有用。我如何将值1从python发送到arduino?是否使用“.write()”?是的,完全正确。然后在python中,您只需要读取串行端口。如果您查看arduino串行库,并查看写函数,您可以说:_将二进制数据写入串行端口。该数据以字节或字节序列的形式发送;要发送表示数字位数的字符,请改用print()函数。\u所以,如果您想发送一个字符串/字符(如果它被解析为char,也可以是数字),请使用print。发送的编号如下:
Serial.print(“7”)
函数中是否包含serial.print()是否重要?一旦函数运行,它还会发送吗?