本帖最后由 cooldog123pp 于 2023-7-25 23:32 编辑
#申请原创# 既然是BLE的soc当然是要测试一下BLE的性能。由于之前为了LED的亮灯,把出厂程序直接刷掉了,找了半天才找到BLE server程序。路径如下,如果刷掉的小伙伴可以直接重新刷这个程序即可:\STM32Cube_FW_WBA_V1.1.0\Projects\NUCLEO-WBA52CG\Applications\BLE\BLE_p2pServer。
刷完以后,等待连接的状态LED3一直闪烁,串口打印如下:
打开蓝牙助手,搜索,可以看到p2ps_5A这个设备,点击连接,串口显示连接成功并打印如下:
如果长时间没有连接,那么就会进入休眠状态,LED3熄灭,串口打印如下:
拿个USB电流表测试一下实际工作电流,如下:
接下来介绍一下STM32WBA固件相关内容,Firmware框图如下,用过固件的工程师基本都了解,大致都是这个架构
这些项目是一组应用任务,旨在基于产品硬件(板卡、STM32核心功能、互连和外设)的产品特性,解释并提供使用案例,并围绕不同的固件组件构建。它们可以直接使用或根据STM32CubeWBA固件包的用户进行适应。它们提供基本功能,展示主要特性或演示性能。它们配有针对主要支持的工具链预配置的项目。
在STM32CubeWBA固件包中,这些项目按以下级别的顺序进行组织:
硬件平台: Hardware platform (nucleo boards)
工程代码:
Applications
Examples:仅使用HAL和BSP驱动程序(不使用中间件),其目的是演示产品/外设的特性和用法。示例按外设进行组织(每个外设一个文件夹,例如TIM),并提供不同的复杂度级别,从对给定外设的基本用法(例如使用定时器进行PWM生成)到集成多个外设(使用DAC进行信号生成,并使用TIM6和DMA进行同步)。板载资源的使用被减少到最低限度。
Examples_LL:仅使用LL驱动程序(不使用HAL和中间件),提供外设特性和配置过程的典型用例的最佳实现。示例按外设进行组织(每个外设一个文件夹,例如TIM),并且仅在Nucleo板上运行。
Examples_MIX:仅使用HAL、BSP和LL驱动程序(不使用中间件),旨在演示如何在同一应用程序中使用HAL和LL API,以结合两者的优点(HAL提供高级和功能导向的API,具有高度的可移植性,并将产品或IP的复杂性隐藏在最终用户面前。而LL则提供寄存器级别的低级API,具有更好的优化)。示例按外设进行组织(每个外设一个文件夹,例如TIM),并且仅在Nucleo板上运行。
Templates:略
Templates_LL:略
说明文档:
[size=13.3333px]
[size=13.3333px]资料一如既往的齐全。
|