打印

ARM 设置ROM起始地址问题,谢谢!

[复制链接]
1789|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zyboy|  楼主 | 2009-8-6 20:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
设置ROM起始地址,生成的hex是不同,

例如设置ROM 0x2000,可以看到最开始中断向量跳转指令移到0x2000

这样是不是意味着ROM 设置地址0x0000与0x2000的代码,只是存放的位置不同,代码二进制文件是一样的,只是后者的二进制代码在0x2000处。

我通过hex转bin文件,然后将两个bin文件比较(0x0000与0x2000对照比较),发现大部分代码一样,还有一小部分不同?这是什么原因?我还没试过将后者的bin文件前移能不能正常运行。

我在做ARM AIP升级的时候,客户要求有两个用户区,用户可以运行一个,升级另一个,然后让另一个运行,原来的用户区作为新的升级区,也就是说每次升级用户程序,升级区和用户区都要对调。除了中断向量映射问题,如果我要个固件要升级,由于运行域的不同,那我不是要生成两个不同的hex文件或bin文件(根据RO_base的不同),这样客户要求升级,我还要确定是那个运行域的固件,这样感觉是不可行的?不知道是我这样理解对不对


相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

101

主题

356

帖子

0

粉丝