Professional Documents
Culture Documents
Thi Nghiem Vi Xu Ly Vixulytn (Cuuduongthancong - Com)
Thi Nghiem Vi Xu Ly Vixulytn (Cuuduongthancong - Com)
ORG 2000H
MAIN: MOV C,P1.0
MOV P1.1,C
SJMP MAIN
END
om
ORG 2000H
.c
MOV R5,#10
ng
LAP:MOV R7,#250 co
DJNZ R7,$
DJNZ R6,LAP
an
DJNZ R5,LAP1
th
SJMP MAIN
ng
END
o
ORG 2000H
MAIN: SETB P1.0
MOV R5,#30
u
CuuDuongThanCong.com https://fb.com/tailieudientucntt
ORG 2000H
MOV TMOD,#01H
LOOP: MOV R7,#20
LAP: CLR TR0
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
SETB TR0
JNB TF0,$
CLR TF0
DJNZ R7,LAP
CPL P1.0
SJMP LOOP
END
om
ORG 2000H
LJMP MAIN
.c
ORG 200BH
LJMP ISR_T0
MAIN: MOV TMOD,#01H
ng
MOV R7,#20
CLR TR0 co
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
SETB TR0
an
MOV IE,#82H
SJMP $
th
ISR_T0:
CLR TR0
MOV TH0,#HIGH(-50000)
ng
MOV TL0,#LOW(-50000)
SETB TR0
o
DJNZ R7,EXIT
du
CPL P1.0
MOV R7,#20
EXIT: RETI
u
END
cu
ORG 2000H
MOV 31H,#100;TAO XUNG 0.1Hz
MOV 32H,#20 ;TAO XUNG 0.5Hz
MOV 33H,#10 ;TAO XUNG 1Hz
MOV 34H,#5 ;TAO XUNG 2Hz
MOV 35H,#4 ;TAO XUNG 2.5Hz
MOV 36H,#2 ;TAO XUNG 5Hz
MOV TMOD,#01H
MOV R0,#33H
LOOP:
CuuDuongThanCong.com https://fb.com/tailieudientucntt
JNB P1.1,LOOP1 ;TANG TAN SO
JNB P1.2,LOOP2 ;GIAM TAN SO
CALL DELAY
CPL P1.0
SJMP LOOP
LOOP1:
JNB P1.1,$
INC R0
CJNE R0,#37H,TANG
MOV R0,#33H
TANG: SJMP LOOP
LOOP2:
JNB P1.2,$
DEC R0
CJNE R0,#30H,GIAM
MOV R0,#33H
GIAM: SJMP LOOP
om
DELAY:
MOV A,@R0
LAP: MOV TH0,#HIGH(-50000)
.c
MOV TL0,#LOW(-50000)
SETB TR0
JNB TF0,$
CLR TF0
ng
CLR TR0
DJNZ ACC,LAP
RET
co
END
ORG 2000H
LOOP: MOV A,#0
cu
TABLE: DB 0E0H,0E1H,0E2H,0E3H,0E4H,0E5H,0E6H,0E7H,0E8H,0E9H
CuuDuongThanCong.com https://fb.com/tailieudientucntt
JNB TF0,$
CLR TR0
CLR TF0
DJNZ R7,LAP1
RET
END
ORG 2000H
LOOP: MOV A,#0
LAP: MOV R7,A
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#0000H
MOVX @DPTR,A
MOV A,R7
om
INC A
ACALL DELAY_3MS
CJNE A,#4,LAP
.c
SJMP LOOP
TABLE: DB 071H,0B2H,0D3H,0E4H
ng
DELAY_3MS: MOV TMOD,#01H
MOV TH0,#HIGH(-3000)
MOV TL0,#LOW(-3000)
co
SETB TR0
JNB TF0,$
CLR TR0
an
CLR TF0
RET
th
END
ORG 2000H
MOV R7,#255
o
MOV A,R7
DIV AB
MOV R4,B
u
MOV B,#10
DIV AB
cu
ORL A,#0B0H
MOV DPTR,#0H
MOVX @DPTR,A
ACALL DELAY_3MS
MOV A,B
ORL A,#0D0H
MOVX @DPTR,A
ACALL DELAY_3MS
MOV A,R4
ORL A,#0E0H
MOVX @DPTR,A
ACALL DELAY_3MS
SJMP LOOP
CuuDuongThanCong.com https://fb.com/tailieudientucntt
JNB TF0,$
CLR TR0
CLR TF0
RET
END
Đếmsốlầnnhấnphìm P1.0
ORG 2000H
SETB P1.0
om
MOV R3,#30
MOV R4,#100
MOV R5,#100 ; khởiđộnggiátrịcủa R3,R4,R5tạo delay đểchống rung phím
.c
MOV A,#0
MOV DPTR,#0000H
SJMP LOOP
ng
LAP: INC A
MOV R7,A
co
LOOP: MOV B,#10
DIV AB
MOV R6,B
an
MOV B,#10
DIV AB
th
ORL A,#0B0H
MOVX @DPTR,A
ACALL DELAY_3MS
ng
MOV A,B
ORL A,#0D0H
MOVX @DPTR,A
o
ACALL DELAY_3MS
du
MOV A,R6
ORL A,#0E0H
MOVX @DPTR,A
u
ACALL DELAY_3MS
MOV A,R7
cu
CuuDuongThanCong.com https://fb.com/tailieudientucntt
CLR TR0
CLR TF0
RET
END
ORG 2000H
EN BIT P3.4
RS BIT P3.5
MAIN: MOV DPTR, #8000H
ACALL LCD_INIT
MOV A,#'H'
ACALL WRITE_CHAR
om
MOV A,#'e'
ACALL WRITE_CHAR
MOV A,#'l'
.c
ACALL WRITE_CHAR
MOV A,#'l'
ACALL WRITE_CHAR
MOV A,#'o'
ng
ACALL WRITE_CHAR
SJMP $
co
LCD_INIT: MOV A,#38H
CALL WRITE_CMD
MOV A,#0EH
an
CALL WRITE_CMD
MOV A,#06H
th
CALL WRITE_CMD
RET
ng
DJNZ R7, DL
du
RET
SETB RS
MOVX @DPTR, A
cu
SETB EN
CLR EN
RET
ORG 2000H
EN BIT P3.4
RS BIT P3.5
MAIN: MOV R5,#2
CuuDuongThanCong.com https://fb.com/tailieudientucntt
MOV DPTR, #8000H
ACALL LCD_INIT
MOV A,#'H'
ACALL WRITE_CHAR
MOV A,#'E'
ACALL WRITE_CHAR
MOV A,#'L'
ACALL WRITE_CHAR
MOV A,#'L'
ACALL WRITE_CHAR
MOV A,#'O'
ACALL WRITE_CHAR
TT: MOV R1,#11
MOV A,#18H : khớiđộngdịchtrái
LAP: ACALL WRITE_CMD
DL: ACALL WAIT_LCD
DJNZ R5,DL ; tạothớigian delay saumỗilầndịch
om
MOV R5,#2
DJNZ R1, LAP
MOV R1,#11
.c
MOV A,#1CH ; khớiđộngdịchphải
LAP2: ACALL WRITE_CMD
DL2: ACALL WAIT_LCD
DJNZ R5,DL2 ; tạothờigian delay saumỗilầndịch
ng
MOV R5,#2
DJNZ R1,LAP2
SJMP TT
co
LCD_INIT: MOV A, #38H
ACALL WRITE_CMD
an
MOV A, #0CH
ACALL WRITE_CMD
th
MOV A, #06H
ACALL WRITE_CMD
MOV A, #01H
ng
ACALL WRITE_CMD
MOV A, #8BH
ACALL WRITE_CMD
o
RET
du
DJNZ R6,$
DJNZ R7, LOOP
cu
RET
CuuDuongThanCong.com https://fb.com/tailieudientucntt
BÀI 4:THÍ NGHIỆM GIAO TIẾP QUA CỔNG NỐI TIẾP
THÍ NGHIỆM 1:Viếtchươngtrìnhphátchuỗikýtự “Hello, world” lênmáytính thong qua HyperTerminal vớitốcđộ 9600pbs
ORG 2000H
MOV TMOD,#20H
MOV TL1,#-3
MOV TH1,#-3
MOV SCON,#42H
SETB TR1
MOV DPTR,#MSG
LAP: CLR A
MOVC A,@A+DPTR
JZ KT
ACALL SEND
INC DPTR
SJMP LAP
om
KT: SJMP KT
MSG: DB 'HellO, world',0
SEND: JNB TI,SEND
.c
MOV SBUF,A
CLR TI
RET
END
ng
co
THÍ NGHIỆM 2:Viếtchươngtrìnhnhâncáckýtựtừmáytínhgửiđến EME-MC8 thông qua HyperTerminal (
bằngcáchgõcáckýtựtrênbànphímkhiđang ở trongchươngtrình HyperTerminal ) vàhiểnthịlên LCD
ORG 2000H
an
EN BIT P3.4
RS BIT P3.5
th
MOV TMOD,#20H
MOV TL1,#-3
MOV TH1,#-3
ng
MOV SCON,#52H
SETB TR1
MOV DPTR,#8000H
o
ACALL LCD_INIT
du
LAP:
ACALL RECEIVE
ACALL WRITE_CHAR
u
SJMP LAP
cu
LCD_INIT:
MOV A, #38H
ACALL WRITE_CMD
MOV A, #0EH
ACALL WRITE_CMD
MOV A, #06H
ACALL WRITE_CMD
MOV A,#01H
ACALL WRITE_CMD
RET
CuuDuongThanCong.com https://fb.com/tailieudientucntt
WRITE_CHAR: ACALL WAIT_LCD
SETB RS
MOVX @DPTR,A
SETB EN
CLR EN
RET
om
RET
END
.c
THÍ NGHIỆM 3:Viếtchươngtrìnhnhậnmộtkýtựtừcổngnốitiếphiểnthịlên LCD đồngthờiphátracổngnốitiếp. Tốcđộtùychọn
ORG 2000H
EN BIT P3.4
ng
RS BIT P3.5
MOV TMOD,#20H
MOV TL1,#-3
co
MOV TH1,#-3
MOV SCON,#52H
SETB TR1
an
MOV DPTR,#8000H
ACALL LCD_INIT
th
LAP:
ACALL RECEIVE
ACALL WRITE_CHAR
ng
ACALL SEND
SJMP LAP
o
du
LCD_INIT:
MOV A, #38H
ACALL WRITE_CMD
u
MOV A, #0EH
ACALL WRITE_CMD
cu
MOV A, #06H
ACALL WRITE_CMD
MOV A,#01H
ACALL WRITE_CMD
RET
CuuDuongThanCong.com https://fb.com/tailieudientucntt
WRITE_CMD: ACALL WAIT_LCD
CLR RS
MOVX @DPTR,A
SETB EN
CLR EN
RET
om
BÀI TẬP THÊM : Viếtchươngtrìnhnhậnkýtựtừcổngnốitiếp, đôngthớiphátracổngnốitiếp, vớiđiềukiện:
- Nếukýtựnhânđượclàsốthìxuấtra Led
.c
- Nếukýtựnhânđượclàchữ A-Z, a-z thìxuấtra LCD
- Nếukýtựnhậnđượclà Enter thìxuốnghàng , là ESC thìxóatrongmànhình LCD. Mã ASCII của Enter là 13, ESC là
27
ng
ORG 2000H
EN BIT P3.4
RS BIT P3.5
co
MOV TMOD,#20H
MOV TL1,#-3
MOV TH1,#-3
an
MOV SCON,#52H
SETB TR1
th
MOV R1,#0
MOV DPTR,#8000H
ACALL LCD_INIT
ng
LAP:
ACALL RECEIVE
CJNE A,#13,TT ; kiểmtraphímnhấn Enter
o
MOV A,#0C0H
du
ACALL WRITE_CMD
SJMP THOAT
TT: CJNE A,#27,TT1 ; kiểmtraphímnhấn ESC
u
MOV A,#01H
ACALL WRITE_CMD
cu
SJMP THOAT
TT1:
CJNE A,#30H,SO ; bắtđầukiểmtraphímnhấnlàsố
SO: JC THOAT
CJNE A,#3AH,CHU ; kếtthúckiểmtraphímnhấnlàsố
CHU: JC LED
CJNE A,#41H,KHAC ; bắtđầukiểmtraphímnhấnlàchữhoa
KHAC: JC THOAT
CJNE A,#5BH,HOA ; kếtthúckiểmtraphímnhấnlàchữhoa
HOA: JC NHO
CJNE A,#61H,KHAC1 ; bắtđầukiểmtraphímnhấnlàchữthường
KHAC1: JC THOAT
CJNE A,#7BH,THUONG ; kếtthúckiểmtraphímnhầnlàchữthường
THUONG: JC NHO
SJMP THOAT
NHO: MOV DPTR,#8000H
INC R1
CuuDuongThanCong.com https://fb.com/tailieudientucntt
CJNE R1,#17,XUONG ;
kiểmtranếuhiểnthịhếthàngđầutiênthìxuônghàngtrongmànhình LCD
XUONG: JC XUATLCD
PUSH ACC
MOV A,#0C0H
ACALL WRITE_CMD
POP ACC
MOV R1,#0
om
ACALL SEND
SJMP LAP
.c
LCD_INIT:
MOV A, #38H
ACALL WRITE_CMD
MOV A, #0EH
ng
ACALL WRITE_CMD
MOV A, #06H
ACALL WRITE_CMD
co
MOV A, #01H
ACALL WRITE_CMD
RET
an
RET
WRITE_CHAR:
o
ACALL WAIT_LCD
du
SETB RS
MOVX @DPTR,A
SETB EN
u
CLR EN
RET
cu
WRITE_CMD:
ACALL WAIT_LCD
CLR RS
MOVX @DPTR,A
SETB EN
CLR EN
RET
RECEIVE: JNB RI,RECEIVE
MOV A, SBUF
CLR RI
RET
SEND: JNB TI,SEND
MOV SBUF,A
CLR TI
RET
END
CuuDuongThanCong.com https://fb.com/tailieudientucntt
BÀI 5: THÍ NGHIỆM ĐIỀU KHIỂN ADC
ORG 2000H
LAP: MOV R1,#255
MOV DPTR,#4000H
MOV A,#0
MOVX @DPTR,A
ACALL DELAY_100US
MOVX A,@DPTR
LAP1: PUSH ACC
MOV DPTR,#0000H
MOV B,#10
DIV AB
MOV R7,B
om
MOV B,#10
DIV AB
ORL A,#0B0H
.c
MOVX @DPTR,A
ACALL DELAY_1MS
MOV A,B
ORL A,#0D0H
ng
MOVX @DPTR,A
ACALL DELAY_1MS
MOV A,R7
co
ORL A,#0E0H
MOVX @DPTR,A
ACALL DELAY_1MS
an
POP ACC
DJNZ R1,LAP1 ; tạothờigian delay
th
SJMP LAP
DJNZ R6,$
RET
o
RET
END
cu
ORG 2000H
RS BIT P3.5
EN BIT P3.4
MOV DPTR,#8000H
ACALL LCD_INIT
LAP: MOV DPTR,#4000H
MOV A,#0
MOVX @DPTR,A
ACALL DELAY_100US
MOVX A,@DPTR
MOV DPTR,#8000H
PUSH ACC
MOV A, #80H
ACALL WRITE_CMD
POP ACC
CuuDuongThanCong.com https://fb.com/tailieudientucntt
MOV B,#10
DIV AB
MOV R0,B
MOV B,#10
DIV AB
ORL A,#30H
ACALL WRITE_CHAR
MOV A,B
ORL A,#30H
ACALL WRITE_CHAR
MOV A,R0
ORL A,#30H
ACALL WRITE_CHAR
SJMP LAP
om
MOV A, #0CH
ACALL WRITE_CMD
MOV A, #04H
.c
ACALL WRITE_CMD
MOV A, #01H
ACALL WRITE_CMD
RET
ng
WAIT_LCD: MOV R7,#100
LOOP:
co
MOV R6, #250
DJNZ R6,$
DJNZ R7, LOOP
RET
an
WRITE_CHAR: SETB RS
th
MOVX @DPTR,A
SETB EN
CLR EN
ng
ACALL WAIT_LCD
RET
o
WRITE_CMD: CLR RS
du
MOVX @DPTR,A
SETB EN
CLR EN
u
ACALL WAIT_LCD
RET
cu
ORG 2000H
RS BIT P3.5
EN BIT P3.4
MOV DPTR,#8000H
ACALL LCD_INIT
LAP: MOV DPTR,#4000H
MOV A,#0
MOVX @DPTR,A
ACALL DELAY_100US
MOVX A,@DPTR
CuuDuongThanCong.com https://fb.com/tailieudientucntt
MOV DPTR,#8000H
ACALL CHIA
MOV A, #80H
ACALL WRITE_CMD
SJMP LAP
om
ACALL WRITE_CMD
RET
.c
WAIT_LCD: MOV R7,#100
LOOP: MOV R6, #250
DJNZ R6,$
DJNZ R7, LOOP
ng
RET
WRITE_CHAR: SETB RS
co
MOVX @DPTR,A
SETB EN
CLR EN
an
ACALL WAIT_LCD
RET
th
WRITE_CMD: CLR RS
MOVX @DPTR,A
ng
SETB EN
CLR EN
ACALL WAIT_LCD
o
RET
du
RET
cu
CuuDuongThanCong.com https://fb.com/tailieudientucntt
RET
END
ORG 2000H
LOOP: MOV R1,#8
MOV A,#00000001B
MOV DPTR,#CHARA
LAP: ACALL HT_COT
PUSH ACC
CLR A
MOVC A,@A+DPTR
ACALL HT_HANG
om
INC DPTR
POP ACC
RL A
.c
DJNZ R1, LAP
SJMP LOOP
CHARA: DB 03H, 0EDH, 0EEH, 0EEH, 0EDH, 03H, 0FFH, 0FFH
ng
HT_COT: PUSH DPH
PUSH DPL
co
MOV DPTR,# 0C000H
MOVX @DPTR,A
POP DPL
POP DPH
an
RET
th
MOVX @DPTR,A
ACALL DELAY_1ms
POP DPL
o
POP DPH
du
RET
u
DELAY_1ms:
cu
MOV R7,#5
DL: MOV R6,#100
DJNZ R6,$
DJNZ R7,DL
RET
END
THÍ NGHIỆM 2:Viếtchươngtrình con hiểnthịnội dung 8 ô nhớtừ 30H đến 37H. Dùngchươngtrình con đểhiểnthịchữ A, B
HT_ONHO:
MOV R1,#8
MOV A,#00000001B
MOV R0,#30H
LAP: ACALL HT_COT
PUSH ACC
CLR A
MOV A,@R0
ACALL HT_HANG
CuuDuongThanCong.com https://fb.com/tailieudientucntt
INC R0
POP ACC
RL A
DJNZ R1, LAP
RET
HT_COT:
PUSH DPH
PUSH DPL
MOV DPTR,# 0C000H
MOVX @DPTR,A
POP DPL
POP DPH
RET
HT_HANG:
PUSH DPH
PUSH DPL
om
MOV DPTR,# 0A000H
MOVX @DPTR,A
ACALL DELAY_1ms
.c
POP DPL
POP DPH
RET
DELAY_1ms:
ng
MOV R7,#5
DL: MOV R6,#100
DJNZ R6,$
co
DJNZ R7,DL
RET
an
ORG 2000H
MOV 30H,#03H
MOV 31H,#0EDH
ng
MOV 32H,#0EEH
MOV 33H,#0EEH
MOV 34H,#0EDH
o
MOV 35H,#03H
du
MOV 36H,#0FFH
MOV 37H,#0FFH
LOOP: ACALL HT_ONHO
u
SJMP LOOP
HT_ONHO:
cu
MOV R1,#8
MOV A,#00000001B
MOV R0,#30H
LAP: ACALL HT_COT
PUSH ACC
CLR A
MOV A,@R0
ACALL HT_HANG
INC R0
POP ACC
RL A
DJNZ R1, LAP
RET
HT_COT:
PUSH DPH
PUSH DPL
MOV DPTR,# 0C000H
CuuDuongThanCong.com https://fb.com/tailieudientucntt
MOVX @DPTR,A
POP DPL
POP DPH
RET
HT_HANG:
PUSH DPH
PUSH DPL
MOV DPTR,# 0A000H
MOVX @DPTR,A
ACALL DELAY_1ms
POP DPL
POP DPH
RET
DELAY_1ms:
MOV R7,#5
DL: MOV R6,#100
DJNZ R6,$
om
DJNZ R7,DL
RET
END
.c
Dùngchươngtrình con trênhiểnthịchữ B
ORG 2000H
ng
MOV 30H,#00H
MOV 31H,#76H
MOV 32H,#76H
co
MOV 33H,#76H
MOV 34H,#89H
MOV 35H,#0FFH
an
MOV 36H,#0FFH
MOV 37H,#0FFH
th
MOV R1,#8
MOV A,#00000001B
MOV R0,#30H
o
PUSH ACC
CLR A
MOV A,@R0
u
ACALL HT_HANG
INC R0
cu
POP ACC
RL A
DJNZ R1, LAP
RET
HT_COT:
PUSH DPH
PUSH DPL
MOV DPTR,# 0C000H
MOVX @DPTR,A
POP DPL
POP DPH
RET
HT_HANG:
PUSH DPH
PUSH DPL
MOV DPTR,# 0A000H
MOVX @DPTR,A
CuuDuongThanCong.com https://fb.com/tailieudientucntt
ACALL DELAY_1ms
POP DPL
POP DPH
RET
DELAY_1ms:
MOV R7,#5
DL: MOV R6,#100
DJNZ R6,$
DJNZ R7,DL
RET
END
ORG 2000H
TT: MOV R4,#10
MOV R0,#0
om
MOV DPTR,#CHAR
MOV R5,#32
LOOP1: MOV R2,DPH
.c
MOV R3,DPL
LOOP: MOV DPH,R2
MOV DPL,R3
MOV R1,#8
ng
MOV A,#00000001B
LAP: ACALL HT_COT
PUSH ACC
co
CLR A
MOVC A,@A+DPTR
ACALL HT_HANG
an
INC DPTR
POP ACC
th
RL A
DJNZ R1, LAP
DJNZ R4,LOOP
ng
MOV R4,#10
INC R0
MOV A,R0
o
MOV DPTR,#CHAR
du
ADD A,DPL
MOV DPL,A
DJNZ R5,LOOP1
u
SJMP TT
CHAR: DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,03H, 0EDH, 0EEH, 0EEH, 0EDH,
cu
HT_COT:
PUSH DPH
PUSH DPL
MOV DPTR,#0C000H
MOVX @DPTR,A
POP DPL
POP DPH
RET
HT_HANG:
PUSH DPH
PUSH DPL
MOV DPTR,#0A000H
MOVX @DPTR,A
ACALL DELAY_1ms
POP DPL
CuuDuongThanCong.com https://fb.com/tailieudientucntt
POP DPH
RET
DELAY_1ms:
MOV R7,#5
DL: MOV R6,#100
DJNZ R6,$
DJNZ R7,DL
RET
END
ORG 2000H
om
CLR A
MOV TMOD,#10H
MOV DPTR,#0E000H
.c
LAP: ACALL CHIEUTHUAN
ACALL DELAY_2S
ACALL NGHI
ACALL DELAY_2S
ng
ACALL CHIEUNGHICH
ACALL DELAY_2S
ACALL NGHI
co
ACALL DELAY_2S
SJMP LAP
CHIEUTHUAN:
an
SETB ACC.0
CLR ACC.1
th
MOVX @DPTR,A
RET
NGHI:
ng
CLR ACC.0
CLR ACC.1
MOVX @DPTR,A
o
RET
du
CHIEUNGHICH:
CLR ACC.0
SETB ACC.1
u
MOVX @DPTR,A
RET
cu
DELAY_2S:
MOV R7,#40
LOOP: MOV TL1,#LOW(-50000)
MOV TH1,#HIGH(-50000)
SETB TR1
JNB TF1,$
CLR TF1
CLR TR1
DJNZ R7, LOOP
RET
END
ORG 2000H
LJMP MAIN
ORG 200BH
LJMP ISR_T0
CuuDuongThanCong.com https://fb.com/tailieudientucntt
ORG 201BH
LJMP ISR_T1
MAIN:
MOV TMOD,#11H
CLR A
SETB TF0
MOV IE,#82H
MOV DPTR,#0E000H
LAP: MOVX @DPTR,A
SJMP LAP
ISR_T0:
SETB ACC.0
CLR TR0
MOV TL0,#LOW(-1000)
MOV TH0,#HIGH(-1000)
SETB TR0
CLR TR1
om
MOV TL1,#LOW(-500)
MOV TH1,#HIGH(-500)
SETB TR1
.c
SETB ET1
RETI
ISR_T1:
CLR TR1
ng
CLR ACC.0
CLR ET1
RETI
co
END
ORG 2000H
LJMP MAIN
ORG 200BH
ng
LJMP ISR_T0
ORG 201BH
o
LJMP ISR_T1
du
MAIN:
MOV TMOD,#11H
MOV R7,#50
u
MOV R6,#100
cu
MOV R5,#0
CLR A
SETB TF0
MOV IE,#82H
MOV DPTR,#0E000H
LAP: MOVX @DPTR,A
SJMP LAP
ISR_T0:
SETB ACC.0
CLR TR0
MOV TL0,#LOW(-1000)
MOV TH0,#HIGH(-1000)
SETB TR0
DJNZ R6,TT
MOV R6,#100
DJNZ R7,TT
CuuDuongThanCong.com https://fb.com/tailieudientucntt
MOV R7,#50
MOV R6,#100
INC R5
TT: CJNE R5,#0,KHAC20
CLR TR1
MOV TL1,#LOW(-200)
MOV TH1,#HIGH(-200)
SETB TR1
SJMP EXIT
KHAC20: CJNE R5,#1,KHAC50
CLR TR1
MOV TL1,#LOW(-500)
MOV TH1,#HIGH(-500)
SETB TR1
SJMP EXIT
om
KHAC50: CJNE R5,#2,KHAC80
CLR TR1
MOV TL1,#LOW(-800)
.c
MOV TH1,#HIGH(-800)
SETB TR1
SJMP EXIT
ng
KHAC80: MOV R5,#0
SJMP TT
EXIT: SETB ET1
co
RETI
ISR_T1:
an
CLR TR1
CLR ACC.0
th
CLR ET1
RETI
ng
END
CuuDuongThanCong.com https://fb.com/tailieudientucntt