新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)鍵盤接口電路及其源程序

        51單片機(jī)鍵盤接口電路及其源程序

        作者: 時(shí)間:2012-06-23 來源:網(wǎng)絡(luò) 收藏

        本文引用地址:http://www.104case.com/article/171256.htm

        K_RET1:

        RET

        D500MS: ;流水燈的延遲時(shí)間

        PUSH PSW

        SETB RS0

        MOV R7,#200

        D51: MOV R6,#250

        D52: NOP

        NOP

        NOP

        NOP

        DJNZ R6,D52

        DJNZ R7,D51

        POP PSW

        RET

        LAMP:

        JB StartEnd,LampStart ;如果StartEnd=1,則啟動(dòng)

        MOV P1,#0FFH

        AJMP LAMPRET ;不然關(guān)閉所有顯示,返回

        LampStart:

        JB UpDown,LAMPUP ;如果UpDown=1,則向上流動(dòng)

        MOV A,LAMPCODE

        RL A ;實(shí)際就是左移位而已

        MOV LAMPCODE,A

        MOV P1,A

        LCALL D500MS

        AJMP LAMPRET

        LAMPUP:

        MOV A,LAMPCODE

        RR A ;向下流動(dòng)實(shí)際就是右移

        MOV LAMPCODE,A

        MOV P1,A

        LCALL D500MS

        LAMPRET:

        RET

        END

        以上程序功能很簡(jiǎn)單,但它演示了一個(gè)處理程序的基本思路,程序本身很簡(jiǎn)單,也不很實(shí)用,實(shí)際工作中還會(huì)有好多要考慮的因素,比如主循環(huán)每次都調(diào)用燈的循環(huán)程序,會(huì)造成按鈕反應(yīng)“遲鈍”,而如果一直按著鍵不放,則燈不會(huì)再流動(dòng),一直要到松開手為止,等等,大家能仔細(xì)考慮一下這些問題,再想想有什么好的解決辦法。

        2、采用中斷方式:如圖4所示。各個(gè)按鈕都接到一個(gè)與非上,當(dāng)有任何一個(gè)按鈕按下時(shí),都會(huì)使與門輸出為低電平,從而引起的中斷,它的好處是不用在主程序中持續(xù)地循環(huán)查詢,如果有鍵按下,再去做對(duì)應(yīng)的處理

        DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY



        上一頁 1 2 3 下一頁

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 定日县| 中西区| 保康县| 礼泉县| 教育| 绥宁县| 大城县| 永安市| 汝阳县| 灵台县| 福贡县| 黔南| 凤山市| 泾川县| 汨罗市| 聊城市| 西乌珠穆沁旗| 青海省| 光山县| 虎林市| 瓦房店市| 呼图壁县| 韶关市| 广水市| 凌源市| 泾川县| 界首市| 兴海县| 磐安县| 柯坪县| 柳河县| 遵义市| 麦盖提县| 南昌市| 儋州市| 天水市| 河西区| 金坛市| 新泰市| 乐陵市| 绍兴县|