一个延时函数
void delay(unsigned int x)
{
while(t--);
}
void main()
{
unsigned char t=2;
delay(t*55*23+234);//值是随便写的,这个延时时间为1
}
void main()
{
delay(2*55*23+234);//值是随便写的,这个延时时间为2
}
1要比2的延时时间长很多,有时会差几十倍。。问题应该是1要进入DEKAY函数内部前t*55*23+234计算用时较长,可能用到几MS。而2中则只要几US就直接能进入了。。不知道是为什么? |