[技术问答] 关于M451 IAP功能

[复制链接]
1331|10
 楼主| 位元一号 发表于 2021-3-19 12:01 | 显示全部楼层 |阅读模式
本帖最后由 位元一号 于 2021-3-19 17:01 编辑

技术手册恶补了一下午,有点头绪但原理上还有些想不通比如,我想把我的IAP程序写入LDROM然后通过UART写APROM实现更新APROM的功能
,问题是示例程序都是编译定位到了0x00地址处了,LDROM在FLASH内的地址可是0X00100000啊,
虽然中断向量映射到了LDROM,但也只是前512个字节才映射到了0地址处,那ldrom中512字节以后的代码
怎么保证得到正确的调用呢?
  另外FMC模块写FLASH时如果写地址0那是写APROM还是LDROM啊?此时中断向量可是映射到LDROM了呀。
jasontu 发表于 2021-3-30 10:10 | 显示全部楼层
在BSP之下,有個IAP的例子
https://github.com/OpenNuvoton/M451BSP/tree/master/SampleCode/StdDriver/FMC_IAP
裡面的RO BASE是設定2個FLASH ADDRESS
qwe12377yu 发表于 2021-3-30 21:30 | 显示全部楼层
你设置从LDROM启动啊,如果你的boot不够,可以另外划一部分的APROM去做boot,boot里面再做一次跳转至APP
两只袜子 发表于 2021-4-8 14:32 | 显示全部楼层

如果Utilities 里 flashselect 选择 LDROM 或APROM 时, 每块flash都是独立的,认为每块都是从 0 地址开始;
jcky001 发表于 2021-4-8 14:32 | 显示全部楼层

用isp命令写flash时 0地址代表的时APROM的起始地址
cr315 发表于 2021-4-8 14:32 | 显示全部楼层
另外要分清flash的存储映射和系统存储映射的区别
zljiu 发表于 2021-4-8 14:55 | 显示全部楼层
这个问题我也很头晕
qcliu 发表于 2021-4-8 14:57 | 显示全部楼层
0地址代表的时APROM的起始地址
tfqi 发表于 2021-4-8 15:15 | 显示全部楼层
APROM和LDROM的区别是什么啊
wiba 发表于 2021-4-8 15:17 | 显示全部楼层
flash的存储映射和系统存储映射的区别是什么啊?
coshi 发表于 2021-4-8 15:17 | 显示全部楼层
如何确定映射到了什么地方啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

7

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部