MCS-51單片機(jī)定時(shí)器/c見習(xí)題解答
void main()
{
TMOD=0x02;
TL0=16;
TH0=16;
TR0=1;
ET0=1;
EA =1;
P1=0;
cou=0;
tim=1;
While(1);
}
void serve() interrupt 1
{
tim++;
if(tim==500)
{
P1=0x01cou;
tim=1;
cou++;
if(cou==8)
cou=0;
}
}
15.設(shè)fosc=12MHz。試編寫一段程序,對定時(shí)器T1初始化,使之工作在模式2,產(chǎn)生200μs定時(shí),并用查詢T1溢出標(biāo)志的方法,控制P1.1輸出周期為2ms的方波。
#include at89x52.h>
void main()
{
unsigned char i,j;
TMOD=0x20;
TL1=56;
TH1=56;
TR1=1;
while(1)
{
while(TF1=1)
{
TF1=0;
i++;
if(i==5)
{
P1_1=~P1_1;
i=0;
}
}
}
}
11、使用一個(gè)定時(shí)器,如何通過軟、硬件結(jié)合的方法,實(shí)現(xiàn)較長時(shí)間的定時(shí)?
答:先使用硬件實(shí)現(xiàn)單位時(shí)間的定時(shí),通過軟件設(shè)置計(jì)數(shù)來實(shí)現(xiàn)較長時(shí)間的定時(shí)。
51單片機(jī)相關(guān)文章:51單片機(jī)教程
塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理
評論