|
继续学习,使用不同的软件调试XiP 应用 一、使用 STM32CubeIDE 调试 XiP 应用 1、FSBL ,编译,Sign, 并烧录FSBL-Trusted.bin 到0x7000 0000 2、编译应用,Sign, 烧录AppS-trusted.bin (已签)到 0x7010 0000或者烧录Template_XIP_AppS.bin (未签)到 0x7010 0400 3、Debugger 设置
4、Debug Startup 设置
5、断电,切换到Dev模式,上电 6、切换BOOT1开关(不断电)至 Flash启动模式,按Reset键;此时,可看到板上 LED1 绿灯闪烁 7、STM32CubeIDE 工具栏点击甲壳虫开启Debug,等待Debugger停在main入口 8、此时,可以开始按流程调试,基本调试功能正常 9、设置断点后改为Hardware断点,则可以正常停止。 二、使用 IAR IDE 调试 XiP 应用 1、FSBL 代码中屏蔽跳转,编译,签名;烧录FSBL-Trusted 到0x7000 0000, 2、烧录App-Trusted.bin(已签)到 0x7010 0000或者烧录Apps(未签)到 0x7010 0400 3、Application 设置 Software Reset
4、断电,切换到Dev模式,上电 5、切换BOOT1开关(不断电)至 Flash启动模式,按Reset键; 6、IAR 直接Debug 应用(Debug without Downloading) 三、使用 Keil uVision 调试 XiP 应用 1、FSBL 中屏蔽跳转,编译,Sign;烧录FSBL-Trusted 到0x7000 0000 2、应用设置, Optimization –O0, 为了断点好设置。 3、编译应用,烧录Appli-Trusted.bin(已签)到 0x7010 0000或者烧录Appli.bin(未签)到 0x7010 0400 4、Debug 设置,使用Appli.ini ①使用Initialization File;创建Appli.ini (\MDK-ARM\Appli) ②Edit Appli.ini //LOAD %[email]L@L.axf[/email] incremental // Load project binary LOAD .\Objects\Appli.axf CLEAR INCREMENTAL PC = _RDWORD(0x70100404); G,main
5、断电,切换到Dev模式,上电 6、切换BOOT1开关(不断电)至 Flash启动模式,按Reset键; 7、Start Debug Session,然后既可以正常调试了 四、FSBL + Load&Run工程开发 1、FSBL + Load&Run工程介绍
2、使用 IAR 的开发 ①使用Nucleo 或 DK 板,设置 “DEV 模式
②基本设置
3、分别编译FSBL与应用 4、编译完成后,签名您的二进制文件以添加头部信息
5、使用 STM32CubeProgrammer 签名工具为您的FSBL二进制文件签名
6、使用 STM32CubeProgrammer 为您的应用Project二进制文件签名
7、将签名后的bin文件烧录到 DK或Nucleo板上的外部Flash. ①使用STM32CubeProgrammer GUI
②使用命令行烧录 DK 板 • FSBL STM32_Programmer_CLI.exe -c port=SWD mode=HOTPLUG ap=1 -w FSBL-trusted.bin 0x70000000 -el C:\<您的STM32CubeProgrammer安装目录>\STM32CubeProgrammer_V2.20.0\bin\ExternalLoader\MX66UW1G45G_STM32N6570-DK.stldr • Application STM32_Programmer_CLI.exe -c port=SWD mode=HOTPLUG ap=1 -w project-trusted.bin 0x70100000 -el C:\<您的STM32CubeProgrammer安装目录>\STM32CubeProgrammer_V2.20.0\bin\ExternalLoader\MX66UW1G45G_STM32N6570-DK.stldr Nucleo 板 • FSBL STM32_Programmer_CLI.exe -c port=SWD mode=HOTPLUG ap=1 -w FSBL-trusted.bin 0x70000000 -el C:\<您的STM32CubeProgrammer安装目录> \STM32CubeProgrammer_V2.20.0\bin\ExternalLoader\MX25UM51245G_STM32N6570-NUCLEO.stldr • Application STM32_Programmer_CLI.exe -c port=SWD mode=HOTPLUG ap=1 -w project-trusted.bin 0x70100000 -el C:\<您的STM32CubeProgrammer 装目录>\STM32CubeProgrammer_V2.20.0\bin\ExternalLoader\MX25UM51245G_STM32N6570-NUCLEO.stldr 8、独立运行 Load & Run 应用
板子设置为 “从Flash启动” 后,再从新上电板子。 STM32N6 会从外部Flash启动并执行Load&Run 工程代码。 可观察到LED等闪烁。 然后就可以开始调试了 |
线下培训(深圳) | 基于STM32N6的边缘人工智能应用开发实训
《STM32N6视频课程》学习笔记+STM32N6 系统资源隔离: RIF对外设的配置和管理
《STM32N6视频课程》学习笔记+STM32N6系统资源隔离— RIF访问规则与非法访问控制
《STM32N6视频课程》学习笔记+STM32N6 系统资源隔离 Cortex M55 TrustZone
《STM32N6视频课程》学习笔记+STM32N6 资源隔离RIF简介(一)
《STM32N6视频课程》学习笔记+STM32N6 密码学硬件以及安全存储
《STM32N6视频课程》学习笔记+STM32N6 安全启动与安全升级动手实验
《STM32N6视频课程》学习笔记+STM32N6 安全启动与安全升级
《STM32N6视频课程》学习笔记+STM32N6 BSEC 调试访问控制
《STM32N6视频课程》学习笔记+STM32N6 BSEC时域隔离
微信公众号
手机版