我用TI这个工程:ti\controlSUITE\development_kits\TMDSIDDK_v2.0\IDDK_PM_Servo_F2837x_v2_00_00_00(原工程没有问题),在里面程序作了调整,并加入内容后,发现F28x_usDelay 函数在FLAH里起动没问题,在RAM却不可以。请教一下,是什么原因?F28x_usDelay在RAM模下,怎么自动加载到RAM里。
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.
我用TI这个工程:ti\controlSUITE\development_kits\TMDSIDDK_v2.0\IDDK_PM_Servo_F2837x_v2_00_00_00(原工程没有问题),在里面程序作了调整,并加入内容后,发现F28x_usDelay 函数在FLAH里起动没问题,在RAM却不可以。请教一下,是什么原因?F28x_usDelay在RAM模下,怎么自动加载到RAM里。
终于解决了。
1、F28x_usDelay 有一句:.sect "ramfuncs"已把代码定义为 ramfuncs段,在CMD里面,在RAM模式里起动时,ramfuncs : > RAMM0 PAGE = 0 已加载
2、为什么Delay就不行呢,是因为 .text .cinit .pinit .switch .reset定义的是其它的空间,如: .text : >> RAMLS0LS1LS2LS3LS4LS5 PAGE = 0
3、把ramfuncs : > RAMM0 PAGE = 0 改为:ramfuncs : > RAMLS0LS1LS2LS3LS4LS5 PAGE = 0
同一个RAM空间,问题解决,测试OK!