You are on page 1of 21

TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051

ThS.KS. Nguyễn Đình Luyện

BÀI TẬP THỰC HÀNH VI ĐIỀU KHIỂN 8051 – KIT 8051


BÀI 1 : Chương trình đồng hồ

ORG 0000H
JMP MAIN
ORG 000BH
JMP NGAT_TIMER0
ORG 0030H
MAIN:
MOV IE ,#82H
MOV 10H ,#0
MOV 11H ,#0
Mov 12h ,#0
Mov TMOD,#01H
MOV 26H ,#20
SETB TF0
M1: CALL TAO_MA
CALL HIEN_THI
JMP M1
NGAT_TIMER0:
CLR TR0
MOV TH0 ,#HIGH(-50000)
MOV TL0 ,#LOW (-50000)
DEC 26H
MOV A ,26H
CJNE A ,#0 ,EXIT
MOV 26H ,#20
CALL DEM_THOI_GIAN
EXIT:
SETB TR0
RETI
TAO_MA:
CALL TM_GIAY
CALL TM_PHUT
CALL TM_GIO
RET
TM_GIAY:
MOV A ,10H
CALL CH_BCD
MOV R4 ,A

1
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

CALL CH_LED
MOV 18H ,A

MOV A ,R4
SWAP A
CALL CH_LED
MOV 17H ,A
RET
TM_PHUT:
MOV A ,11H
CALL CH_BCD
MOV R4 ,A
CALL CH_LED
MOV 1AH ,A

MOV A ,R4
SWAP A
CALL CH_LED
MOV 19H ,A
RET
TM_GIO:
MOV A ,12H
CALL CH_BCD
MOV R4 ,A
CALL CH_LED
MOV 1CH ,A

MOV A ,R4
SWAP A
CALL CH_LED
MOV 1BH ,A
RET
CH_BCD:
MOV B ,#10
DIV AB
SWAP A
ADD A ,B
RET
CH_LED:
MOV DPTR,#TABLE

2
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOVC A ,@A+DPTR
RET
TABLE:
DB 09H,0BDH,13H,91H,0A5H,0C1H,61H,9DH,01H,85H
DEM_THOI_GIAN:
MOV R0 ,#10H
INC @R0
CJNE @R0 ,#60 ,DD1
MOV @R0 ,#0
INC R0
INC @R0
CJNE @R0 ,#60 ,DD1
INC R0
INC @R0
CJNE @R0 ,#12 ,DD1
MOV 10H ,#0
MOV 11H ,#0
MOV 12H ,#0
DD1: RET
HIEN_THI:
MOV P2 ,18H
MOV P0 ,#11011111B
CALL DELAY

MOV P2 ,17H
MOV P0 ,#11101111B
CALL DELAY

MOV P2 ,1AH
MOV P0 ,#11110111B
CALL DELAY

MOV P2 ,19H
MOV P0 ,#11111011B
CALL DELAY

MOV P2 ,1CH
MOV P0 ,#11111101B
CALL DELAY

3
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV P2 ,1BH
MOV P0 ,#11111110B
CALL DELAY
RET
DELAY:
MOV R0 ,#20
DL1: MOV R1 ,#50
HERE:DJNZ R1 ,HERE
DJNZ R0 ,DL1
RET
END

Bài 2 : Thử LED

ORG 0000H
MOV TMOD,#01H
;**************************
;SANG DAN
;**************************
START: MOV R2,#2
LOOP: MOV P0,#00H
SETB P0.0
ACALL DELAY_500MS
SETB P0.1
ACALL DELAY_500MS
SETB P0.2
ACALL DELAY_500MS
SETB P0.3
ACALL DELAY_500MS
SETB P0.4
ACALL DELAY_500MS
SETB P0.5
ACALL DELAY_500MS
SETB P0.6
ACALL DELAY_500MS
SETB P0.7
ACALL DELAY_1S
DJNZ R2,LOOP
MOV R2,#2
;*****************************

4
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

; SANG TOA/TAT
;*****************************
LOOP4: MOV P0,#00H
ACALL DELAY_1S
MOV P0,#18H
ACALL DELAY_500MS
MOV P0,#3CH
ACALL DELAY_500MS
MOV P0,#7EH
ACALL DELAY_500MS
MOV P0,#0FFH
ACALL DELAY_500MS
MOV P0,#7EH
ACALL DELAY_500MS
MOV P0,#3CH
ACALL DELAY_500MS
MOV P0,#18H
ACALL DELAY_500MS
MOV P0,#00H
ACALL DELAY_500MS
ACALL DELAY_1S
DJNZ R2,LOOP4
;******************************
; SANG CHAN/LE
;******************************
MOV R2,#2
LOOP5: MOV P0,#00H
ACALL DELAY_50MS
MOV P0,#01H
ACALL DELAY_500MS
MOV P0,#05H
ACALL DELAY_500MS
MOV P0,#15H
ACALL DELAY_500MS
MOV P0,#55H
ACALL DELAY_500MS
MOV P0,#57H
ACALL DELAY_500MS
MOV P0,#5FH
ACALL DELAY_500MS

