MCS-51单片机定时器/c见习题解答
void serve() interrupt 1
{
count++;
if(count=7)
P1_0=1;
else
P1_0=0;
if(count==10)
count=0;
}
9、两只开关分别接入P3.0、P3.1,在开关信号4种不同的组合逻辑状态,使P1.0分别输出频率0.5kHz、1kHz、2kHz、4kHz的方波,晶振频率为12MHz。
#include at89x52.h>
unsigned char data sta;
unsigned char data cou;
unsigned char data mag;
void main()
{
TMOD=0x02;
TL0=131;
TH0=131;
TR0=1;
ET0=1;
EA =1;
cou=0;
While(1);
}
void serve() interrupt 1
{
unsigned char temp;
P3=0xff;
temp=P30xfc;
if(temp!=sta)
{
sta=temp;
cou=0;
}
if(sta=0x00)
mag=7;
else if(sta=0x01)
mag=3;
else if(sta=0x10)
mag=1;
else if(sta=0x11)
mag=0;
if(cou==mag)
{
P1_0=~P1_0;
cou=0;
}
else
cou++;
}
10、MCS-51单片机P1端口上,经驱动器连接有8只发光二极管,若fosc=6MHz,试编写程序,使这8只发光二极管每隔2s循环发光一次(要求T0定时)。
#include at89x52.h>
unsigned char data cou;
unsigned int data tim;
51单片机相关文章:51单片机教程
尘埃粒子计数器相关文章:尘埃粒子计数器原理
评论