Arduino和pyserial和ble

Posted

技术标签:

【中文标题】Arduino和pyserial和ble【英文标题】:Arduino and pyserial and ble 【发布时间】:2021-10-06 06:53:27 【问题描述】:

实际上我可以通过电缆将数据从 pyhton(pyserial) 发送到 arduino,但我想用 hm-10 来做到这一点,通常是蓝牙模块,即 hc-05,hc-06 你可以找到端口, 带wire或wirelles(hc-05) com7口:

arduino = serial.Serial("COM7", baudrate=9600,timeout=.1)"

但是hm-10是ble。 我需要写什么而不是 com7? 或者我该如何解决这个问题? (Windows 10)

【问题讨论】:

【参考方案1】:

pySerial 库不适用于 HM-10 模块,因为该模块使用蓝牙低功耗(而不是蓝牙经典)。

这意味着您必须创建 GATT 客户端才能与 BLE GATT 服务器进行交互。通常情况下,您会让 Arduino 担任外围角色(服务器),让 Windows PC 担任中心角色(客户端)。

通过互联网快速搜索表明,HM-10 模块上的 GATT 服务具有以下值:

服务 UUID:0000FFE0-0000-1000-8000-00805F9B34FB 特征 UUID:0000FFE1-0000-1000-8000-00805F9B34FB

您可以使用通用的低功耗蓝牙扫描和探索工具(例如nRF Connect)检查这一点

Python BLE Central 库数量有限,Bleak 可能是其中的佼佼者,并且有很好的使用示例。

【讨论】:

以上是关于Arduino和pyserial和ble的主要内容,如果未能解决你的问题,请参考以下文章

使用 Arduino 和 PySerial 回显一系列字节

重新打开后,arduino 和 pyserial 之间的串行连接变慢

无法使用pyserial在arduino和python之间进行通信

PySerial + Arduino MEGA 1 秒延迟/响应时间

使用 PySerial 和 Arduino Uno 的时序问题

arduino 使用 pySerial 打开/关闭 LED