|
*阅读说明:以下仅做简要总结展示,排名不分先后。详细测评过程描述、源码、资料等请戳原链接查看。
为NUCLEO-WBA52CG开发板,它所采用主控芯片以Arm® Cortex®-M33为内核是超低功耗无线微控制器STM32WBA52CG,所用封装为UFQFPN-48,它具有1 MB闪存和128KBSRAM。
本打算先以I2C接口的OLED屏掌握第一个测试目标,无奈的是几经能力也没能成功,只好更换目的那点阵模块来测试一番。还别说,尽管它比OLED屏要多占用一个GPIO口,且它的能耗也比OLED屏要高,但它还是不负期待地被点亮了!
STM32WBA52是一种面向无线通信的开发板,因此在使用中应配上一款小巧和多用途的显示屏。这里需要的0.96寸LCD显示屏正符合其要求,它不但能显示数值信息,也能显示彩色的图像。
BMP085是一种可对环境温度及大气压进行检测的传感器,它体积小易于同0.96寸的LCD一起构成一个便携式的环境状态检测装置。如果再能把STM32WBA52所具有的无线通信添加进来,则可以有效地拓展其应用空间。
在通常的情况下,我们所所用的显示器件多是数码管、液晶屏、OLED屏及TFT屏。但在公共场合要显示信息,就要有较大尺寸以便观察。
此开发板所用芯片为STM32第三代2.4GHz无线产品,基于Cortex-M33单核SoC ,最高主频100MHz 最高发射功率达到+10dB,支持 BLE 5.3 全部功能。
它是专门为深度嵌入式实时 IoT 应用程序设计的。提供高级计划、通信、同步、计时器、内存管理和中断管理功能。非常易于使用,适用于要求极其苛刻的嵌入式应用程序。因为ThreadX 的占用空间非常小,最少只需要一个 2KB 的指令区域和 1 KB 的 RAM。
demo做得很精致,引脚PIN针引出方便拓展,可以对接ARDUINO板(没有试过,手册上有描述)蓝牙板叠层设计,母板背面有个很奢侈的STLINK-V3调试器。
这里体验一下STM32WBAP2P server。官方已经提供好例程,这里就直接介绍了,打开STM32CubeMX类型的工程,这里与蓝牙相关的配置项。
从简到繁,一步一步的使用GPIO。
STM32WBA52CG是支持蓝牙BLE 5.3,官方提供的STM32Cube_FW_WBA_V1.1.0资料包中提供了一个非常好的入门案例:BLE_p2pServer。
该例程配置使用TIM模块产生一个1s的中断,然后再中断服务函数中翻转LED。
本次我们将修改main.h中TIM模块相关参数,实现一个1us的中断,然后在ISR中,放置一个计数器,之后封装一个微秒延迟接口供主函数调用。
例程中常见的MCU外设的使用在Examples文件夹内,而BLE的部分都在Applications文件夹内,利用Web_Bluetooth_App_WBA 工具对几个例程做了下测试。
板卡的ADC采集是作为计划的一部分,不过只是测试Demo,以下仅为使用过程分享。
之前帖子内提到的WEB蓝牙工具,可以把数据实时绘制成曲线展示。这里就用HeartRate来作为基础工程。
因为ST的BLE工具无论是移动端还是WEB端都不可修改,即使源码也看不懂,毕竟不擅长的领域。但是Windows作为最常用的开发平台,大部分的测试调试工具都能够实现,所以就初步尝试用Qt的BLE模块来做个小工具。
上回我们用安卓的软件去探查这个BLE_Beacon,有两种方式是一直没有出现的。这次我找了个安卓软件来名字叫FeasyBeacon。其是四种方式都能找到的。
既然是BLE的soc当然是要测试一下BLE的性能。由于之前为了LED的亮灯,把出厂程序直接刷掉了,找了半天才找到BLE server程序。
STM32WBA52CG支持多种开发模式,包括IAR EmbeddedWorkbench®, MDK-ARM, 和STM32CubeIDE。在本例程中我们使用MDK-ARM作为开发环境
STM32WBA52CG支持TrustZone技术. TrustZone(可信执行环境)是Arm公司开发的一种安全技术,用于在单个处理器上创建硬件级的安全分区。
如何快速搭建编译环境。
|