创建BLE工程不成功之后看了官方WiKi和一些网友的分享,这里再梳理一遍。使用Nucleo-WB09KE开发板。 首先会想到开启Radio外设,CubeMX比较人性化的一点就是灰色不可操作时有对应的提示,比如下图 看到这里就知道首先要开启TIMER,那么就先使能RADIO TIMER。 如果开始没有配置过RCC使用外部时钟,这里就看不到提示了。HSE和LSE都选上然后时钟树页面修改下源 开启RADIO后,会弹出一个提示,Radio中断必须最高优先级,事实上已经默认是0了。0 b/ o" F4 B) |+ o. ~1 U 并且在开启RADIO时有提醒,是引脚复用的提醒。可以把LED和按键这些外设默认配置取消能消除警告/ W8 p: b7 y+ Q3 m6 y9 V5 U 除此之外还提示要开启PKA 然后就可以使能BLE外设配置了。选择外设和GATT服务应用,填充本地名,就是服务端广播的名字,默认。" k; I$ Q+ q+ N6 N/ B: n& v 保存配置和编译工程,然后发现有个错误提示 # L( D$ A/ C7 M& w1 @8 M 需要开启RNG功能,还有一点需要手动添加开启服务的程序,在app_ble中已经生成代码,添加到app_init函数内,重新编译后运行,用手机搜索下蓝牙可以看到 开启调试信息需要配置串口和使能协议栈的配置选项,如下 串口最好开启DMA。然后运行程序可以看到打印信息了。 后面再研究下用手机app点灯。; R. U* D1 x5 Z. k: ? . o. v- ^- a: B% b, p , f V3 o' M! \ |
【NUCLEO-WB09KE评测】BLE创建服务和写特征控制LED
【NUCLEO-WB09KE评测】+使用STM32CubeMX新建蓝牙工程
【NUCLEO-WB09KE评测】BLE例程HeartRate及工具探索
【NUCLEO-WB09KE评测】使用I2C点亮一个OLED
STM32 生态系统|基于STM32WB的低功耗蓝牙应用(一)
【NUCLEO-WB09KE评测】STM32WB09KE的内部BootLoader使用
【NUCLEO-WB09KE评测】USART的printf和GPIO的使用
【NUCLEO-WB09KE评测】+ 一些坑和点灯仪式
Nucleo-STM32WB09KE测评--IIC传感器读取
STM32WB0系列,让高性价比蓝牙应用触手可及