各位大侠:
本人接手一个项目,使用的TMS320F2809的DSP,上一任工程师交手3个ASCII-hex文件:搬移程序(启动后搬移FLASH到RAM中运行),主程序,FLASH工具程序(下载主程序的程序,以免主程序分区和搬移程序交叠),我进行如下程序加载程序:
1、GPIO18 29 34设置为1 1 0;
2、串口助手发送‘A’,锁定波特率;成功
3、写搬移程序,通过XDS-510PLUS回读对应FLASH区域,未被写入;失败
4、写入FLASH工具程序(程序里面写RAM),通过XDS-510PLUS回读对应FLASH区域; 写入成功,且数据正确
基于以上情况,因为我手头只有3个ASCII-hex文件,没有.out,没有intel-hex,更没有源程序,所以目前我
只能想到通过串口boot方式加载,但是这种方式写FLASH不成功,我参考了intel-hex通过C2PROG下载,有发回的如unlocking指令,
心想我是不是因为initboot没有授权我访问FLASH,请教大虾们,是否有类似如发字符‘A’锁定波特率一样的指令来访问FLASH?或者
是否有工具将ASCII-hex转成intel-hex,我可以通过C2PROG下载?或者有别的指点?
附上三个文件的前后比特序列:
FLASHUTILGAM.hex:
08 AA
00 00 00 00
00 00 00 00
00 00 00 00
00 00 00 00
00 00 80 00
19 ED
00 00 80 42
28 AD 80 02 FF 69 56 1F 56 16 56 1A 29 40 76 1F 00 00 29 02
......
96 06 CC FC FF E0 50 05 96 07 1A 00 00 01 76 1A F6 06 77 00 FF 69 00 06
00 02 00 00 9B 24 80 42 00 00
00 04 00 00 9B 20 86 11 00 00 00 00 00 00
00 00
BOOTUTIL.hex:
08 AA
00 00 00 00
00 00 00 00
00 00 00 00
00 00 00 00
00 00 80 00
00 A9
00 3F 71 6F
FF FF 05 00 00 00 00 00 FF FE 05 02 00 00 00 00 00 00 FF FE
......
1A 05 01 FF CC 06 FF F0 50 03 96 06 CC 06 F0 FF 1A A9 03 00 96 06 CC 07
FF E0 50 05 96 07 1A 00 00 01 76 1A F6 06 77 00 FF 69 00 06
00 00
lowcost.hex:
08 AA
00 00 00 00
00 00 00 00
00 00 00 00
00 00 00 00
00 3E 3C 67
00 08
00 3F 7F F8
F7 34
DF 85
84 85
1F B6
F7 34
DF 85
84 85
1F B6
......
BB 1A C3 48 B9 97 52 CE BB 1A C3 48 B9 97 52 CE BB 1A C3 48 B9 97 52 CE
BB 1A C3 48 B9 97 52 CE BB 1A C3 48 B9 97
00 00