EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
单片机延时程序经验
8 X" B' o. c# \* {% T" F% ]3 W2 }% Z# r, F
3 o+ ]2 l) o3 |- _& h0 q
标准的C语言中没有空语句。但在单片机的C语言编程中,经常需要用几个空指令产生短延时的效果。这在汇编语言中很容易实现,写几个nop就行了。 在keil C51中,直接调用库函数: #include // 声明了void _nop_(void); _nop_(); // 产生一条NOP指令 作用:对于延时很短的,要求在us级的,采用“_nop_”函数,这个函数相当汇编NOP指令,延时几微秒。NOP指令为单周期指令,可由晶振频率算出延时时间,对于12M晶振,延时1uS。对于延时比较长的,要求在大于10us,采用C51中的循环语句来实现。 在选择C51中循环语句时,要注意以下几个问题 - x( V# t/ y: H0 r& f0 } X" k
|