CCS3.3生成的.out文件想做成.bin文件从SPI Flash 启动,看了论坛里的贴子试了试,在编译选项里增加了后编译语句如下:
"C:/Program Files/Texas Instruments/TMS470 Code Generation Tools 4.5.0/bin/hex470.exe" -boot -v5510:2 -serial8 -b -o video_loopback.bin ./Debug/video_loopback.out
上述语句来源于
http://processors.wiki.ti.com/index.php/How_to_update_CCS_ARM_cgtools_to_build_the_DM365_ubl_in_CCS_3.3
http://processors.wiki.ti.com/index.php/SPI_Boot_on_5502_EVM里的内容
可CCS编译后报错如下
Translating ./Debug/video_loopback.out to Binary format…
"./Debug/video_loopback.out" ==> .cinit (BOOT LOAD)
>> warning: invalid option: –v5510:2
>> warning: invalid option: –serial8
>> fatal error: boot tables are not supported for this device (aborting)
请问是什么问题,也看过相关使用第三方工具的贴子,都不好使,请问是怎么回事儿,谢谢!
Yan Li1:
回复 Shine:
非常感谢你的回复,编译出错的问题已经解决,目前正在测试boot程序呢,谢谢
另外关于编译SPI boot用的bin文件,有没有相关的文档或指导呢,谢谢
Shine:
回复 Yan Li1:
你是指怎么用bin文件么? 可以用fopen, fread等函数对bin文件操作.
Yan Li1:
回复 Shine:
感谢你的回复,bin文件制作的问题已经解决了,我用CCS3.3编译器,在编译选项里增加了 hex470.exe后编译,cmd文件使用的是
-a-map video_loopback.map-image-zero-memwidth 8-linkerfill-fill 0x00000000-order LS-o video_loopback.hex
ROMS{ EPPROM: org = 0x87000000, len=0x0000A200, romwidth=8}
生成hex文件后,再用hex2bin.exe 生成.bin文件,然后再烧到64KB的SPI EEPROM(ST公司的 AT25512)里,数据烧检验什么的都没问题。
重新板子上电后,SPI总线一直有信号输出,但就是没有Boot起来,请问是怎么回事儿,是hex文件做的不对么?谢谢
Yan Li1:
回复 Shine:
我生成的bin文件是可以用fopen,fread操作的,我就是用仿真器将bin文件通过fread读入内存,再烧到EEPROM中的。