|
void T0_init (void)
{
AUXR |= 0x80; //定時(shí)器時(shí)鐘1T模式
TMOD &= 0xF0; //設(shè)置定時(shí)器模式
TH0=(65536-1000)/256; //16位計(jì)數(shù)寄存器T0高8位, 12MHZ時(shí)1000微秒
TL0=(65536-1000)%256; //16位計(jì)數(shù)寄存器T0低8位,
TF0 = 0; //清除TF0標(biāo)志
TR0 = 1; //啟動(dòng)定時(shí)器
ET0 = 1; //使能定時(shí)器中斷
}
void TM0_Isr() interrupt 1
{
TH0=(65536-1000)/256; //16位計(jì)數(shù)寄存器T0高8位, 12MHZ時(shí)1000微秒
TL0=(65536-1000)%256; //16位計(jì)數(shù)寄存器T0低8位,
k++; //k自加1
if(k>=1000) //1秒后計(jì)
{
kk++;
k=0;
}
if(kk>=10)
{
kk=0;
}
LED[0]=kk%10; //顯
LED[1]=kk/10%10;
LED[2]=kk/100%10;
LED[3]=kk/1000;
}
燒錄程序后數(shù)字跑得飛快,而不是1秒1次。為什么?單片機(jī)STC8G1K08
|
|