当前位置: 代码迷 >> 单片机 >> keil c的_nop_()函数在哪里?——基础解决思路
  详细解决方案

keil c的_nop_()函数在哪里?——基础解决思路

热度:354   发布时间:2016-04-28 15:01:43.0
keil c的_nop_()函数在哪里?——基础
问题如上。NOP在C语言中的原型是什么?在哪个头文件中?
------解决方案--------------------
标准的C语言中没有空语句。但在单片机的C语言编程中,经常需要用几个空指令产生短延时的效果。这在汇编语言中很容易实现,写几个nop就行了。  
 在keil C51中,直接调用库函数: 
 #include<intrins.h>       // 声明了void _nop_(void); 
_nop_();                  // 产生一条NOP指令  
作用:对于延时很短的,要求在us级的,采用“_nop_”函数,这个函数相当汇编NOP指令,延时几微秒。NOP指令为单周期指令,可由晶振频率算出延时时间,对于12M晶振,延时1uS。对于延时比较长的,要求在大于10us,采用C51中的循环语句来实现。


在百度搜出来的,http://wenku.baidu.com/link?url=9MZMEJsQRkN3FKkkPCf1Hy-j7_A1XudQIlIctVWmDWbnz4HJVNsdiA3ORb0RBNeB_MJ4vIybIsMhF9i9WtDZR3m-Rqorkue7r9q-JS62BYC
  相关解决方案