This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我是做在线烧录器的,最近在给tms320f28374s开发烧录算法。发现在烧了某个客户程序后,重新上电,再烧录,就失败了。我写的烧录驱动程序无法正常运行,但是把flash内容清除,或者烧了别的程序,就正常。我看文档里有Debugger Reset,但是没有详细资料,TI官方可否提供相关信息?
您好,
您不是要烧录MS320F28374S吗?
请参考芯片的 设计手册 "Table 3-1. Reset Signals "和“3.3.10 Test Reset (TRST) ”
TMS320F2837xS Real-Time Microcontrollers Technical Reference Manual (Rev. H)
您好,
这边您好像没有理解我的问题。我现在要通过jtag去控制芯片的内核,执行一些特定操作。
现在这个芯片已被烧过程序且运行起来了,势必它的寄存器会被程序修改。这个时候,我用uniflash去重新烧录的话,uniflash连接芯片的时候,肯定会对芯片做一些类似复位和初始化的操作,让芯片处于一个干净的状态。比如会关闭看门狗,否则烧录到一半,看门狗溢出就会复位芯片了,导致烧录失败。
由于xds100用的14PIN接线是没有硬件复位脚的,所以uniflash烧录芯片,是不是发些jtag命令让芯片恢复到初始状态?
谢谢!
你的意思是通过jtag口发出复位命令吗?如果只想调用GEL的话有GEL_Reset()命令,7.9.8.70. GEL_Reset() — Code Composer Studio 12.7.0 Documentation
如果编写JTAG程序的话参考这个里面的spruf82_c28x.pdf:[FAQ] TMS320F28377D: Standalone Flash Programmer - C2000 microcontrollers forum - C2000︎ microcontrollers - TI E2E support forums
好的。
我这个问题已解决了,添加了CPU reset流程:
Set the reset bit in MF1
Execute a single step on the core (required to actually do the reset)
Check SSR until you see the reset acknowledged
Clear the reset bit in MF1
谢谢!