我目前正在尝试从Python 3向Arduino(使用HC-06)发送消息 . 我已经设法 Build 连接,但我似乎无法找到正确的方式来发送消息 .
这是我用来设置连接的代码(我使用PyBluez进行蓝牙):
import sys
import bluetooth
bd_addr = '[MAC-address for HC-06]'
port = 1
sock = bluetooth.BluetoothSocket(bluetooth.RFCOMM)
sock.connect((bd_addr,port))
发送我正在尝试:
sock.send("2")
抛出错误:“TypeError:期望字节缓冲区,得到str” .
还尝试过:
sock.send(str('2'))
它还会抛出一个错误:“TypeError:期望字节缓冲区,得到str” .
我尝试过其他一些像“sock.send(2)”,“sock.send(b'2')”,bytearray,“sock.send(bytes([”2“]))” . 基本上,无论我尝试发送什么数据类型,都需要另一种数据类型 .
我已经设法通过我的Android手机上的蓝牙终端发送我的所有命令(目前只有1和2),所以Arduino网站没有问题 .
那里有很多指南,其中有一些我无法复制的例子 . 谁能告诉我如何发送基本命令?我甚至接近答案了吗?
EDIT: 我现在尝试了"sock.send(" 2