我想在Windows 10和arduino中运行的python代码之间建立蓝牙连接,有什么办法吗?

时间:2019-05-22 05:32:53

标签: python bluetooth arduino

我想通过蓝牙从Windows 10上运行的python脚本通过arduino发送一些数据(例如字符串),有什么办法吗?

1 个答案:

答案 0 :(得分:0)

您的问题可能有点宽泛,但我将举一个简单的例子。您可以通过串行端口在Arduino和PC之间建立串行通信。 我称PC脚本为服务器,而Arduino为客户端。您可以根据需要编辑COM端口。

您可以找到有关pyserialArduino Serial的更多信息,并根据您的应用程序创建自己的协议。另外,还有类似this这样的好文章。

server.py

import serial

ser = serial.Serial('COM1',9600)
ser.open()
while True:
    new_data = ser.read()
    if new_data:
        # flush serial
        ser.flushInput()
        print("new data:", new_data)
        ser.write(b"ACK\r")

client.ino

void setup()
{
    pinMode(LED_BUILTIN, OUTPUT);
    serial.Begin(9600);
    Serial.print('Hello from Arduino\r');
    delay(1);
    // read respond
    if (Serial.ReadString().indexOf("ACK") != -1)
    {
        //valid answer received
        digitalWrite(LED_BUILTIN, HIGH);
        //flush Serial
        Serial.flush();
        delay(1000);
    }
    else
    {
        // no valid answer
        digitalWrite(LED_BUILTIN, HIGH);
        delay(1000);
    }

}

void loop()
{
}