TI中文支持网
TI专业的中文技术问题搜集分享网站

28377S的FLASH烧写

想让程序在FLASH中运行,现在是仿真可以正常运行;然后退出仿真模式,但是仿真器不拔,板子也能正常运行;最后板子断电,拔掉仿真器,然后上电重启,程序不能正常运行。检查过供电都正常,在烧程序的时候可以看到程序先erase,后load,都没有错误,但就是不能在flash中运行,这是为什么呢?

mangui zhang:插上JTAG应该还是在RAM中运行的确保CMD是flash的
实在不行采用搬移上电后从flash搬移到RAM中运行看看

想让程序在FLASH中运行,现在是仿真可以正常运行;然后退出仿真模式,但是仿真器不拔,板子也能正常运行;最后板子断电,拔掉仿真器,然后上电重启,程序不能正常运行。检查过供电都正常,在烧程序的时候可以看到程序先erase,后load,都没有错误,但就是不能在flash中运行,这是为什么呢?

user5342636:

回复 mangui zhang:

CMD是flash的,请问搬移的具体操作是怎样的呢?第一次遇到这种问题,还请指导一下

想让程序在FLASH中运行,现在是仿真可以正常运行;然后退出仿真模式,但是仿真器不拔,板子也能正常运行;最后板子断电,拔掉仿真器,然后上电重启,程序不能正常运行。检查过供电都正常,在烧程序的时候可以看到程序先erase,后load,都没有错误,但就是不能在flash中运行,这是为什么呢?

Green Deng:

FLASH的.cmd文件的路径有没有包含进include option里面?如图

如果还是不行,可以先尝试使用TI例程烧写,看能不能烧写入FLASH。可以使用以下位置的例程:

C:\ti\controlSUITE\device_support\F2837xS\v210\F2837xS_examples_Cpu1\blinky

烧写的时候选择编译和烧写的时候选择flash模式。

想让程序在FLASH中运行,现在是仿真可以正常运行;然后退出仿真模式,但是仿真器不拔,板子也能正常运行;最后板子断电,拔掉仿真器,然后上电重启,程序不能正常运行。检查过供电都正常,在烧程序的时候可以看到程序先erase,后load,都没有错误,但就是不能在flash中运行,这是为什么呢?

mangui zhang:

回复 user5342636:

如下部分只需要在工程属性中增加预定义
void InitSysCtrl(void)
{// Disable the watchdogDisableDog();

#ifdef _FLASH
// Copy time critical code and Flash setup code to RAM
// This includes the following functions:InitFlash();
// TheRamfuncsLoadStart, RamfuncsLoadSize, and RamfuncsRunStart
// symbols are created by the linker. Refer to the device .cmd file.memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);

// Call Flash Initialization to setup flash waitstates
// This function must reside in RAMInitFlash_Bank0();
#endif

赞(0)
未经允许不得转载:TI中文支持网 » 28377S的FLASH烧写
分享到: 更多 (0)