5
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV P0,#7FH
ACALL DELAY_500MS
MOV P0,#0FFH
ACALL DELAY_500MS
MOV P0,#80H
ACALL DELAY_500MS
MOV P0,#0A0H
ACALL DELAY_500MS
MOV P0,#0A8H
ACALL DELAY_500MS
MOV P0,#0AAH
ACALL DELAY_500MS
MOV P0,#0EAH
ACALL DELAY_500MS
MOV P0,#0FAH
ACALL DELAY_500MS
MOV P0,#0FEH
ACALL DELAY_500MS
MOV P0,#0FFH
ACALL DELAY_500MS
DJNZ R2,LOOP5
LJMP START
THOAT:
SJMP THOAT
;******************************
DELAY_50MS:
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW (-50000)
SETB TR0
L11: JNB TF0,L11
CLR TF0
RET
;******************************
DELAY_500MS:
MOV R1,#10
LOOP2: ACALL DELAY_50MS
DJNZ R1,LOOP2
RET
;******************************
DELAY_1S:

6
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV R0,#2
LOOP1: ACALL DELAY_500MS
DJNZ R0,LOOP1
RET
END

Bài 3 : Xuất 8 LED


ORG 0000H
MAIN:
MOV A,#00H
MOV TMOD,#01H
LOOP: MOV R6,A
ACALL READ_KEY
JC SKIP
MOV A,R6
SKIP: ACALL OUTLED
JMP LOOP
;**********************
GETKEY:
PUSH 02H
PUSH 06H
PUSH 07H
MOV A,#0FEH
MOV R6,#4
TEST: MOV P1,A
MOV R7,A
MOV A,P1
ANL A,#0F0H
CJNE A,#0F0H,KEY_HIT
MOV A,R7
RL A
DJNZ R6,TEST
CLR C
LJMP EXIT
KEY_HIT: MOV R7,A
MOV A,#4
CLR C
SUBB A,R6
MOV R6,A
MOV A,R7

7
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

SWAP A
MOV R2,#4
AGAIN: RRC A
JNC DONE
INC R6
INC R6
INC R6
INC R6
DJNZ R2,AGAIN
DONE: SETB C
MOV A,R6
EXIT: NOP
POP 07H
POP 06H
POP 02H
RET
;********************
READ_KEY:
PUSH 03H
NHOK: MOV R3,#50
BACK:
ACALL GETKEY
JNC NHOK
DJNZ R3,BACK
PUSH ACC
BACK2: MOV R3,#50
BACK3: ACALL GETKEY
JC BACK2
DJNZ R3,BACK3
POP ACC
POP 03H
RET
;********************
OUTLED:
MOV DPTR,#TABLE
MOVC A, @A+DPTR
MOV P3,A
RET
TABLE:
DB 01H,02H,04H,08H,10H,20H,40H,80H

8
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

END
Bài 4 : Xuất LED
ORG 0000H
MAIN:
MOV A,#00H
MOV TMOD,#01H
LOOP: MOV R6,A
ACALL READ_KEY
JC SKIP
MOV A,R6
SKIP: ACALL OUTLED
JMP LOOP
;**********************
GETKEY:
PUSH 02H
PUSH 06H
PUSH 07H
MOV A,#0FEH
MOV R6,#4
TEST: MOV P1,A
MOV R7,A
MOV A,P1
ANL A,#0F0H
CJNE A,#0F0H,KEY_HIT
MOV A,R7
RL A
DJNZ R6,TEST
CLR C
LJMP EXIT
KEY_HIT: MOV R7,A
MOV A,#4
CLR C
SUBB A,R6
MOV R6,A
MOV A,R7
SWAP A
MOV R2,#4
AGAIN: RRC A
JNC DONE
INC R6

9
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

