程序从FLASH运行时,我使用MEMCOPY()方式COPY了RAMfus段的程序到RAM中,程序可以正常跑。现在我想把.cnit段的内容也复制到RAM中运行。发现使用MEMCOPY()方式好像不行,这样操作后连程序都没办法跑起来。之前也试过参考TI例程中将所有代码放入RAM运行的方法,但是发现这样编译器无法链接到我自己写的一个lib文件。无法对Lib文件进行编译,程序一样跑步起来。
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.
程序从FLASH运行时,我使用MEMCOPY()方式COPY了RAMfus段的程序到RAM中,程序可以正常跑。现在我想把.cnit段的内容也复制到RAM中运行。发现使用MEMCOPY()方式好像不行,这样操作后连程序都没办法跑起来。之前也试过参考TI例程中将所有代码放入RAM运行的方法,但是发现这样编译器无法链接到我自己写的一个lib文件。无法对Lib文件进行编译,程序一样跑步起来。
你好,这样做是不是在主程序里还需要memcopy()函数将.text搬移到RAM中去呢?
你好,这样做是不是在主程序里还需要memcopy()函数将.text搬移到RAM中去呢?
不使用memcopy搬移的话,text代码仍然在Flash中,运行时仍是在Flash中运行。在memcopy后运行text代码,才能在RAM中运行。你也可以参考下边一种整体搬移的方法,效果是一样的:http://www.ti.com/mcu/docs/litabsmultiplefilelist.tsp?sectionId=96&tabId=1502&literatureNumber=spraau8&docCategoryId=1&familyId=4