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.
写了一个二次 bootloader,使用SCI进行在线升级,bootloader放在A--至---D扇区,
从E---F扇区(0x88000)开始放APP程序,
APP程序的CMD文件中BEGIN设置为APP的起始地址E扇区-----0x88000,PROG程序从E扇区0x88002开始
//============================================
用仿真器,烧录APP---EF扇区后,用CCS 的memory save将flash数据保存,
仿真,通过bootloader 使用SCI串口烧录APP---EF扇区后,用CCS 的memory save将flash数据保存,
比较上述两种情况烧写的flash内容,是一致的,也就是bootloader的烧写flash应该是没问题的
//============================================
使用bootloader,SCI串口烧录APP程序
1、先使用JTAG烧录bootloader程序,烧入ABCD扇区
2、使用bootloader,SCI串口烧录APP程序----烧入-扇区E----F
3、重新上电,不能跳转到APP,进入非法中断
使用JTAG烧录APP程序可以从bootloader跳转到APP
1、先使用JTAG烧录bootloader程序,烧入ABCD扇区
2、再使用JTAG仿真器-烧录APP程序----烧入-扇区E----F (不擦除bootloader的 ABCD扇区)
3、重新上电,可以从bootloader正确跳转到APP
证明跳转程序应该是没问题的
//=======================
看了网上的一些帖子,已经尝试着把APP里面ECC使能关闭了,效果还是一样
//============================
APP--CMD里面
关于SCI BOOT, 我们是有相关例程供您参考的
您可以下载C2000Ware后在下面路径查找:
上位机:C:\ti\c2000\C2000Ware_3_01_00_00\utilities\flash_programmers\serial_flash_programmer\serial_flash_programmer
BOOT:C:\ti\c2000\C2000Ware_3_01_00_00\device_support\f2837xd\examples\dual\F2837xD_sci_flash_kernels文件夹下的F2837xD_sci_flash_kernels工程
Flash0EccRegs.ECC_ENABLE.bit.ENABLE = 0xA;
改为
Flash0EccRegs.ECC_ENABLE.bit.ENABLE = 0x0;