
1. 简介客户在 Nucleo-U575ZI 开发板上使用 TrustZone 架构,测试 LPBAM 功能。首先使能了 TrustZone 架构,然后将 LPGPIO 映射到了非安全区,并且配置了 DMA 链表功能,使用 LPTimer 作为触发,自动地修改 LPGPIO 的寄存器,从而达到在低功耗模式下,GPIO自动切换的功能。但遇到了 LPDMA 的配置问题,并且程序无法跳转到 Non-Secure 工程。 1.1. TrustZone 简介 U575ZI 上的安全架构使用了基于 Arm TrustZone, 支持 Armv8-M 指令。当 TrustZone 使能以后,SAU 和 IDAU 基于安全和非安全状态定义了访问权限。IDAU 是硬件实现,出厂已经默认配置好了,无法通过软件重新配置。SAU 可以由软件配置。 ![]() 从上图可以看到,每一个地址空间都有一个安全或非安全的属性,并且 Flash 和 SRAM 的地址空间都有两个安全和非安全状态。也就是说 Flash 和 SRAM 使用了别名,通过不同名字访问同一块物理地址区间,从而达到不同的安全属性。外部的内存空间没有别名,如 Octo SPI Flash。这个是 IDAU 所决定的,最终的安全属性由 IDAU 和 SAU 共同决定,如下面这张表: ![]() 1.2. LPBAM 简介 LPBAM 全称为 Low-power background autonomous mode,它允许部分外设运行在 Stop0,Stop1,Stop2 模式下,并且不需要软件运行。那么当配置好这些外设后,这些外设可以自动的在低功耗模式下进行工作,从而大大减少功耗。 在低功耗模式下,得益于系统时钟(MSIS/HSI16)的自动开关功能,DMA 可以在 Stop 模式下运行。当有外设请求时,系统时钟会自动打开,没有外设请求时,系统时钟会自动关闭。外设的自动运行,受控于同步或异步的触发,比如 I/O 边沿检测或者低功耗 Timer。 完整版请查看:附件 ![]() |
STM32 GUI LTDC 最大像素时钟评估方法
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南