您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > 单片机矩阵键盘汇编语言程序
51单片机4*4矩阵键盘汇编语言程序示例(原创)QQ:342250023,欢迎咨询线反转法ORG00HLJMPMAINMAIN:MOVR0,#00HMOVR1,#00HMOVR2,#00HMOVR3,#00HMOVA,#00HAJMPKEYSCANKEYSCAN:MOVP3,#0F0HMOVA,P3ANLA,#0F0HXRLA,#0F0HJNZDELAYDELAY:MOVR2,#05HLOOP1:MOVR3,#0FAHLOOP2:DJNZR3,LOOP2DJNZR2,LOOP1MOVA,P3ANLA,#0F0HMOVR0,AXRLA,#0F0HJNZKEYSCAN1LJMPKEYSCANKEYSCAN1:MOVA,#00HMOVP3,#0FHMOVA,P3ANLA,#0FHMOVR1,AXRLA,#0FHJNZNUMLJMPKEYSCANNUM:MOVA,R0MOVB,R1ORLA,BMOVDPTR,#TABSJMPDISP0DISP0:CJNEA,#0EEH,DISP1MOVA,#00HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP1:CJNEA,#0EDH,DISP2MOVA,#01HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP2:CJNEA,#0EBH,DISP3MOVA,#02HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP3:CJNEA,#0E7H,DISP4MOVA,#03HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP4:CJNEA,#0DEH,DISP5MOVA,#04HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP5:CJNEA,#0DDH,DISP6MOVA,#05HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP6:CJNEA,#0DBH,DISP7MOVA,#06HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP7:CJNEA,#0D7H,DISP8MOVA,#07HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP8:CJNEA,#0BEH,DISP9MOVA,#08HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISP9:CJNEA,#0BDH,DISPAMOVA,#09HMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISPA:CJNEA,#0BBH,DISPBMOVA,#0AHMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISPB:CJNEA,#0B7H,DISPCMOVA,#0BHMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISPC:CJNEA,#07EH,DISPDMOVA,#0CHMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISPD:CJNEA,#07DH,DISPEMOVA,#0DHMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISPE:CJNEA,#07BH,DISPFMOVA,#0EHMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDISPF:CJNEA,#077H,KEYMOVA,#0FHMOVCA,@A+DPTRMOVP0,ALCALLDELAY1LJMPKEYSCANDELAY1:MOVR2,#0FHLOOP10:MOVR3,#0FAHLOOP20:DJNZR3,LOOP20DJNZR2,LOOP10RETKEY:LJMPMAINTAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71HEND行扫描法ORG00HLJMPMAINMAIN:LCALLKEYJUDGELCALLKEYSCANLCALLDISPLJMPMAINKEYJUDGE:MOVP3,#0F0HMOVA,P3XRLA,#0F0HJNZDELAYLJMPMAINDELAY:MOVR4,#08HLOOP1:MOVR5,#0FAHLOOP2:DJNZR5,LOOP2DJNZR4,LOOP1MOVP3,#0F0HMOVA,P3XRLA,#0F0HJZMAINRETKEYSCAN:MOVR0,#00HMOVR1,#00HMOVR2,#0FEHMOVR3,#04HKEY:MOVP3,R2KEY0:JBP3.4,KEY1MOVR1,#00HLJMPNUMKEY1:JBP3.5,KEY2MOVR1,#04HLJMPNUMKEY2:JBP3.6,KEY3MOVR1,#08HLJMPNUMKEY3:JBP3.7,NEXTMOVR1,#0CHLJMPNUMNEXT:INCR0MOVA,R2RLAMOVR2,ADJNZR3,KEYLJMPNUMNUM:MOVA,R0ADDA,R1MOVDPTR,#TABMOVCA,@A+DPTRMOVR6,ARETDISP:MOVP0,R6LCALLDELAY1RETDELAY1:MOVR4,#0FHLOOP10:MOVR5,#0FAHLOOP20:DJNZR5,LOOP20DJNZR4,LOOP10RETTAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71HEND
本文标题:单片机矩阵键盘汇编语言程序
链接地址:https://www.777doc.com/doc-6859232 .html