第1个回答 推荐于2018-04-01
char tt;
int main()
{
TMOD=0x11;//设置定时器0为工作方式1
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;//开定时器0中断
TR0=1;//启动定时器0
while(1)
{
if(tt==10)
{
内容
}
}
void time0() interrupt 1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
tt++;
}
这样就有500MS的延时了本回答被网友采纳
第2个回答 2011-11-22
使用内部定时器
unsigned char Time_Buf;
void main()
{
TMOD=0x01;//设置定时器0为工作方式1
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;//开定时器0中断
TR0=1;//启动定时器0
Time_Buf=0;
EA=1;
while(1)
{
if(Time_Buf==10)
{
Time_Buf=0;
;
}
}
void Timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
Time_Buf++;
}
第3个回答 2011-11-23
定时器Timer0选用模式一,计数从50000开始,到65536,选用12MHZ晶振刚好500ms