单片机c语言us函数 单片机c语言us函数怎么写

单片机 急需22.1184Mhz的晶振的尽可能精确的延时函数,单位为“us”C语言写的,因为DS18B20对时序要求很高

看样子你是用的51单片机吧,一般都用的11.0592的,你用的大了点,但这也不影响;但你要注意它每执行一步用的时候为0.5微秒,所以:

成都地区优秀IDC服务器托管提供商(创新互联公司).为客户提供专业的成都西云数据中心,四川各地服务器托管,成都西云数据中心、多线服务器托管.托管咨询专线:13518219792

void delayus (unsigned x)

{

for (;x0;x--)

_nop_();

}

然后你再用KEIL里的调试,去测一下大约用的时间

单片机C语言延时500uS程序

因为有for循环语句,这个for函数的循环次数有250次,相当于250个_nop()_语句。for的参数是(初值,循环条件,循环步骤),比如这个的初值是250,条件是大于0,步骤是--既i每循环一次就减1,相当于i=i-1。当循环了250次后,i=0不满足大于0的条件,于是结束for循环。

c语言中一个标准的延时1us的函数怎么写?

如果是单片机上,是有可能的

单片机12M晶振执行一条指令1us,所以C语言1us延时程序 用12M晶振延时1us,用—_nop_();

#includeintrins.h //头文件

_nop_(); //这一个语句表示1us延时


分享标题:单片机c语言us函数 单片机c语言us函数怎么写
转载来源:http://ybzwz.com/article/ddgeioc.html