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

TMS320F28377S: 关于28377S程序搬运到RAM中运行,程序存储空间的问题咨询。

Part Number:TMS320F28377SOther Parts Discussed in Thread:C2000WARE

各位TI的专家,我最近在用28377S的时候碰到一个程序从flash启动,上电后运行的问题,不知道为什么,连着仿真器,在debug状态下,从flash启动,程序可以正常运行,但是,把仿真器拔掉,重新送电,程序就不会运行,但是,如果程序很小,它又可以运行,所以我怀疑CMD文件内存分配的问题,2837xS_Generic_FLASH_lnk.cmd与28377S_RAM_lnk.cmd都重新分配过内存,FLASH重新送电后,都是不能运行,但是,带着仿真器DRBUG又能重新运行,所以问一下?官方提供的两个CMD文件2837xS_Generic_FLASH_lnk.cmd与28377S_RAM_lnk.cmd,是否具有上电后把所有程序搬运到flash的功能??程序还不要做其他设置吗??这个问题可能出在什么地方??多谢指教?

Green Deng:

你好,ram能运行,flash不能运行的问题,大多与memcpy有关。

memcpy不是把程序搬运到flash,而是把flash中的程序搬移到ram运行,因为ram的运行速度比flash要快很多,有些对运行时机要求高的程序必须要搬移到ram运行,比如delay_us函数,一些中断程序。

你可以先看一下程序里面是否有memcpy,cmd文件只是分配内存,程序搬移的话要在主程序或系统函数中进行,以及要在cmd文件中给程序分配运行的ram内存。你可以参考例程的做法:

C:\ti\c2000\C2000Ware_4_01_00_00\device_support\f2837xs\examples\cpu1

C:\ti\c2000\C2000Ware_4_01_00_00\driverlib\f2837xs\examples\cpu1

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28377S: 关于28377S程序搬运到RAM中运行,程序存储空间的问题咨询。
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1