INC R6
INC R6
INC R6
DJNZ R2,AGAIN
DONE: SETB C
MOV A,R6
EXIT: NOP
POP 07H
POP 06H
POP 02H
RET
;********************
READ_KEY:
PUSH 03H
NHOK: MOV R3,#50
BACK:
ACALL GETKEY
JNC NHOK
DJNZ R3,BACK
PUSH ACC
BACK2: MOV R3,#50
BACK3: ACALL GETKEY
JC BACK2
DJNZ R3,BACK3
POP ACC
POP 03H
RET
;********************
OUTLED:
MOV DPTR,#TABLE
MOVC A, @A+DPTR
MOV P2,A
MOV P0,#00H
RET
TABLE:
DB
09H,0BDH,13H,91H,0A5H,0C1H,61H,9DH,01H,85H,00H,00H,00H,00H,00H,00H

END

10
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

Bài 5 : Giao tiếp 8255

INCLUDE 89C51.MC
ORG 0000H
MOV DPTR,#0F300H
MOV A,#89H
MOVX @DPTR,A
MOV R0,#00H
OUT_LED: MOV A,#0FFH
MOV DPTR,#0F000H
MOVX @DPTR,A
MOV DPTR,#0F100H
MOVX @DPTR,A
MOV DPTR,#TABLE
MOV A,R0
MOVC A,@A+DPTR
MOV DPTR,#0F000H
MOVX @DPTR,A
INC R0
MOV DPTR,#TABLE
MOV A,R0
MOVC A,@A+DPTR
MOV DPTR,#0F100H
MOVX @DPTR,A
LCALL DELAY
INC R0
CJNE R0,#10,OUT_LED
MOV R0,#00H
SJMP OUT_LED
;**********************************************************************
*****************************************
DELAY: MOV R7,#50
LOOP1: MOV R6,#30
LOOP2: DJNZ R6,LOOP2
DJNZ R7,LOOP1
RET
;**********************************************************************
*******************************
TABLE: DB
07FH,01H,49H,02hH,49H,04H,49H,08H,36H,10H

11
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

END

Bài 6 : Chương trình hiện chữ A-Z

INCLUDE 89C51.MC
ORG 0000H
MAIN: MOV R0,#0
LOOP: MOV DPTR,#CHU_A
MOV R4,#200
LOOP_A: CALL OUT_LED
DJNZ R4,LOOP_A
MOV DPTR,#CHU_B
MOV R4,#200
LOOP_B: CALL OUT_LED
DJNZ R4,LOOP_B
MOV DPTR,#CHU_C
MOV R4,#200
LOOP_C: CALL OUT_LED
DJNZ R4,LOOP_C
MOV DPTR,#CHU_D
MOV R4,#200
LOOP_D: CALL OUT_LED
DJNZ R4,LOOP_D
MOV DPTR,#CHU_E
MOV R4,#200
LOOP_E: CALL OUT_LED
DJNZ R4,LOOP_E
MOV DPTR,#CHU_F
MOV R4,#200
LOOP_F: CALL OUT_LED
DJNZ R4,LOOP_F
MOV DPTR,#CHU_G
MOV R4,#200
LOOP_G: CALL OUT_LED
DJNZ R4,LOOP_G
MOV DPTR,#CHU_H
MOV R4,#200
LOOP_H: CALL OUT_LED
DJNZ R4,LOOP_H
MOV DPTR,#CHU_I

12
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV R4,#200
LOOP_I: CALL OUT_LED
DJNZ R4,LOOP_I
MOV DPTR,#CHU_J
MOV R4,#200
LOOP_J: CALL OUT_LED
DJNZ R4,LOOP_J
MOV DPTR,#CHU_K
MOV R4,#200
LOOP_K: CALL OUT_LED
DJNZ R4,LOOP_K
MOV DPTR,#CHU_L
MOV R4,#200
LOOP_L: CALL OUT_LED
DJNZ R4,LOOP_L
MOV DPTR,#CHU_M
MOV R4,#200
LOOP_M: CALL OUT_LED
DJNZ R4,LOOP_M
MOV DPTR,#CHU_N
MOV R4,#200
LOOP_N: CALL OUT_LED
DJNZ R4,LOOP_N
MOV DPTR,#CHU_O
MOV R4,#200
LOOP_O: CALL OUT_LED
DJNZ R4,LOOP_O
MOV DPTR,#CHU_P
MOV R4,#200
LOOP_P: CALL OUT_LED
DJNZ R4,LOOP_P
MOV DPTR,#CHU_Q
MOV R4,#200
LOOP_Q: CALL OUT_LED
DJNZ R4,LOOP_Q
MOV DPTR,#CHU_R
MOV R4,#200
LOOP_R: CALL OUT_LED
DJNZ R4,LOOP_R
MOV DPTR,#CHU_S

