TI库自带的延时函数 (DSP28x_usDelay)

2019-07-20 16:28发布

各位朋友,大家好:
    在此,我想请教一下 关于TI库自带的延时函数(DSP28x_usDelay)问题:

    当把程序加载到RAM中,现象正常;可当把程序加载到Flash中时,发现有较大的延迟现象

    看了DSP281x_usDelay文件的代码,发现该函数已分配到ramfuncs段(该延时函数将在RAM中运行),那为何当把程序下载到Flash时
还会出现如此大的延迟呢?

    其次,各位在调试程序时,一般是用自己编写的延时函数还是TI库中的延时函数?
    若是采用自己编写的延时函数,那该如何确定该函数的延时时间呢?是通过观察CCS中的Clock工具吗?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
airwill
1楼-- · 2019-07-20 20:14
因为是在 RAM 里运行, 应该差别不大, 当然前面调用和返回的过程是需要时间的
free_稀饭
2楼-- · 2019-07-21 01:20
本帖最后由 free_稀饭 于 2016-9-23 14:50 编辑
airwill 发表于 2016-9-23 14:21
因为是在 RAM 里运行, 应该差别不大, 当然前面调用和返回的过程是需要时间的 ...

版主,您好:
言外之意,DSP28x_usDelay这个延时函数在Flash运行与在RAM运行是一样的,因为就算把DSP28x_usDelay加载到Flash,该函数也是被分配到RAM中执行  (是这样理解的吗?)

那,对于一些芯片的操作,延时函数都是用自己编写的简单函数吗?那又该如何确定延时时间呢?

airwill
3楼-- · 2019-07-21 04:09
 精彩回答 2  元偷偷看……
free_稀饭
4楼-- · 2019-07-21 04:42
airwill 发表于 2016-9-23 18:17
如果看了 DSP28x_usDelay内部是实现, 用汇编写的, 里面已经是最简单的了.
ramfuncs 函数会加载到 RAM 里运 ...

谢谢版主的解答:
我把程序下载到RAM调试时正常,可当把程序下载到Flash就会出现较大的延迟现象;
经过测试,是DSP28x_usDelay延时函数的问题(DSP28x_usDelay已分配到ramfuncs )
我想问一下,为何在Flash中不能用DSP28x_usDelay延时函数呢
airwill
5楼-- · 2019-07-21 09:11
是不是设置问题, 会不会这个 ramfuncs 段没有进入 SRAM 中, 可以调试器跟踪一下, 看看这个 DSP28x_usDelay 是不是在 RAM 中
free_稀饭
6楼-- · 2019-07-21 13:55
airwill 发表于 2016-9-23 21:31
是不是设置问题, 会不会这个 ramfuncs 段没有进入 SRAM 中, 可以调试器跟踪一下, 看看这个 DSP28x_usDelay  ...

谢谢,版主:
那我再调试一下试试看,若有问题再向您请教

一周热门 更多>