十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
看样子你是用的51单片机吧,一般都用的11.0592的,你用的大了点,但这也不影响;但你要注意它每执行一步用的时候为0.5微秒,所以:
成都地区优秀IDC服务器托管提供商(创新互联公司).为客户提供专业的成都西云数据中心,四川各地服务器托管,成都西云数据中心、多线服务器托管.托管咨询专线:13518219792
void delayus (unsigned x)
{
for (;x0;x--)
_nop_();
}
然后你再用KEIL里的调试,去测一下大约用的时间
因为有for循环语句,这个for函数的循环次数有250次,相当于250个_nop()_语句。for的参数是(初值,循环条件,循环步骤),比如这个的初值是250,条件是大于0,步骤是--既i每循环一次就减1,相当于i=i-1。当循环了250次后,i=0不满足大于0的条件,于是结束for循环。
如果是单片机上,是有可能的
单片机12M晶振执行一条指令1us,所以C语言1us延时程序 用12M晶振延时1us,用—_nop_();
#includeintrins.h //头文件
_nop_(); //这一个语句表示1us延时