fanhuamin1988 发表于 2012-2-24 15:54:12

TI 自带的延时函数斌变量编译出错

TI的延时函数
#include <intrinsics.h>       //延时函数包含的头文件

#define   mcu_xtal   8   //可定义为你所用的晶振频率Mhz
#define   delay_us(x)   __delay_cycles (x * mcu_xtal)
#define   delay_ms(x)   __delay_cycles ((unsigned long)x * mcu_xtal*1000)
#define   delay_s(x)    __delay_cycles ((unsigned long)x * mcu_xtal*1000000)


我在调用时想采用变量来控制其延时的时间
uintt=1;

delay_us(t);            //这样调用时会出现错误

delay_us(3);       //里面放数字时没有错误

编译出现有错误

Error: Intrinsic function parameter must be literal
Error while running C/C++ compiler




不知道大家有没有遇到这种情况,希望知道的兄弟帮忙解答一下

uc-zigbee 发表于 2012-2-24 16:07:12

不行。

delay_us(t)
t必须是常数。
页: [1]
查看完整版本: TI 自带的延时函数斌变量编译出错