用单片机写流水灯程序,要求按一下顺流,再按一下交替闪烁!!不能用中断!

2025-04-25 12:23:01
推荐回答(1个)
回答1:

#include
#include
#define uchar unsigned char
sbit key=P1^0;
bit flag;
void delay(uchar a)
{
uchar i;
while(a--)for(i=0;i<120;i++);
}

main()
{
uchar led=0xfe;
uchar flash=0x00;
flag=0;
while(1)
    {
    if(key==0)
        {
        while(key==0);
        flag=~flag;
        }
    if(flag)
        {
        P0=flash;
        delay(50);
        flash=~flash;
        }
    else
        {
        P0=led;
        led=_crol_(led,1);
        delay(100);
        }
    }
}