【开发环境】
1、Debian 12。
2、tkinter
3、miniconda
4、python3.9
【实现步步骤】
1、新建conda 环境 conda creat -n python5_pro=python3.9
2、激活环境 conda activate python5_por
3、安装bleak库:pip install bleak
4、安装tkinter库:pip install tkinter
5、测试是否安装成功:
>>> import tkinter
>>> import bleak
复制代码【程序编写】
1、首先使用bleak进行搜索,如果搜索到了服务,打印到列表中:
2、发现服务成功后,点击列表中的服务,他将连接到蓝牙设备上,如果成功测显示成功状态:
3、订阅心电设备的服务:
# 订阅特定的 GATT 特征
target_uuid = "0000fe42-8e22-4541-9d4c-21edae82ed19"
if target_uuid in [str(char.uuid) for service in services for char in service.characteristics]:
await self.client.start_notify(target_uuid, self.notification_handler)
self.update_status(f"Subscribed to characteristic {target_uuid}")
else:
self.update_status(f"Characteristic {target_uuid} not found")
复制代码4、生成回调函数,如果接收到了数据,则进行解析,并显示到GUI界面。
def notification_handler(self, sender, data):
print(f"Received data from {sender}: {data}")
# 这里可以根据数据格式解析心率和血氧值
# 示例:假设数据是简单的字节流,前一个字节是心率,后一个字节是血氧
if len(data) == 2:
heart_rate = data[0] # 前一个字节是心率
oxygen_level = data[1] # 后一个字节是血氧
self.update_heart_rate(heart_rate)
self.update_oxygen_level(oxygen_level)
else:
print(f"Unexpected data length: {len(data)}")
复制代码【总结】
米尔-瑞芯微RK3576核心板及开发板,板载了wifi、蓝牙模块,通过python的bleak库,可以快速的建立基于低功耗蓝牙的应用。在医疗领域大有可为。