使用STM32WBA52CG创建BLE工程,需要使用STM32CUBEMX的中间层STM32_WPAN。 WPAN是Wireless Personal Area Network的缩写。
要使能这个中间层,需要先使能很多外设,分别是:
- ADC4的温度传感器通道:用于PHY的校准
- CRC:验证BLE的数据传输
- RAMCFG:用于动态修改RAM的配置
- ICHACHE:用于提高从内存中存取指令的效率
- RNG:生成随机数
- RF:射频输出
- RTC:用于低功耗模式里的自动唤醒
如果需要输出DEBUG的信息的话,还需要使能串口:
- USART1
- GPDMA1
- ADC4的采样时间可以设置的长一些,比如设置为814.5个周期,提高ADC采样的精度。
- ICHACHE设置为”1-way (dircet mapped cache)”
- 激活SRAM1的RAMCFG
其它的可以参考官方提供的示例设置。
激活了STM32_WPAN之后,就需要对BLE进行设置。
1. 选择BLE的模式,比如作为服务端,这样我们就可以通过手机对开发板进行设置了
- 广播参数的设置,还有广播内容的设置,在”BLE Advertising”里进行设置
- 设置服务的个数
- 根据自己的要求设置服务的特性值、权限等信息
- BLE的一些设置项
- 生成工程的设置
- 堆栈都要设置的大一些,堆设置为0x3000,栈大小为0x1000
- 对初始化函数进行设置,有一些不能设置为static的,因为会在其他地方调用初始化函数
至此就可以生成相关的工程了,可以看到需要设置的内容还是很多的,在易用性上比较差。