行到水穷处,坐看云起时—P-NUCLEO-WB55套件评测

据说ST家族系列器件已达799个,在今年的二月份,ST骄傲的再次发布新一代MCU器件,即STM32W

据说ST家族系列器件已达799个,在今年的二月份,ST骄傲的再次发布新一代MCU器件,即STM32WB正式。STM32WB系列整合了Cortex-M0+及Cortex-M4双核,配备了Bluetooth 5、OpenThread和ZigBee3.0连接技术,同时兼备超低功耗性能。STM32WB既注重节能降耗,又能同时执行无线协议和实时任务,是远程传感器、可穿戴跟踪器、楼宇自动化控制器、计算机外围设备、无人机和其它物联网设备的理想选择。

同时STM32Cube生态系统也作了同步更新,发布了STM32CubeMX的更新,开发人员可以轻松配置新MCU的引脚和时钟树。现有的STM32Cube扩展包,如X-CUBE-SBSFU,可帮助工程师实现安全启动和安全更新系统,也将与STM32WB超时兼容。STM32CubeWB MCU封装中针对蓝牙5.0和开放式线程的完整软件解决方案将变得更容易,同时用户可以预期今年第二季度将推出Zigbee协议栈,STM32CubeMonRF程序能够测量各种输出功率,PER(峰值误差率),这些参数用来评估错误率计数器的最大值,整体信号质量,以实现快速原型设计。

体验STM32WB系列MCU的最佳方法是使用P-NUCLEO-WB55套件,提供两个STM32WB55:一个在Nucleo64板上,使用QFN68封装,一个在USB DONGLE,使用QFN48封装。开发人员可以在些产品上直接开始编写应用程序,然后使用STM32CubeMX来查看它们是否可以降低引脚数,使用内存更少的组件,或者降低时钟速度以模拟具有不同的规格,看看哪种配置最适合自己的产品。

开发套件长啥样?

非常熟悉的风格,从包装上可以看出,套件除了一个NUCLEO板子,还包括一个USB DONGLE,用来与NUCLEO板子通信。

奇怪的是这次的PCB设计和以往的风格不同,以前的NUCLEO-64板子都是将ST-LINK和主控板分离开来,暴力狂可以直接将ST-LINK掰下来,板子还是板子,ST-LINK也还能用。这次的设计直接将ST-LINK放在PCB中间了。上面带金属屏蔽罩的就是主角了,STM32WB55RG,金属罩可以有效屏蔽信号干扰。引出的引脚与NUCLEO-64兼容,蝴蝶接口也是一样的。

来个STM32WB55的特写,可惜只能看到外壳。

开发板背面提供了一颗CR2032电池接口,可以摆脱USB供电的限制了。

这个设备用来与NUCLEO板进行通信测试之用,二者使用的MCU略有差别,如下

前者使用的是STM32WB55RGV6,而USB DONGLE上的MCU型号是STM32WB55CGU6。另外注意的USB DONGLE上也没有ST-LINK,要对它编程只能使用命令行模式来实现,内容参考后文中的程序测试一节。

STM32WB 平台是在市场领先的知名超低功耗STM32L4系列 MCU 的基础上发展而来。它提供同样的数字与模拟外设,适合需要更长电池使用寿命和复杂功能的应用。

STM32WB 除了富有多种通信特性外,还包括无晶振 USB2.0 FS 接口、音频支持、一个 LCD 驱动器、多达 72 个 GPIO、一个用于功耗优化的集成 SMPS 以及旨在最大限度延长电池使用寿命的多种低功耗模式。

除了无线和超低功耗特色方面,这款 MCU 还特别注重安全功能,例如 256 位 AES、PCROP、JTAG 熔丝、PKA(椭圆曲线加密引擎)和根安全服务 (RSS)。RSS 支持OTA验证 通信,不受无线协议栈或应用限制。

获得 了STM32WB55 Bluetooth 5 认证的设备提供 Mesh 1.0 软件支持和多种配置文件,并且可灵活集成专有 BLE 协议栈。

