• 资料介绍
    • 1、问题描述
    • 2、问题分析及定位
    • 3、小结
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

LAT1446TrustZone应用中串口通信的DMA传输失败问题

03/11 16:38
415
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LAT1446TrustZone应用中串口通信的DMA传输失败问题

1.09 MB

1、问题描述

客户要在 STM32U5 SBSFU 的基础上开发自己的项目,SBSFU 由三个工程组成,Boot,APP,Loader。其中的 Boot 工程由开源项目 MCU boot 移植而来,它负责整个系统的安全启动以及升级部分。客户想在此基础上新增一个串口通信,不使用 DMA 模式的情况下,串口能够正常工作,但切换到 DMA 模式的时候就不正常了,PC 端连接串口发送引脚,显示接收的数据全为 0。

2、问题分析及定位

此问题看起来应该是 DMA 哪里配置出了问题。为了快速找到问题,不如先从STM32CubeMx 重新生成一个基于 trustzone 的 USART 且带 DMA 的测试工程,等到测试工程测试通过后,直接移植到 boot 工程内不就完了?于是我直接使用 STM32CubeMx 新建一个工程,使用 LPUART1 外设 PA2,PA3 引脚。并分配其为 M33 Secure。配置 115200 bps。1+8+1 数据格式。

3、小结

在 trustzone 使能的情况下,MCU 内的资源,若代码中没有显式设置的情况下,要注意其默认状态,内部 flash, SRAM, 片外存储映射区域以及 GPIO 引脚均为安全的,且特权,Securable外设基本都是非安全的,在 STM32U5 安全培训的一页 PPT 中有做总结。

资料预览

相关推荐