中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機一鍵多功能按鍵識別技術(shù)

        單片機一鍵多功能按鍵識別技術(shù)

        作者: 時間:2012-12-05 來源:網(wǎng)絡(luò) 收藏

        在一些系統(tǒng)中,有時候需要采用一些的技術(shù),這里我給大家介紹一下。開關(guān)SP1接在P3.7/RD管腳上,在AT89S51的P1端口接有四個發(fā)光二極管,上電的時候,L1接在P1.0管腳上的發(fā)光二極管在閃爍,當(dāng)每一次按下開關(guān)SP1的時候,L2接在P1.1管腳上的發(fā)光二極管在閃爍,再按下開關(guān)SP1的時候,L3接在P1.2管腳上的發(fā)光二極管在閃爍,再按下開關(guān)SP1的時候,L4接在P1.3管腳上的發(fā)光二極管在閃爍,再按下開關(guān)SP1的時候,又輪到L1在閃爍了,如此輪流下去。這樣就實現(xiàn)了具有。簡單吧

        系統(tǒng)板上硬件連線

        把“單片機系統(tǒng)”區(qū)域中的P3.7/RD端口連接到“獨立式鍵盤”區(qū)域中的SP1端口上把“單片機系統(tǒng)”區(qū)域中的P1.0-P1.4端口用8芯排線連接到“八路發(fā)光二極管指示模塊”區(qū)域中的“L1-L8”端口上;要求,P1.0連接到L1,P1.1連接到L2,P1.2連接到L3,P1.3連接到L4上。具體的電路圖在單片機論壇http://www.51hei.com51區(qū)上有。歡迎發(fā)表您的高見。本文為郭子喻先生原創(chuàng)作品希望大家支持。


        匯編源程序
        ID EQU 30H
        SP1 BIT P3.7
        L1 BIT P1.0
        L2 BIT P1.1
        L3 BIT P1.2
        L4 BIT P1.3
        ORG 0
        MOV ID,#00H
        START: JB K1,REL
        LCALL DELAY10MS
        JB K1,REL
        INC ID
        MOV A,ID
        CJNE A,#04,REL
        MOV ID,#00H
        REL: JNB K1,$
        MOV A,ID
        CJNE A,#00H,IS0
        CPL L1
        LCALL DELAY
        SJMP START
        IS0: CJNE A,#01H,IS1
        CPL L2
        LCALL DELAY
        SJMP START
        IS1: CJNE A,#02H,IS2
        CPL L3
        LCALL DELAY
        SJMP START
        IS2: CJNE A,#03H,IS3
        CPL L4
        LCALL DELAY
        SJMP START
        IS3: LJMP START
        DELAY10MS: MOV R6,#20
        LOOP1: MOV R7,#248
        DJNZ R7,$
        DJNZ R6,LOOP1
        RET
        DELAY: MOV R5,#20
        LOOP2: LCALL DELAY10MS
        DJNZ R5,LOOP2
        RET
        END
        7.C語言源程序
        #include AT89X51.H>
        unsigned char ID;
        void delay10ms(void)
        {
        unsigned char i,j;
        for(i=20;i>0;i--)
        for(j=248;j>0;j--);
        }
        void delay02s(void)
        {
        unsigned char i;
        for(i=20;i>0;i--)
        {delay10ms();
        }
        }
        void main(void)
        { while(1)
        { if(P3_7==0)
        {delay10ms();
        if(P3_7==0)
        {
        ID++;
        if(ID==4)
        {
        ID=0;
        }
        while(P3_7==0);
        }
        }
        switch(ID)
        { case 0:
        P1_0=~P1_0;
        delay02s();
        break;
        case 1:
        P1_1=~P1_1;
        delay02s();
        break;
        case 2:
        P1_2=~P1_2;
        delay02s();
        break;
        case 3:
        P1_3=~P1_3;
        delay02s();
        break;
        }
        }



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