1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用N76E003单片机因为RAM区域不够用,然后把常量存在FLASH中,为什么不用IAP在线编程也可以读取它?想知道CPU是如何读取它的,读取FLASH不是需要IAP操作吗(APROMRead),存在code 区域,程序调用时并没有执行IAP操作啊,这样会不会出问题
|
|
相关推荐
6个回答
|
|
IAP操作,只是在需要读取特定区域的时候,或者进行自编程,才是必须的,其余的FLASH,包括我们的代码,都是常规存储器操作就可以读取的。
比如我们编辑了一个表格数据,存储于CODE区域,对应的操作就是常规的间址读指令。 如果我们需要对一个特定的CODE区域进行数据改写,也就是所谓自编程,这才会用到IAP。但只要编程后,数据读操作就又是常规的了。 也有特定的读操作必须用IAP实现,那只是内部特定的单元,比如UID,这个就不在这里讨论了。 |
|
|
|
修改FLASH数据通常需要很长时间,不像RAM那样可以实时操作。而且擦除、编程或读取FLASH数据需要遵循
相当复杂的时序步骤 read_APROM_BYTE(Address+i); 我看芯片手册上读取flash 也是有特定规则的啊,不按照这种方法使用常规方法读取也是可以的,但会不会不过用户必须遵循一定规则,以确保IAP正确执行,否则可能引起不确定的 结果,甚至损坏器件。 |
|
|
|
你必须明确,这里读操作是指在进入IAP模式后,比如编程后的校验,而不是常规程序运行段的CODE数据读操作。
所以,在完成IAP后,退出IAP模式,对已经编程过的部分,除了特定区域,完全不必考虑。 ISP就是这么做的。 |
|
|
|
|
|
|
|
貌似还真这样
|
|
|
|
IAP是写入,code是纯读取,两码事
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
503 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1756 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1183 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1053 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1287 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12022 浏览 31 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 21:35 , Processed in 0.701935 second(s), Total 81, Slave 65 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号