各位好,
我用的MCU是TMS320F28035, 在MCU的不同扇区做BootLoader和APP程序,
BootLoader在H扇区,APP在A~G扇区,正在做基于CAN通讯的升级,即上电后运行在BootLoader,根据上位机指令来判断是否跳转到APP中,同时在APP运行后
当收到上位机刷新程序的指令后,程序应该从APP跳转到BootLoader进行程序的刷新。
我的问题:
1. 想要MCU上电后运行在bootloader, 如何配置cmd文件和codestart.asm文件?
2. APP程序该如何配置才能跳转到BootLoader?
Eric Ma:“我用的MCU是TMS320F28035, 在MCU的不同扇区做BootLoader和APP程序,
BootLoader在H扇区,APP在A~G扇区,正在做基于CAN通讯的升级,即上电后运行在BootLoader,如果没有收到上位机刷新程序的指令,就跳转至APP中;如果收到上位机刷新程序的指令,就执行程序刷新;同时在APP正常运行后,当收到上位机刷新程序的指令后,程序应该从APP跳转到BootLoader中进行程序的刷新。
我的问题:
1. 想要MCU上电后运行在bootloader, 如何配置cmd文件和codestart.asm文件?
Eric:
我当时的处理是bootloard和APP是分开的两个工程,然后有各自的cmd和codestart.
如果要上电的时候跑bootloard, 只要将入口地址定位bootloader的地址,而C2000的入口地址又是在A扇区,所以我倒是建议你将bootloader直接放A扇区。
BEGIN : origin = 0x3F7FF6, length = 0x000002 /* Part of FLASHA. Used for "boot to Flash" bootloader mode. */
至于APP的入口地址,它的BEGIN, 你可以定义在B扇区的起始两个地址,然后bootloader如果不用升级,直接跳转到该地址就好。
2. APP程序该如何配置才能跳转到BootLoader?
ERIC:
接受到升级指令,直接地址跳转到bootloader, 如bootloader 的_c_int00。
3. 若刷新过程中,突然断电,重新上电后是否可以从bootloader中正常启动?”
Eric:
这个是可以的,因为bootloader没有被擦出。
另外你可以参考我的相关升级的帖子:
e2echina.ti.com/…/121859
各位好,
我用的MCU是TMS320F28035, 在MCU的不同扇区做BootLoader和APP程序,
BootLoader在H扇区,APP在A~G扇区,正在做基于CAN通讯的升级,即上电后运行在BootLoader,根据上位机指令来判断是否跳转到APP中,同时在APP运行后
当收到上位机刷新程序的指令后,程序应该从APP跳转到BootLoader进行程序的刷新。
我的问题:
1. 想要MCU上电后运行在bootloader, 如何配置cmd文件和codestart.asm文件?
2. APP程序该如何配置才能跳转到BootLoader?
suibao zhang:
回复 Eric Ma:
hello ERIC
谢谢,根据你的建议现在已经OK,谢谢