模板: Pico-BLE-Code
来自Waveshare Wiki
示例程序介绍
对于 Pico-BLE 模块,我们提供了一个串行示例。在此我们以C代码来解释该功能。
底层硬件接口
BLE.c
蓝牙模块初始化函数,主要判断蓝牙模块是否与手机连接成功,是否开启了notify功能,查询蓝牙模块的波特率、是否是低功耗模式、名称、地址,修改模块的名称
void BLE_Init()
执行并处理BLE命令
uint8_t Cmd_Process(uint8_t *data) data:要发送的命令指针地址
透传接收函数,手机发送给模块什么数据,模块通过这个函数接收并返回相同的数据
void UART_RX() 查询接收 void UART_RX_IRQ() 中断接收
参数修改
BLE.h
#define UART_ID uart0 Pico串口选择 #define BAUD_RATE 115200 串口波特率选择 #define DATA_BITS 8 串口数据位数 #define STOP_BITS 1 串口数据停止位数 #define PARITY UART_PARITY_NONE 串口是否进行奇偶校验 #define UART_TX_PIN 0 Pico串口TX引脚选择 #define UART_RX_PIN 1 Pico串口RX引脚选择 #define BLE_MODE_PIN 15 蓝牙模块状态检测脚
模块命令
CMD.h
具体使用可以参考我们提供的用户手册
演示
手机APP演示
连接好Pico与Pico-BLE 打开python程序,运行
手机端打开PicoGO软件(这里只是做一个演示,可以在应用商店下载任意的蓝牙APP均可)
点击蓝牙控制
点击右上角的搜索
点击串口模式(随后会弹出请求配对界面,无需密码)
点击配对,电脑上与手机上会出现如下内容
在手机上输入数据,点击发送(电脑上会显示出你发送的界面)
PS:手机端使用BLE协议的APP需要打开 notify 接口
电脑AT指令演示
使用USB转串口模块连接好电脑与Pico-BLE,打开SSCOM软件,选择对应的波特率(默认为115200),输入指令,使能“加回车换行”(一定要,不然指令是无效的)
上图指令为复位指令,更多指令详见用户手册