Microchip
直播中

杨嘉怡

8年用户 232经验值
私信 关注
[问答]

怎么从应用程序跳回到引导程序?

主要是由于协议差异(包括最大包大小/缓冲),我想从主应用程序跳回Bootloader的CAMS部分。我试图避免发出软重置,因为我希望不同的功能,而不是自动跳回到应用程序。是否有一种方法在寄存器中留下一个面包屑,引导程序可以使用它来知道我不想让它跳转到应用程序?是否有一种方法来重新创建函数中的“yReSeTyAdDR”代码,以创建可以从应用程序跳转的位置?我跳出应用程序有什么基本错误吗?(这非常类似于我如何成功地从BL跳转到应用程序)。我尝试跳转到Bootloader区域内的一个特定的函数地址,我得到一个例外。我尝试跳转:Bootloader有一个函数定义为……并且我的应用程序正在检测这个异常:

回帖(3)

陈杰

2020-4-6 07:22:39
我预留了一些RAM用于Bootloader,应用程序通信,所以编译器/链接器不使用它。
举报

陈刚

2020-4-6 07:31:38
我喜欢…芯片是从内存启动的冷启动,还是会有垃圾?也就是说,这两个程序之间的消息是否值得?
举报

陈杰

2020-4-6 07:40:14
从启动时的“冷”电源开始,引导加载程序初始化他的ram部分,包括指示这是启动时电源的标志和内存上的dma crc,并将其存储在ram中。该应用程序对它的ram部分执行类似的操作。引导加载程序和应用程序只写到自己的内存空间。但是我读了其他的。我存储了用于实时调试的面包屑在循环缓冲区中。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分