软件延时并不精确,我都是用一个叫dpjxjl的小软件自动生成,具体准确否,没校验过,以1MS例:STC的1T单片机12MHz:
void delay(void) //误差 0us
{
unsigned char a,b;
for(b=129;b>0;b--)
for(a=45;a>0;a--);
}
1T单片机11.0592MHz:
void delay(void) //误差 -0.018084490741us
{
unsigned char a,b,c;
for(c=8;c>0;c--)
for(b=197;b>0;b--)
for(a=2;a>0;a--);
}
追问能给我一个带参数的吗 谢谢了
追答改下不难吧;简单的就这样改吧
void delay(unsigned char c)
{
unsigned char a,b,d;
for(d=c;d>0;d--)
{
for(b=129;b>0;b--)
for(a=45;a>0;a--);
}
}