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

求助memcpy问题

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

Seven Han:

shixiang du,你使用哪个版本的controlsuite,我这边v 3.4.5没有这样的备注,是软件更改升级了,你使用最新版本的。

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

shixiang du:

回复 Seven Han:

你好,我用的是V3.4.6,例程是V130。应该就是最新的版本

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

shixiang du:

回复 Seven Han:

我很想知道这个memcpy函数是在什么时候将程序从FLASH复制到RAM的,有的人说是在执行main()函数之前就搞定了,所以放在InitSysCtrl()前后都无所谓,但是我还是不太确定。请问你知道吗?

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

mangui zhang:

回复 shixiang du:

新的ccs例程中都是TI做了那一部分搬移   你只需设一下宏定义就好

所以和以前的说法不一样了    以前需要自己在工程中增加搬移的一段代码

代码需要放到初始化系统控制之后   才能正常运行

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

mangui zhang:

回复 shixiang du:

新的ccs例程中都是TI做了那一部分搬移   你只需设一下宏定义就好

所以和以前的说法不一样了    以前需要自己在工程中增加搬移的一段代码

代码需要放到初始化系统控制之后   才能正常运行

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

shixiang du:

回复 mangui zhang:

那是说我的memcpy在程序中按照例程的方式就行,不用再纠结放在哪了是吗?

在DSP2803x_usDelay.asm中看到说若要在FLASH中运行需要在InitSysCtrl()之前用memcpy来COPY OVER THE SECTION "ramfuncs",防止 InitSysCtrl()中有DELAY_US()出错,但是官方的例程确实是在InitSysCtrl()之后搬移程序到RAM中运行,且我一直都是在InitSysCtrl()之后用memcpy,却没有出错,这是为什么呢?

shixiang du:

回复 Seven Han:

谢谢你的解答。我这就把这个文档好好看看

赞(0)
未经允许不得转载:TI中文支持网 » 求助memcpy问题
分享到: 更多 (0)