TRƯỜNG CAO ĐẲNG NGHỀ VIỆT NAM-SINGAPORE
Khoa: Điện tử
CHƯƠNG 1: GIAO TIẾP LED ĐƠN Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 1
Bài mẫu số 101: Chương trình điều khiển 8 LED sáng tắt dùng port 0
Lưu tên file “BAI_101_CHOPTAT_8LED”
a.Mạch điện:
b.Lưu đồ
0000HLB: MOV P0,#0H
MOV P1,#0H
CALL DELAY100MS
MOV P0,#0FFH
MOV P1,#0FFH
CALL DELAY100MS
JMP LB
$INCLUDE(TV_DELAY.ASM)
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Bài thực hành 103: Chương trình điều khiển 24 LED sáng tắt dùng port 0,1,2
Lưu tên file “BAI_103_CHOPTAT_24LED”
Bài thực hành 104: Chương trình điều khiển 32 LED sáng tắt dùng port 0,1,2,3
Lưu tên file “BAI_104_CHOPTAT_32LED”
Bài mẫu 105: Chương trình điều khiển 8 LED sáng dần tắt hết dùng port 0
Lưu tên file “BAI_105_SDTH_8LED_C1”
a.Chương trình
ORG
0000H
JMP LB
$INCLUDE(TV_DELAY.ASM)
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Trong cách viết trên, ta thấy chương trình dễ hiểu nhưng khá dài.Hãy xem cách viết thứ 2 dưới đây
Bài mẫu 105: Chương trình điều khiển 8 LED sáng dần tắt hết dùng port 0
Lưu tên file “BAI_105_SDTH_8LED_C2”
a.Lưu đồ:
b.Chương trình
ORG 0000H
LB:
MOV P0,#00H
LB1: CALL DELAY100MS
SETB C
CHƯƠNG 1: GIAO TIẾP LED ĐƠN Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 4 MOV
A,P0
RLC A
MOV P0,A
JNC LB1
MOV A,P0
RLC A
CHƯƠNG 1: GIAO TIẾP LED ĐƠN Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 5 MOV
P0,A
RET
$INCLUDE(TV_DELAY.ASM)
END
c. Tiến hành biên dịch và nạp.
d.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Bài mẫu 107: Chương trình điều khiển 16 LED sáng dần tắt dần dùng port 0,1
Lưu tên file “BAI_107_SDTD_16LED”
a.Chương trình
ORG
0000H
LB:
MOV P0,#00H
MOV P1,#00H
LB1: CALL DELAY100MS
Lưu tên file “BAI_109_SDTD_TRAISANGPHAI_32LED”
CHƯƠNG 1: GIAO TIẾP LED ĐƠN Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 6
Bài thực hành 110: Chương trình điều khiển 32 LED sáng dần tắt hết từ ngoài vào dùng 4 port
Lưu tên file “BAI_110_SDTH_NGOAIVAOTRONG_32LED”
Bài thực hành 111: Chương trình điều khiển 32 LED sáng dần tắt hết từ trong ra dùng 4 port
Lưu tên file “BAI_111_SDTH_TRONGRANGOAI_32LED”
Bài thực hành 112: Chương trình điều khiển 32 LED sáng dần tắt dần từ ngoài vào dùng 4 port
Lưu tên file “BAI_112_SDTD_NGOAIVAOTRONG_32LED”
Bài thực hành 113: Chương trình điều khiển 32 LED sáng dần tắt dần từ trong ra dùng 4 port
Lưu tên file “BAI_113_SDTD_TRONGRANGOAI_32LED”
Bài thực hành 114: Chương trình điều khiển 1 LED sáng chạy từ phải sang trái
Lưu tên file “BAI_114_DSDC_PHAISANGTRAI_8LED”
Bài thực hành 115: Chương trình điều khiển 1 LED sáng chạy từ phải sang trái
Lưu tên file “BAI_115_DSDC_PHAISANGTRAI_32LED”
Bài thực hành 116: Chương trình điều khiển 1 LED sáng chạy từ trái sang phải
Lưu tên file “BAI_116_DSDC_TRAISANGPHAI_32LED”
Bài mẫu 117: Chương trình điều khiển 8 LED sáng dồn dùng port 0
Lưu tên file “BAI_117_SDON_8LED_C1”
a.Lưu đồ:
DB 01000000B
DB 10000000B
;LAN THU HAI LA 7 BYTE
DB 10000001B
DB 10000010B
DB 10000100B
DB 10001000B
DB 10010000B
DB 10100000B
DB 11000000B
;LAN THU BA LA 6 BYTE
DB 11000001B
DB 11000010B
DB 11000100B
DB 11001000B
DB 11010000B
DB 11100000B
;LAN THU TU LA 5 BYTE
DB 11100001B
DB 11100010B
DB 11100100B
DB 11101000B
DB 11110000B
;LAN THU NAM LA 4 BYTE
DB 11110001B
DB 11110010B
DB 11110100B
DB 11111000B
;LAN THU SAU LA 3 BYTE
DB 11111001B
DB 0E1H,0E2H,0E4H,0E8H,0F0H
DB 0F1H,0F2H,0F4H,0F8H
DB 0F9H,0FAH,0FCH
DB 0FDH,0FEH
DB 0FFH
CHƯƠNG 1: GIAO TIẾP LED ĐƠN Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 9
Bài mẫu 118: Chương trình điều khiển 8 LED sáng dồn dùng port 0
Lưu tên file “BAI_118_SDON_8LED_C2”
a.Lưu đồ:
b.Chương trình
X0
EQU
20H
Y0 EQU 30H
DEM EQU 40H
TAM EQU 41H
LED0 EQU P0
ORG 0000H
LB: MOV LED0,#00H
quay lại chương trình chỉnh sửa và làm lại.
Bài mẫu 119: Chương trình điều khiển 16 LED sáng dồn dùng port 0,1
Lưu tên file “BAI_119_SDON_16LED”
a.Chương trình
X0
EQU
20H
X1 EQU 21H
Y0 EQU 30H
Y1 EQU 31H
DEM EQU 40H
TAM EQU 41H
LED0 EQU P0
LED1 EQU P1
ORG 0000H
LB: MOV LED0,#00H
MOV LED1,#00H
CALL DELAY50MS
MOV DEM,#16
LB1: MOV X0,LED0
MOV Y1,A
DJNZ TAM,LB2
DJNZ DEM,LB1
JMP LB
$INCLUDE(TV_DELAY.ASM)
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Bài thực hành 120: Chương trình điều khiển 32 LED sáng dồn từ phải sang trái
Lưu tên file “BAI_120_SDON_PST_32LED”
Bài thực hành 121: Chương trình điều khiển 32 LED sáng dồn từ trái sang phải
Lưu tên file “BAI_121_SDON_TSP_32LED”
Bài thực hành 122: Chương trình điều khiển 32 LED sáng dồn từ ngoài vào
Lưu tên file “BAI_122_SDON_TNV_32LED”
Bài thực hành 123: Chương trình điều khiển 32 LED sáng dồn từ trong ra
Lưu tên file “BAI_123_SDON_TTR_32LED”
Bài mẫu 124: Chương trình điều khiển 8 LED sáng tắt dùng định thời timer 0 – định thời 65536uS
Lưu tên file “BAI_124_CHOPTAT_TIMER”
a.Chương trình
ORG
0000H
lượng thời gian mà timer 0 đếm được là 65536uS
Bài mẫu 125: Chương trình điều khiển 8 LED sáng tắt dùng định thời timer 0 – định thời 50000uS
Lưu tên file “BAI_125_CHOPTAT_TIMER”
a.Chương trình
ORG
0000H
MOV TMOD,#01
LB: MOV P0,#00H
CALL DELAY50MS
MOV P0,#0FFH
CALL DELAY50MS
JMP LB
DELAY50MS:
MOV TL0,#LOW(-50000)
MOV TH0,#HIGH(-50000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Giải thích:
b.Lưu đồ
c.Chương trình:
ORG
0000H
LB: MOV P0,#0C0H ;SO 0
CALL DELAY100MS
MOV P0,#0F9H ;SO 1
CALL DELAY100MS
MOV P0,#0A4H ;SO 2
CALL DELAY100MS
MOV P0,#0B0H ;SO 3
CHƯƠNG 2: GIAO TIẾP LED 7 ĐOẠN RỜI Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 15 CALL
DELAY100MS MOV P0,#099H ;SO 4
a.Chương trình
DEM
EQU
R2
ORG 0000H
LB: MOV DPTR,#MA7DOAN
MOV DEM,#0
LB1: MOV A,DEM
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY100MS
INC DEM
CJNE DEM,#10,LB1
JMP LB
$INCLUDE(TV_DELAY.ASM)
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại
Bài thực hành 203: Chương trình điều khiển 1 LED 7 đoạn rời đếm từ 9 xuống 0 dùng port 0
Lưu tên file “BAI_203_DEM_9_DEN_0”
CJNE DEM,#100,LB1
JMP LB
HEXTOBCD:
MOV A,DEM
MOV B,#10
DIV AB
RET
GIAIMA_HTHI:
MOVC A,@A+DPTR
MOV P1,A
MOV A,B
MOVC A,@A+DPTR
MOV P0,A
RET
$INCLUDE(TV_DELAY.ASM)
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
CHƯƠNG 2: GIAO TIẾP LED 7 ĐOẠN RỜI Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 18
Bài thực hành 205: Chương trình điều khiển 2 LED 7 đoạn rời đếm từ 00 đến 25 dùng port 0,1
Lưu tên file “BAI_205_DEM_00_DEN_25”
Bài thực hành 206: Chương trình điều khiển 2 LED 7 đoạn rời đếm từ 05 đến 25 dùng port 0,1
MOV A,DEM
MOV B,#10
DIV AB
MOV 20H,B
MOV B,#10
DIV AB
MOV 21H,B
MOV 22H,A
CHƯƠNG 2: GIAO TIẾP LED 7 ĐOẠN RỜI Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 19 RET
GIAIMA_HTHI:
MOV A,20H
MOVC A,@A+DPTR
MOV P0,A
MOV A,21H
MOVC A,@A+DPTR
MOV P1,A
MOV A,22H
MOVC A,@A+DPTR
MOV P2,A
RET
Thực hành vi điều khiển 20
LB:
CALL
HEXTOBCD
CALL GIAIMA_HTHI
JMP LB
HEXTOBCD:
MOV A,TL0
MOV B,#10
DIV AB
MOV 20H,B
MOV B,#10
DIV AB
MOV 21H,B
MOV 22H,A
RET
GIAIMA_HTHI:
MOV A,20H
MOVC A,@A+DPTR
MOV P0,A
MOV A,21H
MOVC A,@A+DPTR
Bài mẫu số 301: Chương trình điều khiển 8 LED 7 đoạn quét sáng 8 số từ 0 đến 7
Lưu tên file “BAI_301_HTHI_0_DEN_7”
a.Mạch điện:
b.Lưu đồ
c.Chương trình:
ANODEEQU
P1
SSEG EQU P2
ORG 0000H
LB: MOV SSEG,#0C0H
CLR ANODE.0
CALL DELAYX
SETB ANODE.0
MOV SSEG,#0F9H
CLR ANODE.1
CALL DELAYX
SETB ANODE.1
MOV SSEG,#0A4H
CLR ANODE.2
CALL DELAYX
MOV SSEG,#0F8H
CLR ANODE.7
CALL DELAYX
SETB ANODE.7
JMP LB
DELAYX:
CALL DELAY1MS
RET
$INCLUDE(TV_DELAY.ASM)
END
d. Tiến hành biên dịch và nạp.
e.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Bài mẫu số 302: Chương trình điều khiển 8 LED 7 đoạn quét sáng 8 số từ 0 đến 7 –cách 2
Lưu tên file “BAI_302_HTHI_0_DEN_7_C2”
a.Lưu đồ
a.Chương trình ANODE
EQU
P1
SSEG EQU P2
DEM EQU R4
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Bài mẫu 303: Chương trình điều khiển 8 LED 7 đoạn quét đếm giây từ 00 đến 59 hiển thị trên 2 led
Lưu tên file “BAI_303_DEM_GIAY”
a.Lưu đồ:
a.Chương trình
GIAY
EQU
R1
SSEG EQU P2
ANODE EQU P1
ORG 0H
MOV DPTR,#MA7DOAN
CHƯƠNG 3: GIAO TIẾP LED 7 ĐOẠN THEO PP QUÉT Khoa điện tử - Trường cao đẳng nghề Việt Nam Singapore
Thực hành vi điều khiển 24
LB:
MOV GIAY,#00
LB1:
CALL HEXTOBCD
CALL GIAIMA
CALL DELAY_HTHI
CALL DELAY1MS
SETB ANODE.1
RET
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H
$INCLUDE(TV_DELAY.ASM)
END
b. Tiến hành biên dịch và nạp.
c.Quan sát kết quả hiển thị của chương trình, nếu kết quả không đúng yêu cầu đề bài thì phải
quay lại chương trình chỉnh sửa và làm lại.
Bài thực hành 304: Chương trình điều khiển 8 LED 7 đoạn quét đếm thời gian từ 00 đến 99 hiển thị
trên 2 led
Lưu tên file “BAI_304_DEM_00_99”
Bài thực hành 305: Chương trình điều khiển 8 LED 7 đoạn quét đếm thời gian từ 65 đến 00 hiển thị
trên 2 led
Lưu tên file “BAI_305_DEM_65_00” Bài mẫu 306: Chương trình thư viện có chức năng giải mã, hiển thị phục vụ cho 8 LED 7 đoạn quét