|
目前在开发一个C2000用的Jtag烧录器
经过长时间磨蹭,终于从ti拿到保密文档,开工。
结果被hex2000坑了半天,要死。 每次把.out转换成bin的时候都会在最后一段区域倒数第几百个byte的位置缺少两个byte的数据,导致在内存中载入bin后,只要执行_c_int00 就会直接crash cpu。 但是坑爹的不止如此, 我导出ti编译后的十六进制常看(css自带Ti-TXT) 发现同一位置也缺失了。 只有用官方jtag调试器仿真的时候可以在内存中看到那缺失的两个byte。
整个firmware运行在ram中,把数据从ram拷贝到flash实现烧录。
这问题可能解决么? 不想每个芯片的固件都手动去比对修复,发现这个错误花了我十几个小时比对汇编和cpu寄存器。
|
|