52单片机,4个独立按键,分别控制.延时一秒/五分钟/十分钟/15分钟点亮4个led延时一秒熄灭程

如题所述

第1个回答  2017-11-14
#include<reg51.h>
#define uchar unsigned char
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
sbit led1=P1^4;
sbit led2=P1^5;
sbit led3=P1^6;
sbit led4=P1^7;
void delay1s(int a)
{
uchar i,j;
while(a--)
for(i=0;i<60;i++)
for(j=0;ij<120;j++);
}
main()
{
uchar keyval=0;
while(1)
    {
    if(k1==0)
        {
        while(k1==0);
        keyval=1;
        }
    if(k2==0)
        {
        while(k2==0);
        keyval=2;
        }    
    if(k3==0)
        {
        while(k3==0);
        keyval=3;
        }
    if(k4==0)
        {
        while(k4==0);
        keyval=4;
        }    
    switch(keyval)
        {
        case 1:led1=0;delay(1);led1=1;keyval=0;break;
        case 2:led2=0;delay(300);led2=1;keyval=0;break;
        case 3:led3=0;delay(600);led3=1;keyval=0;break;
        case 4:led4=0;delay(900);led4=1;keyval=0;break;
        default:break;
        }
    }
}

本回答被提问者和网友采纳
第2个回答  2017-11-13
然后呢?
第3个回答  2017-11-14
可以实现,
懂事电子设计 Vgz