你看看你的单片机的晶振是多少,我的是11.0592MHZ,你要是做1us延时的话,可以看下我的,
/*************************************************
Function: // 15us延时函数
Description: // 实现15us的整数倍延时
Input: // unsigned int i
*************************************************/
void Delay_15us (unsigned int i) //15*i+15us延时
{
for(i;i>0;i--)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
_nop_();
_nop_();
}
如果你要是做到1us的话可以直接写_nop_();这是个空指令,系统什么也不干,延时大概就是1us,如果你要是这么写的话,就要包含头文件#include
这个可以用keil 的软件仿真功能,单步执行看它经历的时间
或者看编译生成的汇编。。