使用MDK-ARM中国版现在不了STR912大容量512K的FLASH该怎么办?
问题类别:ARM软件工具 > Keil MDK | 浏览次数:6552 |
发布日期:2012/4/23 17:44:36 | 文章来源:完美体育·(中国)手机网页版科技 |
回复日期:2020/12/20 9:32:24 |
环境说明
RealView MDK中国版3.05以上 ST半导体公司STR91XFA Rev H芯片分析描述
当我使用RealView MDK中国版调试STR91XFA Rev H的时候,在编程的时候经常出现Memory Mismatch error at address 0x00008000.调试其他芯片的时候就不会出现这个问题,请问该如何解决。问题解答
问题分析: Memory Mismatch说明芯片跟仿真器之间通信出现了问题。由于之前的STR9系列芯片是256K的FLASH,升级为H版之后将FLASH的容量扩大为512K,当芯片复位初始化之后FMI_BBSR寄存器的值为0,也就是对应的只有32K(0x00008000)的FLASH空间,因此超过32K之后的就无法进行编程。这时候应该修改MDK对FLASH控制器的寄存器。
操作步骤:
1.关闭 Verify Code Download 选项,停止对FLASH的校验。
2. 在DEBUG选项中增加配置文件,首先将Load Application at Startup 选项去掉,在初始化配置对话框中增加有如下内容的INI文件。
_WDWORD(0x54000000, 0x00000004); // Boot Bank Size = 512kB
LOAD filename.axf
g,main