作者:赵明,华清远见嵌入式学院讲师。
在你使用RealViewMDK下载程序的时候有遇到过类似于如下的错误信息吗?
Load "D://david//project//farsight//LED_UART//obj//led_test.AXF"
No Algorithm found for: 30000000H - 300041EFH
Erase skipped!
此时也会弹出“Error:Flash Download failed – ARM920T”的错误对话框。

从错误信息中,可以看到RV要找以0x30000000开头的地址空间的Flash下载算法。但这个空间不是Flash地址空间。而是内存空间。这说明,在这个项目中使用的Scatter文件是基于RAM内存空间的。现在打开工程的option对话框的Linker标签看看,果然是没错!

这个问题有两种解决方法:
1)你既然选择了基于内存的加载方式,应该在Utilities标签中,取消“Update Target before Debugging”,这个选项只能在Flash加载方式中使用。参考如下图。
2)采用基于Flash的Scatter加载文件。

本文解决了RealView MDK在闪存下载过程中出现特定错误的问题。通过调整加载方式及配置选项,有效避免了闪存在非预期内存地址空间的错误。
&spm=1001.2101.3001.5002&articleId=4242563&d=1&t=3&u=2049cd19feb34078a7f04e7babbdd9fc)
5916

被折叠的 条评论
为什么被折叠?



