找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3089|回復(fù): 0
收起左側(cè)

單片機(jī)獨(dú)立按鍵控制LED移位程序

[復(fù)制鏈接]
ID:954312 發(fā)表于 2021-7-19 18:19 | 顯示全部樓層 |閱讀模式
#include <REGX52.H>
void Delay(unsigned int xms);

unsigned char LEDNum;

void main()
{
        P2=~0x01;                                //上電默認(rèn)LED1點(diǎn)亮
        while(1)
        {
                if(P3_1==0)                        //如果K1按鍵按下
                {
                        Delay(20);
                        while(P3_1==0);
                        Delay(20);
                       
                        LEDNum++;                //LEDNum自增
                        if(LEDNum>=8)        //限制LEDNum自增范圍
                                LEDNum=0;
                        P2=~(0x01<<LEDNum);        //LED的第LEDNum位點(diǎn)亮
                }
                if(P3_0==0)                        //如果K2按鍵按下
                {
                        Delay(20);
                        while(P3_0==0);
                        Delay(20);
                       
                        if(LEDNum==0)        //LEDNum減到0后變?yōu)?
                                LEDNum=7;
                        else                        //LEDNum未減到0,自減
                                LEDNum--;
                        P2=~(0x01<<LEDNum);        //LED的第LEDNum位點(diǎn)亮
                }
        }
}

void Delay(unsigned int xms)
{
        unsigned char i, j;
        while(xms--)
        {
                i = 2;
                j = 239;
                do
                {
                        while (--j);
                } while (--i);
        }
}



回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表