跪求一段C程序。用52单片机控制,利用一个按键控制两个灯
按一下按键,A灯亮B灯灭
再按一下A灯灭B灯亮
include
sbit LED_A = P1^0;
sbit LED_B = P1^1;
sbit LED_KEY = P1^2;
void dealy()
{
?int i;
?for(i=0;i
追答 : include
sbit LED_A = P1^0;
sbit LED_B = P1^1;
sbit LED_KEY = P1^2;
void dealy()
{
int i;
for(i=0;i<200;i );
}
void main ()
{
bit KeySta ,j=1;
while (1)
{
if (LED_KEY !=j)
{
dealy();
if (LED_KEY == 0)
{
if(KeySta=0)
{
LED_A = 0;
LED_B = 1;
}
else
{
LED_B = 0;
LED_A = 1;
}
KeySta=~KeySta;
}
j=~j;
}
}
}。
/*A灯P1^0 ?B灯P1^1*/
#include
#define uint unsigned int
#define uchar unsigned char
sbit key=P1^3;
sbit A=P1^0;
sbit B=P1^1;
void main()
{
? ?while(1)
? ?{
? ? ? ?A=1;
? ? ? ?B=0;
? ? ? ?if(key==0)
? ? ? ?{
? ? ? ? ? ?A=0;
? ? ? ? ? ?B=1;
? ? ? ? ? ?while(key!=0);
? ? ? ?}
? ?}
}。
答:首先根据晶振的频率计算出定时器的 定时数据,然后送入数据打开tx,再写一个中断处理程序,在那个中断处理程序中重新送入定时数据。详情>>
答:详情>>