当前位置: 首页 > news >正文

TrustZone 版的按键点灯程序下载调试 LAT1492

关键字:TrustZone, Secure, NonSecure

引言

初学者在看包含 TrustZone 的程序时,难免头大。有安全和非安全两个工程,安全和非安全工程如何去下载?如何去调试?本文以 IAR 调试器为例,简单介绍一下按键点灯-TrustZone 程序的下载与调试。

1. 下载调试

1.1. 编译程序

首先,需要对程序进行编译。编译时,需要注意:先编译 H563TZ_LED_S ,再编译H563TZ_LED_NS。

1)将 H563TZ_LED_S 设置为 Active,设置完成后,可以看到 H563TZ_LED_S 已经变为 Active 工程,然后点击编译。

2)在 Build 一栏中,会有编译成功的提示。

3)将 H563TZ_LED_NS 设置为 Active,设置完成后,可以看到 H563TZ_LED_NS 已经变为 Active 工程,然后点击编译。

4)在 Build 一栏中,会有编译成功的提示。

1.2. 下载程序

对于带 TrustZone 安全侧和非安全侧程序的下载,无先后顺序。接下来以先下载安全侧代码为例进行讲解。

1)假设工程 H563TZ_LED_S 处于 Active 状态,点击 Project->Download-> Download active application。

2) 将 H563TZ_LED_NS 设置为 Active,设置完成后,然后点击 Project->Download-> Download active application。

3)下载完成后,测试按下并松开按键后,小灯点亮,再次按下并松开按键后,小灯熄灭。

1.3. 调试程序

调试程序时,需要注意在非安全侧添加安全侧.out 文件,如果需要调试非安全侧代码,程序需要从安全侧开始进行仿真运行。

1) 在 H563TZ_LED_NS 非安全侧添加安全侧 H563TZ_LED_S.out 文件。点击Debugger->Images->Download extra image,然后选择文件。

2)选择 Secure_nsclib 中的 H563TZ_LED_S.out 文件,点击 Open, 点击 OK 完成添加。

3)在非安全侧的外部触发中断回调函数中打断点。

4)使 H563TZ_LED_S 为 Active 状态时,然后点击仿真按钮,进入仿真界面。点击全速运行,然后按下按键并松开后,程序运行至断点处。

2. 总结

本文简单的总结了带 TrustZone 程序如何编译,下载与调试,讲解了在不同步骤下对安全侧和非安全侧代码的操作顺序与操作流程,希望可以通过本文帮助大家快速掌握带 TrustZone 程序的简单操作。
 

文档中所用到的工具及版本

  • CubeMX6.12.1 (或最新版本)
  • STM32Cube_FW_H5_V1.2.0 (或最新版本)
  • STM32CubeProgrammer 2.17.0 (或最新版本)
  • IAR EW for Arm 9.50.2 (或最新版本)

http://www.dtcms.com/a/341070.html

相关文章:

  • 迅为RK3562开发板Android修改uboot logo
  • element UI 和 element plus 在组件上有哪些不同
  • 《算法导论》第 35 章-近似算法
  • 《设计模式之禅》笔记摘录 - 17.模板方法模式
  • hot100 之160-相交链表(双指针切换)
  • 如何合并分卷压缩文件?两种方法让文件更整洁
  • SQL详细语法教程(七)核心优化
  • 【CocosCreator】electron/Cocos双窗口本地模拟聊天系统
  • 挑战极限:在256MB内存的机器上构建MySQL极简安装方案
  • Nginx 负载均衡和缓存配置
  • Unicode 字符串转 UTF-8 编码算法剖析
  • FPGA实现Aurora 64B66B图像视频点对点传输,基于GTH高速收发器,提供2套工程源码和技术支持
  • 科研笔记:博士论文写作攻略
  • IPSEC安全基础前篇
  • 七十三、【Linux数据库】MySQL数据库PXC 集群概述与演示
  • mvdr波束形成
  • week3-[分支结构]2023
  • STM32F407VGT6从零建立一个标准库工程模板+VSCode或Keil5
  • 【电气工程学习】
  • 可传参配置的同步异步fifo
  • PyTorch 社区贡献 和 设计原则
  • Web 安全之延迟攻击(Delay Attack)详解
  • PyCharm2025无法启动Powershell.exe的解决办法
  • 发那科机器人程序调整功能
  • 好家园房产中介网后台管理完整(python+flask+mysql)
  • 【图论】拓扑排序
  • 48 C++ STL模板库17-容器9-关联容器-映射(map)多重映射(multimap)
  • Spring Boot如何配置Liveness和Readiness探针
  • 【Android】Activity 如何进行数据传输
  • java17学习笔记-switch总结