首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

XEP100的FLASH擦写问题

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
另外还有一个问题,s19中的address,是指的CPU绝对地址吗?还是PPAGE+分页地址?
在XEP100中写flash,ccob寄存器中,
是写PPAGE+分页地址呢?
还是直接写CPU绝对地址呢?
希望能够快点得到解答啊,这个困扰我很久了!!
谢谢!
还有一个问题,在DG128中,操作Flash的语句要copy到RAM中去执行,
在XEP100中是不是也要这样哦?
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是如何设计的。
不知道你跳成功了吗?我在调MC9s12xdp512的,一直出现问题,可以交流交流
返回列表