天涯明月刀论剑赛季:F28335 Flash烧写后程序不能正常运行的解决

来源:百度文库 编辑:中财网 时间:2024/04/28 15:36:17
将F28335的程序烧写至flash运行,发现当程序简单时烧写至flash可以正常运行,后来不知道代码加了什么东西,固化代码运行时程序莫名地跑飞。
经过不断跟踪,发现是因为执行了DSP28x_usDelay()函数使程序跑飞。仔细研究后,发现程序跑飞的原因是程序没有将定义在RAM中执行的代码从flash拷贝至RAM中。搞清楚一下几点就可以解决问题:
1) DSP28x_usDelay()在DSP2833x_usDelay.asm文件中定义,并且使用.sect "ramfuncs"命令分配到ramfuncs段;
2) F28335.cmd中   ramfuncs            : LOAD = FLASHD,                          RUN = RAML0,                          LOAD_START(_RamfuncsLoadStart), /*定义ramfuncs sectiond的起始加载地址*/                         LOAD_END(_RamfuncsLoadEnd), /*定义ramfuncs sectiond的终止加载地址*/                         RUN_START(_RamfuncsRunStart), /*定义ramfuncs sectiond的起始执行地址*/                         PAGE = 0    ramfuncs定义为从FLASHD中load,并在RAML0执行。
3)在DSP2833x_GlobalPrototypes.h中,声明了上述三个地址: extern Uint16 RamfuncsLoadStart; extern Uint16 RamfuncsLoadEnd; extern Uint16 RamfuncsRunStart;
4)若只有以上三段定义,并未将flash中的ramfuncs段拷贝值RAM中执行,程序固化后依然不能正常运行。需要在芯片初始化后,且在执行ramfuncs段函数之前将flash中的代码拷贝至RAM中执行。即执行:     MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);      
添加代码拷贝函数后,固化程序,重新上电,发现程序固化成功且执行正常!
参考:   dsp-将flash中的函数拷贝到ram中运行, http://hi.baidu.com/zoyaforever/blog/item/2591e5667123f521ab184ccc.html   C2000系列DSP Flash烧写解决方案总集, http://www.61ic.com/code/viewthread.php?tid=68079
电脑程序不能正长工作---怎么办? flash程序下载?我的电脑不能看FLASH呀 WIN98不能播放FLASH,该下载什么程序播放?谢谢。 不能成功安装flash player安全更新程序的原因 不能成功更新Flash Player 安全更新程序 (KB913433) Flash Player 安全更新程序 (KB913433)不能自动更新,郁闷 为什么Flash Player 安全更新程序 (KB913433)不能更新呢 一个flash小程序片断不能运行 请指教 Flash Player 安全更新程序 (KB913433)不能成功更新安装 为什么不能安装Flash Player 安全更新程序 (KB913433) 程序正议? 虚拟内存是怎么回事?正运行程序时说内存不能为什么什么如何解决? 不能正常用百度 windows不能升级,显示:Flash Player 安全更新程序 不能升级,,求助啊 建的文件夹,不能删除和移动,显示"文件正被另外一个人或程序使用"? 我的FLASH MX 库中有个位图不能点击,一点击就马上关闭FLASH MX 程序,请问这是什么原因.....急!!!!!!! 我不小心删掉了什么程序,现在网页上的flash都不能看~~ 为什么不能更新Flash player程序,其它的却可以怎么办?请电脑高手帮忙,谢谢! 不能安装微软的flash player 安全更新程序KB913433的原因. 我的计算机Flash Player 安全更新程序 (KB913433)不能安装 我的 XPsp2系统为什么不能安装Flash Player9(安全更新程序)? 为什么我的 FLASH PLAYER安全更新程序(KB913433)不能自动更新? 为什么XP自动更新时系统提示Flash Player安全更新程序(KB913433)不能成功更新? 最近的windows更新程序中Flash Player 安全更新程序 (KB913433)能下载下来,但就是不能成功安装。