DSP2812中,添加DELAY_US时,需要注意什么?需要同时在哪些文件中添加什么语句?
答案:1 悬赏:50 手机版
解决时间 2021-11-28 02:10
- 提问者网友:欺烟
- 2021-11-27 08:18
DSP2812中,添加DELAY_US时,需要注意什么?需要同时在哪些文件中添加什么语句?
最佳答案
- 五星知识达人网友:想偏头吻你
- 2021-11-27 08:58
不要在不同模块当中调用同一名称的延时子程序,如果需要的话可以做两个名称不同的延时子程序,因为不同模块中调用同一子程序会造成计时混乱。在同一模块中使用的话需要在头文件中用extern声明一下,以便外部调用追问说的清楚点追答你想清楚哪些东西?问题本身就没有特别的针对性,具体问题具体分析,我的解答是对延时子程序使用方面的一些建议
好吧,对于你这个问题我专门搞了代码实验了一下
大致如下,希望是你所想得到的结果
实验条件使用CCS进行编译,在编译过程中会提示到编译不通过,具体涉及到的代码如下
#define DELAY_US(A) DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) - 9.0L) / 5.0L)
那么在使用这个代码的时候会有一个 DSP28x_usDelay的函数,这个函数存在于
F28xxx_usDelay.asm中
当你进行编译的时候通常会在编译器中引用到这个.asm文件但是这个仅仅是引用,如果不将.asm文件拷贝到工程文件夹下会导致错误,提示编译不通过,所以工程文件夹下必须有.asm文件才可以使用DELAY_US,最后需要将这个引用的路径修改
最后把DELAY_US声明到头文件中就好了追问我自己搞清楚了,要在DSP28_GlobalPrototypes.h中加入extern void DSP28_usDelay(Uint32 Count);在main文件开通加#define DELAY_US(A) DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) - 9.0L) / 5.0L) 我是这个意思
好吧,对于你这个问题我专门搞了代码实验了一下
大致如下,希望是你所想得到的结果
实验条件使用CCS进行编译,在编译过程中会提示到编译不通过,具体涉及到的代码如下
#define DELAY_US(A) DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) - 9.0L) / 5.0L)
那么在使用这个代码的时候会有一个 DSP28x_usDelay的函数,这个函数存在于
F28xxx_usDelay.asm中
当你进行编译的时候通常会在编译器中引用到这个.asm文件但是这个仅仅是引用,如果不将.asm文件拷贝到工程文件夹下会导致错误,提示编译不通过,所以工程文件夹下必须有.asm文件才可以使用DELAY_US,最后需要将这个引用的路径修改
最后把DELAY_US声明到头文件中就好了追问我自己搞清楚了,要在DSP28_GlobalPrototypes.h中加入extern void DSP28_usDelay(Uint32 Count);在main文件开通加#define DELAY_US(A) DSP28x_usDelay(((((long double) A * 1000.0L) / (long double)CPU_RATE) - 9.0L) / 5.0L) 我是这个意思
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