exp.bak
来自「P1口输入、输出试验 实验目的 1.学习P1口的使用方法。 2.学习」· BAK 代码 · 共 51 行
BAK
51 行
ORG 0000H
AJMP START
;--------初始化----------
ORG 0100H
START:MOV A,#0FH ;把00001111送到A中
MOV P1,A ;初始化键盘
MOV B,#0FFH
;--------主程序----------
MAIN: MOV P0,B
MOV R5,#0FAH
DEFER:MOV R4,#0FAH
DJNZ R4,$
DJNZ R5,DEFER
CPL P0
ACALL KEYON ;调用抗干扰程序
CJNE A,#0FH,DELAY
AJMP MAIN
DELAY:ACALL DL10MS ;延时10MS消除抖动
ACALL KEYON
CJNE A,#0FH,KEY ;如果是干扰则返回MAIN
AJMP MAIN
;--------抗干扰子程序----------
KEYON:MOV P1,#0FH
MOV A,P1
ANL A,#0FH
RET
;--------消除抖动子程序--------
DL10MS:MOV R7,#14H
LATENCY:MOV R6,#0F9H
DJNZ R6,$
DJNZ R7,LATENCY
RET
;1+(1+249*2+2)*20+2=10.023MS
;----------判断按键子程序-------
KEY:MOV A,P1
K0: CJNE A,#0EH,K1
MOV B,#0F0H
AJMP MAIN
K1: CJNE A,#0DH,K2
MOV B,#0AAH
AJMP MAIN
K2: CJNE A,#0BH,K3
MOV B,#0C3H
AJMP MAIN
K3: CJNE A,#07H,L1
MOV B,#66H
AJMP MAIN
L1: RET
;-----------程序结束--------------
END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?