void delay(uint z)
{
uint x;
TMOD=0x01;//T0选择工作方式一,16位定时器
TR0=0;//T0关
for(x=z;x>0;x--)
{
TH0=(65536-55536)/256;
TL0=(65536-55536)%256;//定时10ms
TR0=1;//T0开
}
}
我是这样考虑的,用定时器T0的工作方式一,定时10ms。
用for语句的循环功能,对其循环控制。
z等于几,就是循环几次,也就是说延时几个10ms。
如果不满足for中的表达式2,则进入语句,进行动作,然后再求解表达式3.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
一周热门 更多>