很高兴能够评测STM32U575开发板,感谢EEWORLD论坛和ST公司提供开发板。U5系列是ST公司新推出的一款芯片,面向低功耗,但是性能又很强大。针对安全领域也做了很多设计。使用的是ARM Cortex-M33内核。
这款新的产品里也包含了很多新的内容,比如TrustZone、LPBAM等,在软件上也做了配套的设计,比如STM32CUBEMX对相关硬件的配套初始化,使用了新的操作系统ThreadX。在网上的资料比较少,使用起来有点吃力,还好ST的官网上提供了一些文档和视频。
这次测评,由于我这边疫情的影响,收到开发板晚了一些。在测评中也是更关注STM32U5的新功能。
针对TrustZone作为M33内核的一个重要特点,在硬件上对程序和数据进行了隔离,提高了产品的安全性,以下是针对其的测评,实现了针对TrustZone的软件开发。
[ ST NUCLEO-U575ZI-Q 测评] 2-初探TrustZone
[ ST NUCLEO-U575ZI-Q 测评] 3-使用cubemx软件配置TrustZone工程
[ ST NUCLEO-U575ZI-Q 测评] 4-TrustZone模式下-将非安全区代码注册到安全区
[ ST NUCLEO-U575ZI-Q 测评] 5-TrustZone模式下-将安全区代码注册到非安全区
[ ST NUCLEO-U575ZI-Q 测评] 6-TrustZone工程的启动流程
[ ST NUCLEO-U575ZI-Q 测评] 7-TrustZone工程的实践
[ ST NUCLEO-U575ZI-Q 测评] 8-关闭TrustZone
LPBAM是针对低功耗领域开发的一个新的功能,能够在停机模式下,通过DMA控制器实现外设与内存间的数据传递,并能通过事件实现一定的自动化流程,测评如下:
[ ST NUCLEO-U575ZI-Q 测评] 10-STM32U5系列针对低功耗的优化方法
[ ST NUCLEO-U575ZI-Q 测评] 11-LPBAM功能的使用
针对一些新功能也进行了测评,比如UART的超时中断,能够通过超时进行一帧数据的判断,相对于以前的设计,节省了一个定时器,也简化了软件设计。
[ ST NUCLEO-U575ZI-Q 测评] 9-通过UART的"接收超时"功能获取一帧数据
ST公司在软件方面也进行了更改,在后续芯片中不在官方支持FreeRTOS,而是改为AZure ThreadX操作系统了,这样能够借助AZure系列的软件包进行设计,统一了软件设计。以下测评了使用ThreadX新建一个任务。
[ ST NUCLEO-U575ZI-Q 测评] 12-使用AZure ThreadX操作系统创建一个任务
通过这段时间的测评,也是熟悉了STM32U5的一些新的功能,但是STM32U5的功能很多,还有很多没有测评完成,比如进一步使用Azure的USBX,通过这个USB的协议栈实现USB的开发,实现UCPD的功能等。后面将会继续学习,并将心得分享给大家。
ST公司在芯片设计上也是在不断创新,不断的加入新的功能,同时也是软件上进行配套设计,大大的简化了芯片的使用门槛,提高了易用性。通过这次评测也学到了许多新的知识,以后能够运用到新的设计中。再次感谢ST公司和EEWORLD论坛。