13
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV R4,#200
LOOP_S: CALL OUT_LED
DJNZ R4,LOOP_S
MOV DPTR,#CHU_T
MOV R4,#200
LOOP_T: CALL OUT_LED
DJNZ R4,LOOP_T
MOV DPTR,#CHU_U
MOV R4,#200
LOOP_U: CALL OUT_LED
DJNZ R4,LOOP_U
MOV DPTR,#CHU_V
MOV R4,#200
LOOP_V: CALL OUT_LED
DJNZ R4,LOOP_V
MOV DPTR,#CHU_X
MOV R4,#200
LOOP_X: CALL OUT_LED
DJNZ R4,LOOP_X
MOV DPTR,#CHU_Y
MOV R4,#200
LOOP_Y: CALL OUT_LED
DJNZ R4,LOOP_Y
MOV DPTR,#CHU_Z
MOV R4,#200
LOOP_Z: CALL OUT_LED
DJNZ R4,LOOP_Z
JMP LOOP
;**********************************************************************
*****************************************
OUT_LED: MOV A,R0
MOVC A,@A+DPTR
MOV P0,A
INC R0
MOV A,R0
MOVC A,@A+DPTR
MOV P2,A
INC R0
CALL DELAY
CJNE R0,#10,OUT_LED

14
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV R0,#0
RET
;**********************************************************************
*****************************************
DELAY: MOV R7,#50
LOOP1: MOV R6,#30
LOOP2: DJNZ R6,LOOP2
DJNZ R7,LOOP1
RET
;**********************************************************************
*****************************************
DELAY1S: MOV R0,#100
LOOP3: CLR TR0
MOV TH0,#0D8H
MOV TL0,#0EFH
SETB TR0
JNB TF0,$
CLR TF0
DJNZ R0,LOOP3
RET
;**********************************************************************
*****************************************
CHU_B: DB 7FH,01H,49H,02H,49H,04H,49H,08H,36H,10H
CHU_A: DB 7EH,01H,09H,02H,09H,04H,09H,08H,7EH,10H
CHU_C: DB 3EH,01H,41H,02H,41H,04H,41H,08H,22H,10H
CHU_D: DB 7FH,01H,41H,02H,41H,04H,41H,08H,3EH,10H
CHU_E: DB 7FH,01H,49H,02H,49H,04H,49H,08H,49H,10H
CHU_F: DB 7FH,01H,09H,02H,09H,04H,09H,08H,01H,10H
CHU_G: DB 3EH,01H,41H,02H,41H,04H,49H,08H,7AH,10H
CHU_H: DB 7FH,01H,08H,02H,08H,04H,08H,08H,7FH,10H
CHU_I: DB 41H,01H,41H,02H,7FH,04H,41H,08H,41H,10H
CHU_J: DB 20H,01H,40H,02H,40H,04H,40H,08H,3FH,10H
CHU_K: DB 7FH,01H,08H,02H,14H,04H,22H,08H,41H,10H
CHU_L: DB 7FH,01H,40H,02H,40H,04H,40H,08H,40H,10H
CHU_M: DB 7FH,01H,02H,02H,04H,04H,02H,08H,7FH,10H
CHU_N: DB 7FH,01H,01H,02H,01H,04H,02H,08H,7FH,10H
CHU_O: DB 3EH,01H,41H,02H,41H,04H,41H,08H,3EH,10H
CHU_P: DB 7FH,01H,09H,02H,09H,04H,09H,08H,06H,10H
CHU_Q: DB 3EH,01H,41H,02H,41H,04H,61H,08H,7EH,10H
CHU_R: DB 7FH,01H,09H,02H,19H,04H,29H,08H,46H,10H

15
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

CHU_S: DB 26H,01H,49H,02H,49H,04H,49H,08H,32H,10H
CHU_T: DB 01H,01H,01H,02H,7FH,04H,01H,08H,01H,10H
CHU_U: DB 3FH,01H,40H,02H,40H,04H,40H,08H,3FH,10H
CHU_V: DB 1FH,01H,20H,02H,40H,04H,20H,08H,1FH,10H
CHU_X: DB 41H,01H,41H,02H,3EH,04H,41H,08H,41H,10H
CHU_Y: DB 03H,01H,04H,02H,78H,04H,04H,08H,03H,10H
CHU_Z: DB 61H,01H,51H,02H,49H,04H,45H,08H,43H,10H
END

Bài 7 : Chương trình ADC 0809

