完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在我们当前的应用程序中,我们对 OTA(无线)应用程序采用以下方法。
我们在闪存中存储 - 我们在第一个扇区 (64k) 中的引导加载程序 - 我们在接下来两个部门的救援应用程序 (128K) - 我们在第四部门的真实应用程序 (128K) 在引导加载程序中,根据某些配置(也写在闪存中,在最后一个扇区),我们跳转到救援应用程序或真正的应用程序。 在STM中,我写了如下函数: void JumpToApp() const { typedef void (*functionPointer)(); auto mspAddress = *(reinterpret_cast auto resetHandlerAddress = *(reinterpret_cast auto resetHandler = reinterpret_cast __set_MSP(mspAddress); SCB->VTOR = _appStartAddress; resetHandler(); }我知道您对 STM 不感兴趣,但我希望您能理解这段代码中发生的事情。我有我的应用程序的存储地址(救援或常规应用程序),我也知道重置向量的存储位置。这样我就可以将向量表重新定位到正确的地址,并跳转到我的应用程序的重置处理程序。 因为对于我的 NXP 板,我还必须处理 XIP(一些字节写入到闪存的开头),而我的实际程序从偏移 0x2000 开始,我认为事情变得有点复杂。 什么是最简单的方法(最好是与我们当前的实现相同的类比)。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1936个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36437 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
5097 浏览 1 评论
6121 浏览 1 评论
6825 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4255 浏览 0 评论
656浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
646浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
648浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
738浏览 2评论
855浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-31 06:10 , Processed in 1.246313 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号