标题:
XEP100的FLASH擦写问题
[打印本页]
作者:
极光kk
时间:
2011-2-24 11:16
标题:
XEP100的FLASH擦写问题
小弟最近在研究将AN3275的DG系列的SCI的bootloader移植到XEP100上去,
需要解决以下这个问题,希望版上大牛帮助一下!
XEP100的Program Flash只能从[2:0] = 000的开始写入4个word,也就是前8个bytes,
而000-FFF总共有4Kbytes,那 8个bytes之后的怎么写呢?
如果有包括flash各种操作的例程发我一份,那就感激不尽啦!
另外我发现AN3275中的注释有很多错误,有兴趣的可以交流一下。
qq:365111897
作者:
极光kk
时间:
2011-2-24 11:22
另外还有一个问题,s19中的address,是指的CPU绝对地址吗?还是PPAGE+分页地址?
在XEP100中写flash,ccob寄存器中,
是写PPAGE+分页地址呢?
还是直接写CPU绝对地址呢?
希望能够快点得到解答啊,这个困扰我很久了!!
谢谢!
作者:
极光kk
时间:
2011-2-24 14:35
还有一个问题,在DG128中,操作Flash的语句要copy到RAM中去执行,
在XEP100中是不是也要这样哦?
作者:
expand
时间:
2011-2-28 13:59
XEP100的Program Flash只能从[2:0] = 000的开始写入4个word,也就是前8个bytes,
而000-FFF总共有4Kbytes,那 8个bytes之后的怎么写呢?
1. Flash每次最小插写单位为8个(或者4个)bytes,一般情况都是8个写一次,比如0x0000写入8个地址;再从0x0008开始写8个bytes;以此类推。还有一种是块写,你1K大小写一次,这个得根据你的上位机是如何解析hex的,很多情况下hex的地址并不是联系的,我用的是第一种方法;
另外还有一个问题,s19中的address,是指的CPU绝对地址吗?还是PPAGE+分页地址?
在XEP100中写flash,ccob寄存器中,
是写PPAGE+分页地址呢?
还是直接写CPU绝对地址呢?
2. s19的地址是逻辑地址,你必须把它转化为全局地址才能写,这个比较麻烦。所有对flash操作的驱动只认全局地址有效;(我指的全局地址是你说的绝对地址,我说的逻辑地址是你说的page分页地址)
还有一个问题,在DG128中,操作Flash的语句要copy到RAM中去执行,
在XEP100中是不是也要这样哦?
3. 我把它copy到RAM中去了,放在RAM一是速度快,而是安全可以避免误操作插写程序。个人认为这个要看你的Bootloader是如何设计的。
作者:
Superzhu
时间:
2011-3-22 14:43
不知道你跳成功了吗?我在调MC9s12xdp512的,一直出现问题,可以交流交流
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0