python数据如何用蓝牙发送_使用Python 3通过蓝牙发送消息

博主在尝试使用Python 3通过蓝牙连接发送消息到Arduino(使用HC-06)时遇到错误。已成功建立连接,但在发送消息阶段出现问题。尝试多种数据类型如`sock.send("2")`、`sock.send(str('2'))`等均报错。编辑后的尝试如`sock.send("2".encode())`也导致TypeError。怀疑可能是PyBluez库安装或使用不当导致的问题,计划在Raspberry Pi 3上验证。
摘要由CSDN通过智能技术生成

我目前正在尝试从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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值