完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在使用 S32K118 处理器创建我的第一个引导加载程序,但我似乎无法正确跳转到我的应用程序。
我想要做的是首先使用调试配置在 MCU 上刷新我的应用程序。之后,我在不擦除应用程序的情况下刷新引导加载程序。当运行我的引导加载程序时没有问题,但是当它试图跳转到应用程序时,我在 IDE 中打开一个新选项卡并在地址 0x346c 的断点处停止调试器。 如果我正在查看我的应用程序的 .map 文件,哪个是我的重置处理程序?(见地图文件)但我不执行任何代码。当它在没有调试器的情况下运行时,它似乎在没有执行应用程序的情况下挂在同一点。 我的问题:
我在用什么:
#define APP_RESET_ADDRESS 0x00003410 Boot_JumpToApp(APP_RESET_ADDRESS); void Boot_JumpToApp(const uint32_t i_AppAddr) { if((*((uint32_t*)i_AppAddr)) != 0xFFFFFFFF) { /* 重定位向量表 */ S32_SCB->VTOR = (uint32_t)0x00003000; JumpToUserApplication(*((uint32_t*)i_AppAddr), *((uint32_t*)(i_AppAddr + 4))); } } void JumpToUserApplication( unsigned int userSP, unsigned int userStartup) { /* 设置堆栈指针 */ DISABLE_INTERRUPTS(); __asm("msr msp, r0"); __asm("msr psp, r0"); ENABLE_INTERRUPTS(); /* 跳转到应用程序 PC (r1) */ AppAddr resetHandle = (AppAddr)(userStartup); (重置句柄)(); //__asm("mov pc, r1"); } |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1935个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36428 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4981 浏览 1 评论
6114 浏览 1 评论
6821 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4252 浏览 0 评论
654浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
646浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
647浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
737浏览 2评论
849浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 08:56 , Processed in 1.170973 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号