undefined-0's Blog

历添新岁月 春满旧山河

0%

AT89S52_test2

实验二 并行接口输入输出实验

test 2_1

选用输出口接八只发光二极管,编写程序,使发光二极管循环点亮(采用软件延时)
接线方法:使用P1口连接LED

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
ORG 0000H
MOV A,#0FEH
LOOP:
MOV P1,A ;点亮P1.0连接的LED
LCALL DELAY
RL A
MOV P1,A
SJMP LOOP

DELAY: MOV R0,#0AH ;延时子程序(延时时间约1秒)
DELAY1: MOV R1,#00H
DELAY2: MOV R2,#0C3H
DJNZ R2,$
DJNZ R1,DELAY2
DJNZ R0,DELAY1
RET
END

test 2_2

采用一个输入口和一个输出口,将开关的状态反映在发光二极管上
接线方法:P1口接开关,P0口接LED

1
2
3
4
5
6
7
ORG 0000H
LOOP:
ORL P1,#0FFH ;读P1口之前先对其写1
MOV A,P1 ;将P1口状态(按键状态)读入A
MOV P0,A ;将按键状态送至P0,使其在LED上反映出来
SJMP LOOP
END