[技术问答] M051用APROM刷写APROM可以吗?

[复制链接]
6235|20
 楼主| rejoice818 发表于 2014-2-20 15:28 | 显示全部楼层 |阅读模式
请问新唐M051系列或者NUC100系列能APROM刷写APROM用作更新程序吗?可以的话是哪个版本的M051和NUC100
呆板书生 发表于 2014-2-20 15:58 | 显示全部楼层
先从aprom 跳到 ldrom,然后....
niuyaliang 发表于 2014-2-20 16:10 | 显示全部楼层
本质上还是从ldrom么,怎么可能给自己擦完再写呢
john_lee 发表于 2014-2-20 17:43 | 显示全部楼层
别想太复杂,LDROM 和 APROM 就是两块独立的 Flash area,启动时可以选择映射哪一个而已。
互相刷是没问题的。
 楼主| rejoice818 发表于 2014-2-22 17:21 | 显示全部楼层
john_lee 发表于 2014-2-20 17:43
别想太复杂,LDROM 和 APROM 就是两块独立的 Flash area,启动时可以选择映射哪一个而已。
互相刷是没问题 ...

LDROM太小,只有4K,不够用
从小木丁丁 发表于 2014-2-22 21:26 来自手机 | 显示全部楼层
没多大意思
john_lee 发表于 2014-2-23 23:14 | 显示全部楼层
rejoice818 发表于 2014-2-22 17:21
LDROM太小,只有4K,不够用

很考验编程功力,4K还是可以做很多事的。
 楼主| rejoice818 发表于 2014-2-24 13:52 | 显示全部楼层
john_lee 发表于 2014-2-23 23:14
很考验编程功力,4K还是可以做很多事的。

我尝试过不可以,BN DN都试过,50几K的代码,分拆开来也远远不够用
a_ziliu 发表于 2014-2-26 10:24 | 显示全部楼层
m051 d版可以,因為有支援iap,所以可以用一塊ap,去寫到其它的部份。
从小木丁丁 发表于 2014-2-26 10:46 来自手机 | 显示全部楼层
可以,试试吧
缥缈九哥 发表于 2014-2-28 02:09 | 显示全部楼层
新的版本支持IAP。你NUC123新的。NANO1XX新的。
 楼主| rejoice818 发表于 2014-2-28 15:06 | 显示全部楼层
a_ziliu 发表于 2014-2-26 10:24
m051 d版可以,因為有支援iap,所以可以用一塊ap,去寫到其它的部份。

发帖之前我就是听说DN可以专门试了一下,不过没用IAP,想用来Bootloader。
 楼主| rejoice818 发表于 2014-2-28 15:08 | 显示全部楼层
缥缈九哥 发表于 2014-2-28 02:09
新的版本支持IAP。你NUC123新的。NANO1XX新的。

想法是把BIN文件放SD卡,然后,你懂的~...
 楼主| rejoice818 发表于 2014-3-6 00:40 | 显示全部楼层
a_ziliu 发表于 2014-2-26 10:24
m051 d版可以,因為有支援iap,所以可以用一塊ap,去寫到其它的部份。

朋友你有写过吗?有没有bootloader的例子,实现APROM片区1刷写APROM的片区2。
 楼主| rejoice818 发表于 2014-3-6 00:48 | 显示全部楼层
缥缈九哥 发表于 2014-2-28 02:09
新的版本支持IAP。你NUC123新的。NANO1XX新的。

听新唐唐说M051LDN系列支持APROM刷写APROM,想实现以下功能,实现APROM片区1刷写APROM的片区2,不知道九哥有没有相关bootloader的例子,本人自己测试过失败。BN、DN都试过了。
clyu 发表于 2014-3-6 15:11 | 显示全部楼层
IAP解释起来比较复杂,需要理解它的本质

IAP就是你可以把程序放到APROM/LDROM的任何地方。这时候APROM和LDROM中的函数可以跳来跳去互相调用。APROM中的程序可以跳到APROM任何地方执行,也可以跳到LDROM的任何地方执行;LDROM中的程序也一样。如果bootloader太大,没关系,使能IAP之后,可以将bootloader一部分放在LDROM,一部分放在APROM,也可以全部放在APROM(将APROM分2块,1块放bootloader,1块放用户程序),系统从APROM启动后,先跑bootloader,然后切到后面的app执行。
附件是nano上的IAP bootloader的例子。这个例子将APROM分成3块:简单的boot code,app1和app2。因为有些应用,需要保证新的程序已经更新完才能擦除老的app,所以假设app1是老得程序,app2就是新的;下次再要更新程序的时候,app2就是老得,app1空间就是新更新的

IAPISP_2.4_.zip

1.23 MB, 下载次数: 213

 楼主| rejoice818 发表于 2014-3-7 14:30 | 显示全部楼层
clyu 发表于 2014-3-6 15:11
IAP解释起来比较复杂,需要理解它的本质

IAP就是你可以把程序放到APROM/LDROM的任何地方。这时候APROM和LD ...

感谢雷锋版主解答,现在才看到你的DEMO,下来学习一下,哈哈!昨天到官网下载了最新的ICP烧录软件,看到配置里有IAP选项,也能检测到M051LDN(更新前是CN),于是尝试一下实现了APROM片区更新另一个片区了,原来是软件版本问题。因项目版权问题未能当一次雷锋,先传个开发板测试视频。
实验-Bootloader

hdp7891000 发表于 2014-3-7 20:37 | 显示全部楼层
毫无压力,俺实现了BOOT,APP1,APP2,DATA四个区
zxf0168 发表于 2014-3-8 18:17 | 显示全部楼层
这个帖子讨论的热火朝天的,给力啊
pmpor 发表于 2014-4-29 15:03 | 显示全部楼层
IAP升级固件时,不需要上位机嘛?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

236

帖子

6

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