INCLUDE 89C51.MC
nhan EQU 23
ORG 0000H
SETB P3.0
SETB P3.1
SETB P3.2
SETB P3.3
REPEAT: MOV P1,#0FFH
MOV DPTR,#0F000H
MOVX @DPTR,A
LCALL DELAY0
MOV DPTR,#0F000H
MOVX A,@DPTR
MOV B,#NHAN
MUL AB
MOV R1,B
LCALL BINARY_TO_BCD
MOV 30H,R1
MOV 31H,A
MOV R5,#0FFH
11111: LCALL OUT_LED
MOV R1,30H
MOV A,31H
DJNZ R5,11111
SJMP REPEAT
;*****************************************************************
BINARY_TO_BCD: PUSHB
MOV B,#10
LCALL DIV_16_8

16
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

PUSHB
MOV B,#10
LCALL DIV_16_8
PUSHB
MOV B,#10
DIV AB
PUSHB
MOV B,#16
MUL AB
POP B
ORL A,B
MOV R1,A
POP B
MOV B,#16
MUL AB
POP B
ORL A,B
POP B
RET
;*****************************************************************
DIV_16_8: MOV R2,#16
MOV R3,A
CLR A ;????????
DIVIDE: XCH A,R3
CLR C
RLC A
XCH A,R3
XCH A,R1
RLC A
XCH A,R1
RLC A
CJNE A,B,NOT_EQUAL
SJMP A_GREATER_EQ_B
NOT_EQUAL: JC BELOW
A_GREATER_EQ_B: SUBB A,B
XCH A,R3
ORL A,#1
XCH A,R3
BELOW: DJNZ R2,DIVIDE
XCH A,B

17
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV A,R3
RET
;******************************************************************
OUT_LED: MOV DPTR,#TABLE
PUSHACC
ANL A,#00001111B
MOVC A,@A+DPTR
MOV P1,A
CLR P3.0
LCALL DELAY
SETB P3.0
POP ACC
SWAP A
ANL A,#00001111B
MOVC A,@A+DPTR
MOV P1,A
CLR P3.1
LCALL DELAY
SETB P3.1
MOV A,R1
ANL A,#00001111B
MOVC A,@A+DPTR
MOV P1,A
CLR P3.2
LCALL DELAY
SETB P3.2
MOV A,R1
SWAP A
ANL A,#00001111B
MOVC A,@A+DPTR
MOV P1,A
CLR P3.3
LCALL DELAY
SETB P3.3
RET
;******************************************************************
DELAY0: MOV R7,#120
SW0: DJNZ R7,SW0
RET
;******************************************************************

18
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

DELAY: MOV R6,#5


MOV R7,#0FFH
SW1: DJNZ R7,SW1
MOV R7,#0FFH
DJNZ R6,SW1
RET
TABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END

Bài 8 : Chương trình xuất LED 7 đoạn

INCLUDE 89C51.MC
ORG 0000H
MAIN:
MOV A,#00H
MOV TMOD,#01H
LOOP: MOV R6,A
ACALL READ_KEY
JNC SKIP
MOV A,R6
SKIP: ACALL OUTLED
JMP LOOP
;**********************
GETKEY:
PUSH 02H
PUSH 06H
PUSH 07H
MOV A,#0FEH
MOV R6,#4
TEST: MOV P1,A
MOV R7,A
MOV A,P1
ANL A,#0F0H
CJNE A,#0F0H,KEY_HIT
MOV A,R7
RL A
DJNZ R6,TEST
CLR C
LJMP EXIT
KEY_HIT: MOV R7,A

19
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOV A,#4
CLR C
SUBB A,R6
MOV R6,A
MOV A,R7
SWAP A
MOV R2,#4
AGAIN: RRC A
JNC DONE
INC R6
INC R6
INC R6
INC R6
DJNZ R2,AGAIN
DONE: SETB C
MOV A,R6
EXIT: NOP
POP 07H
POP 06H
POP 02H
RET
;********************
READ_KEY:
PUSH 03H
NHOK: MOV R3,#50
BACK:
ACALL GETKEY
JNC NHOK
DJNZ R3,BACK
PUSH ACC
BACK2: MOV R3,#50
BACK3: ACALL GETKEY
JC BACK2
DJNZ R3,BACK3
POP ACC
POP 03H
RET
;********************
OUTLED:
MOV DPTR,#TABLE

20
TRƯỜNG ĐẠI HỌC QUY NHƠN Bài giảng Vi Điều Khiển 8051
ThS.KS. Nguyễn Đình Luyện

MOVC A, @A+DPTR
MOV P2,A
MOV P0,#00H
RET
TABLE:
DB
0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,00H,00H,00H,00H,00H,00H

END

21

You might also like