提供OpenThread 认证的软件协议栈。无线技术可同时运行 BLE/OpenThread 协议。内嵌通用 MAC 允许使用 IEEE 802.15.4 专有协议栈(如 ZigBee®)或其它专有协议,从而为将设备连接到物联网 (IoT) 提供更多选择。

开发套件提供了OOB(开箱即用)功能,接下来我们来快速上电体验。

NUCLEO开发板出厂时已烧录了应用程序,该设备充当一个P2P服务器,USB DONGLE出厂时预置的应用程序为P2P客户端。

将两个设备与PC的USB接口连接,其中NUCLEO开发板会广播一分钟设备信息,等待客户端来连接,此时需要按上USB DONGLE设备上的SW1按钮,稍等片刻二者就连接到了P2P服务器也就是NUCLEO开发板,然后二者开始通信,通信的外在特征为二者的绿色LED(LED2)会同步闪烁!

另外ST也提供了手机APP来演示具体的通信,下载并安装好APP后,在ANDROID设备上的画面如下

ST BLE StarNet应用程序可以通过手机上的BLE设备来与之通信通信,点击扫描后,出现如下画面

扫描后可以立即找到P2PSRV1,这是NUCLEO开发板上提供的服务,同时APP也提示该APP支持ST的FP-NET-BLESTAR1固件包,在NUCLEO上更新固件后同样可以通过该APP来与之进行通信。

同样,手机APP连接到NUCLEO开发板后,也可以与之进行通信,如下

点击APP界面的LED灯, 通过BLE与NUCLEO进行通信,点亮开发板上的LED灯。按下NUCLEO开发板上的SW1,也会将信息发送到手机APP上,APP显示"Button Pressed: …"信息,表明接收到了来自P2PSRV1的信息。

配套的固件程序库是我们学习新产品的起点,通过研究数据手册及这些代码库,用户可以很快的进入到新硬件平台中,接下来点个灯,再熟悉下其它的软件如STM32CubeProgrammer等。

ST官方提供了AC6的SW4STM32免费开发平台,使用该平台,用户可以不必担心版权及费用,照样可以来进行ST系列MCU的开发工作。

首先安装SW4STM32软件,安装过程不赘述。

接下来将固件库的程序导入到SWSTM32中,如下

这是打开一个GPIO工程的情况,我们可以直接编译该程序并通过ST-LINK将程序下载到开发板,也可以直接打开工程目录下的Binary目录,里面有现成的.hex文件,通过STM32CubeProgrammer来烧写程序

该程序除了提供了多种连接方式,包括ST-LINK、USB及UART等,另外该程序也可以用来更新ST-LINK的固件,如图

另外官方的说法,该板也会有mbed的支持,不过截止本文写作时,在官方的mbed上只能找到硬件平台,还没有编程库的支持,估计还要等上一段时间。

最后提一下USB DONGLE的使用。USB DONGLE在出厂时已刷写好了与NUCLEO配套的固件程序,如果想要更改USB DONGLE的功能,也可以在固件库里找到其它的一些应用,将.hex文件写入到USB DONGLE中,不过由于USB DONGLE没有ST-LINK,只能通过命令行的方式通过USB来进行固件的烧写,如下是使用命令行方式来读取USB DONGLE信息的画面

具体的方法请参考命令行帮助或官方文档,此处不详细说明。

另外从官方平台也了解到,一系列针对STM32WB的WORKSHOP即将全面铺开,届时全球工程师将会对STM32WB会有更好的认识,新产品也会得到更好的技术支持。

总结来说,除了专用于应用处理的高性能Arm Cortex-M4内核外,新产品还集成了独立的Arm Cortex-M0 +内核,可驱动支持蓝牙 5.0,Thread和专有IEEE 802.15的2.4 GHz多协议无通信。超高效率的STM32WB MCU在工作模式下的功耗低至50μA/ MHz,待机模式下的功耗低至600 nA,具有32 KB的SRAM保持功能和RTC运行。P-NUCLEO-WB55开发套件结合ST强大的生态,也许在云的边缘,将会有更新的气象!

打开APP阅读更多精彩内容