基本I/O实验及查表指令
一个开关闭合后,有一个对应的 LED 指示灯亮
硬件电路:
汇编程序:
;基本I/O实验
ORG 0000H
LJMP START ;P2 输入 P0 输出
ORG 0100H
START: NOP
LOOP: MOV P2, #0FFH ; 复位 P1 口为输入状态
MOV A, P2 ;
MOV P0, A
AJMP LOOP
END
;查表指令
ORG 0000H
LJMP START ; 流水灯程序 , 查表 P1 输出
ORG 0100H
START: MOV DPTR,#TAB
LOOP : CLR A
MOVC A,@A+DPTR;
CJNE A,#0FFH,NEXT
AJMP START
NEXT: CPL A
MOV P0,A
LCALL DELAY
INC DPTR
AJMP LOOP
DELAY: MOV R5, #250
DELAY1: MOV R6, #250
NOP
DELAY0: DJNZ R6,DELAY0
DJNZ R5,DELAY1
RET
TAB: DB 01H,02H,04H,08H,10H,20H,40H,80H
DB 80H,40H,20H,10H,08H,04H,02H,01H,0FFH
END