同一个 PIC32MZ 中的多个引导加载程序?

拉维C

标题似乎有点奇怪,我也不知道我应该在那里写什么,但希望我能让你明白我想要做什么!- 我将主引导加载程序和辅助引导加载程序都驻留在不同的内存区域(可能是引导闪存或程序闪存)。- 引导加载程序之一将一次处于活动状态,而其他将处于非活动状态。- 考虑一下,主引导加载程序处于活动状态,现在我将下载我的应用程序固件。我还在从应用程序固件中读取活动的引导加载程序版本,以便我可以检查是否需要更新引导加载程序。- 如果我需要更新引导加载程序,那么不活动的引导加载程序将被激活,它将用更新的引导加载程序替换以前的活动引导加载程序。辅助引导加载程序将切换回非活动模式。因此,辅助引导加载程序仅在必须更新主引导加载程序时才变为活动状态。- 在整个过程中,我想为主要引导加载程序版本、辅助引导加载程序版本和一些具有固定内存位置的自定义配置数据保留一些内存区域,并且可以从主要、次要和应用程序固件访问。

blsmit5728

您需要了解链接器文件。我还没有为 MX/MZ 线做这件事,但我已经在许多 dsPIC33 上做过这种事情。几乎通过以下方式:引导加载程序在 .gld 中获得一定数量的专用闪存,通常是单个页面,因此更容易擦除 (0x400) 然后超级引导加载程序(辅助引导加载程序)仅在您实际加载时加载到 PIC 中一个新的引导程序。所以超级引导加载程序实际上是一个较小的应用程序,旨在简单地更新引导加载程序,然后跳转到引导加载程序的重置地址。我个人不会一直将辅助/超级引导加载代码保留在那里,只是为了避免以后混淆。您真的可以使用来自 PIC 外部的更新技术来做到这一点。我再次不能提供有关 PIC32 系列的直接帮助,但如果您

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在两个不同的 MODAL BODY 引导程序中加载同一个表

来自分类Dev

多个在同一个按钮中展开-Swift

来自分类Dev

在同一个函数中返回多个变量

来自分类Dev

在同一个uri中更新多个结果

来自分类Dev

管道同一个父母的多个孩子

来自分类Dev

多个bean引用同一个Singleton Bean

来自分类Dev

多个bean引用同一个类?

来自分类Dev

比较同一个变量的多个值

来自分类Dev

防止多个线程写入同一个文件

来自分类Dev

选择同一个类别的多个div

来自分类Dev

来自同一个txt文件的多个值

来自分类Dev

多个域名指向同一个网站

来自分类Dev

autofac 从同一个接口继承的多个类

来自分类Dev

多个对象监听同一个键

来自分类Dev

来自同一个包的多个导入

来自分类Dev

同一个表的多个列上的 SQL 联接

来自分类Dev

来自同一个表的多个内部联接

来自分类Dev

从同一个类创建多个对象

来自分类Dev

Oracle 到多个同一个表

来自分类Dev

在同一个图上绘制多个 axhlines

来自分类Dev

JOIN 与右侧同一个表的多个引用

来自分类Dev

合并多个查询 - 同一个表

来自分类Dev

来自同一个Go程序的不同输出

来自分类Dev

同一个程序给了我不同的输出

来自分类Dev

加入同一个表中的两个外键引用同一个主键

来自分类Dev

在同一个角度模块中重用常数

来自分类Dev

扩展并在同一个类中实现

来自分类Dev

在同一个类中模拟方法

来自分类Dev

在同一个RelativeLayout中不是同级