|
使用的ARM芯片型号为LPC2214,外部flash的型号为SST39VF1601,外部ram型号为IS61LV51216.
现在设置如下:
flash接boot0,地址为0x80000000;ram接boot1,地址为81000000;ARM内部ram的地址为0x40000000;
现在需要将ADS1.2中编译的HEX文件烧写到外部flash中,实现程序脱机运行。
ADS1.2中设置是:选择的模式是:reloutchip
Target>ARM target>post-linker>ARM fromELF
ARM linker>OUTPUT> ro base=0x000、image entry point=0x000
ARM fromELF>OUTPUT FORMAT=Intel 32 bit HEX、OUTPUT FILE NAME=E:\111.i32
出现的问题是:1、在使用H-FLASHER Promgram时,出现“Error:Destination flash address is out of range”
2、当设置ro base=0x80000000,rw base 不设置;make后生成的.i32文件,可以通过H-flasher下载进去。但程序不能正常运行。
本人是菜鸟,这个问题困扰了我很久,不知道你们看懂我的问题没有。希望高手能帮我解决这个问题,这个设置跟rw base 有关吗?如果有关,那rw base 要设为何值?是否脱机处理还需要设置什么选项?手头上保存有一份正确的.i32文件,打开正确的文件和问题2生成的.i32文件对比,发现只有第一行是一样的“:0200000480007A”。后面我就各贴一行作为对比,希望对解决问题有帮助。正确第二行:“:1000000018F09FE518F09FE518F09FE518F09FE5C0”;错误第二行“:1000000090808FE20F0098E8080080E0081081E0FF”。
调试中发现,我没有对ram的地址做设置,假如我要使用外部ram,将外部flash的程序掉到外部ram脱机运行,要怎么设置。
问题有点乱,自己也被整晕了,如果大家有看不懂得,希望能留言交流。小弟在此谢谢大家了。 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|