完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好,我们的团队正在尝试合并应用程序和mcc生成的引导加载程序。结果很好,我们可以通过引导加载程序和我们编写的主机应用程序来更新应用程序。但是有一个新特性是我们的客户需要的。我们的新目标是:在更新期间和之后更新,不要丢失在一个特殊的GPIO引脚上的状态,但是对我来说很难。我已经尝试过一些实现,但是它们都不能工作。这是我们的工作流程:在应用程序中,一旦它接收到一个更新命令,它将禁用中断,并转到BOOTLOADER_Initialize()地址,可以在引导加载器项目的映射文件中找到。s BOOTLOADER_Initialize()地址。BOOTLOADER_Initialize()将检查更新标志(由用户定义),如果需要更新,引导加载程序将转到Run_Bootloader(),这是一个while循环。这次,引导加载程序将不再进入Run_Bootloader()并将使用STKPTR=0x00;asm(“pagesel”str(NEW_RESET_VECTOR));asm(“go to”str(NEW_RESET_VECTOR));跳转到应用程序地址。非常顺利。但现在我想保存一个gpio管脚状态。如果我修改Check_Device_Reset()到omet.,那么这段代码将破坏while 1循环。我使用调试模式检查引导加载程序是否跳转到应用程序。看起来是这样,但是应用程序失去了它的特性,比如中断或gpio。我的问题是:我们有可能跳过新更新的应用程序而不重置吗?
|
|
相关推荐
6个回答
|
|
验证你的应用程序正在设置每一件事。它不应该假设任何在重置值。RESET将所有寄存器设置为已知状态。
|
|
|
|
你好,Redliu,1)你能给我们简单的内存引导程序和应用程序驻留的地图吗?2)“NexOrtheta向量”的物理地址是什么?3)当你跳转到应用程序时,你会跳转到应用程序的C运行时初始化(CRT0/CRT1)吗?我只是想知道,如果您跳转到错误的地址,您是否可能无意中绕过了在应用程序的“main()”函数之前执行的C运行时初始化。
|
|
|
|
引导加载程序位于0x0000上应用程序位于0x8000上,因此引导加载程序中的NEW_RESET_VECTOR是0x8000。ON,跳到引导加载程序的ReSETHY向量是0x224。
|
|
|
|
你好,Redliu,我想你需要提供一些更明确的细节,以便论坛社区帮助你。1)首先,你使用的是PIC18部分?2)你能再解释一下新的要求吗?你到底想坚持什么——输入引脚还是输出引脚的状态?你提到的GPIO引脚,但它可以是输入或输出-这是什么?3)如果你觉得一个SFR寄存器(LATX或TrISX)正在被修改,你总是可以设置一个断点来停止对该寄存器的写入。4)你能显示你觉得没有按预期工作的代码片段吗?最好的问候,肯
|
|
|
|
我明白你想在不重置部分的情况下运行引导加载程序吗?这很简单:1。使Application Valid指示符无效(引导加载程序使用哪三个方法*来告诉它是否应该在启动时运行?)2。执行Goto 0x0000(重置向量)。引导加载程序开始运行,查看“Applicaition Valid”不正确的指示符并运行引导加载程序。它真的很简单……还是我误解了这个问题?-D*引导加载程序生成器支持检查复位向量、检查Flash位置以及将flash的校验和与预计算值进行比较。您可以擦除复位向量或闪存位置或校验和位置。
|
|
|
|
据我所知,它们正在跳转到应用程序启动,但它不起作用。它复位后工作。对我来说,应用程序假设了某个默认值,但它不是。无论如何,我猜。
|
|
|
|
只有小组成员才能发言,加入小组>>
5238 浏览 9 评论
2028 浏览 8 评论
1950 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3204 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2253 浏览 5 评论
775浏览 1评论
665浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
593浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
675浏览 0评论
575浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 21:12 , Processed in 1.335938 second(s), Total 87, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号