Tải bản đầy đủ (.pdf) (189 trang)

CHƯƠNG TRÌNH VI ĐIỀU KHIỂN pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.17 MB, 189 trang )





CHƯƠNG
TRÌNH VI
ĐIỀU KHIỂN
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 1




;**************************************************************************
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 2
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7AD7
AD6


AD5
AD4
AD3
AD2
AD1
AD0
AD3
AD2
AD1
AD0 QA
QB
QC
QD
QE
QF
QG
AD5
AD4
QA
QB
QC
QD
QE
QF
QG
QA
QB
QC
QD
QE

QF
QG
AD6
AD7
QA
QB
QC
QD
QE
QF
QG
AD6
AD7
AD5
AD4
QA
QB
QC
QD
QE
QF
QG
XTAL2
18
XTAL1
19
ALE
30
EA
31

PSEN
29
RST
9
P0.0/AD0
39
P0.1/AD1
38
P0.2/AD2
37
P0.3/AD3
36
P0.4/AD4
35
P0.5/AD5
34
P0.6/AD6
33
P0.7/AD7
32
P2.7/A15
28
P2.0/A8
21
P2.1/A9
22
P2.2/A10
23
P2.3/A11
24

P2.4/A12
25
P2.5/A13
26
P2.6/A14
27
P1.0
1
P1.1
2
P1.2
3
P1.3
4
P1.4
5
P1.5
6
P1.6
7
P1.7
8
P3.0/RXD
10
P3.1/TXD
11
P3.2/INT0
12
P3.3/INT1
13

P3.4/T0
14
P3.7/RD
17
P3.6/WR
16
P3.5/T1
15
U1
80C51
R0
10k
C103
10u
X1
12MHz
C101
30p
C102
30p
VCC
TUYEN DUONG A
A
7
B
1
C
2
D
6

LT
3
BI
4
LE/STB
5
QA
13
QB
12
QC
11
QD
10
QE
9
QF
15
QG
14
U2
4511
VCC
VCC
2
3
4
5
6
7

8
9
1
DRT1
10K
VCC
2
3
4
5
6
7
8
9
1
DRT2
10K
Q6
2N2369
Q1
2N2369
Q2
2N2369
Q3
2N2369
Q4
2N2369
Q5
2N2369
TUYEN DUONG BEN B1 TUYEN DUONG BEN A2TUYEN DUONG BEN A1 TUYEN DUONG BEN B2

TUYEN DUONG B
VCC
R1
100
R2
4k7
R4
4k7
R3
4k7
R5
4k7
R6
4k7
R7
4k7

CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 3
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 4




CHƯƠNG TRÌNH CHẠY HAI CHẾ ĐỘ AUTO VÀ HANDDY





;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan
;Nguoi viet :VUONG VAN HUNG
;Ngay viet :20/06/2008

;===================================================

TGA DATA 7CH
CHUCA DATA 2EH
DONVIA DATA 7DH
TGB DATA 7EH
DONVIB DATA 7FH
CHUCB DATA 2FH

;===================================================
ORG 0000H

INIT:
MOV TMOD,#01H
MOV P1,#00H
;===================================================
;Chuong trinh chinh
MAIN:
;****************************************************
; Do A va Xanh b sang

;***************************************************
DAXB_AUTO:
CLR P1.3
CLR P1.1
MOV TGA,#20
MOV TGB,#17
SETB P1.0
SETB P1.5
;==============================
LAPXB:
JNB P3.0,DAXB_HANDDY ; neu p3.0 o muc thap (0) thi chay Auto
CALL DELAY1S ; con p3.0 o muc cao (1) thi chay Handdy
DEC TGA
DJNZ TGB,LAPXB
;=================================================
; Do A va vang B sang
;************************************************
DAVB_AUTO:
CLR P1.5
SETB P1.4
MOV TGB,#3
;=====================================
LAPVB:
JNB P3.0,XADB_HANDDY ; neu p3.0 o muc thap (0) thi chay Auto
CALL DELAY1S ; con p3.0 o muc cao (1) thi chay Handdy
DEC TGA
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3

Trang 5
DJNZ TGB,LAPVB
;=============================================
; Xanh A va Do B sang
;*************************************************
XADB_AUTO:
CLR P1.0
CLR P1.4
SETB P1.2
SETB P1.3
MOV TGA,#26
MOV TGB,#30
;==============================
LAPXA:
JNB P3.0,XADB_HANDDY ; neu p3.0 o muc thap (0) thi chay Handdy
CALL DELAY1S ; con p3.0 o muc cao (1) thi chay AuTo
DEC TGB
DJNZ TGA,LAPXA
;======================================
;Vang A va Do B sang
;*************************************************
VADB_AUTO:
CLR P1.2
SETB P1.1
MOV TGA,#4
;=============================
LAPVA:
JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 o muc cao (1) thi chay Auto
CALL DELAY1S ;||Î con p3.0 o muc thap (0) thi chay Handdy
DEC TGB

DJNZ TGA,LAPVA
LJMP MAIN
;************************************************************
HANDDY:
;============================
DAXB_HANDDY:
MOV P0,#0FFH ; Khong cho hien thoi gian
SETB P1.0 ;Do A sang
SETB P1.5 ; Xanh B sang
CLR P1.3 ;Tat Do B
CLR P1.4 ;Tat Vang B
CLR P1.2 ;Tat Xanh A
JB P3.0,DAXB_AUTO ;||=>neu p3.0 = 0 thi Chay Handdy
JB P3.1,DAXB_HANDDY ;||=> neu p3.0 = 1 thi chay AUTO
;||Îneu p3.1 = 0 thi nhay XADB_HANDDY
;||Îneu p3.1 = 1 thi nhay DAXB_HANDDY
;====================================================================

XADB_HANDDY:
MOV P0,#0FFH
SETB P1.2
SETB P1.3
CLR P1.1
CLR P1.0
CLR P1.5
JB P3.0,XADB_AUTO ; ||=>neu p3.0 = 0 thi Chay Handdy
JNB P3.1,XADB_HANDDY ; ||=>neu p3.0 = 1 thi chay AUTO
JMP DAXB_HANDDY ;||Îneu p3.1 = 1 thi nhay DAXB_HANDDY
;||Îneu p3.1 = 0 thi nhay XADB_HANDDY
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON



VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 6

;=============================================
HIENTHI:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
MAHOA:
MOV A,TGA
MOV B,#10
DIV AB
ADD A,#10110000B
MOV CHUCA,A
MOV A,B
ADD A,#01110000B
MOV DONVIA,A
MOV A,TGB
MOV B,#10
DIV AB

ADD A,#11100000B
MOV CHUCB,A
MOV A,B
ADD A,#11010000B
MOV DONVIB,A
RET
;================================================

DELAY1S:
MOV R0,#40
LAPDELAY1S:
CALL HIENTHI
CALL DELAY50MS
DJNZ R0,LAPDELAY1S
RET
;===============================================
DELAY50MS:
MOV TH0,#HIGH(-25000)
MOV TL0,#LOW(-25000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
;=======================================
DELAY:
LOOP1:
MOV R1,#10
LOOP2:
MOV R2,#200

DJNZ R2,$
DJNZ R1,LOOP2
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 7
RET
;===================================================

END
;===================================================

*****************************************************************





CHƯƠNG TRÌNH 2:


;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan
;Nguoi viet :VUONG VAN HUNG
;Ngay viet :20/06/2008

;===================================================
DOA BIT P1.0
VANGA BIT P1.1
XANHA BIT P1.2

DOB BIT P1.3
VANGB BIT P1.4
XANHB BIT P1.5
TGA DATA 7CH
CHUCA DATA 2EH
DONVIA DATA 7DH
TGB DATA 7EH
DONVIB DATA 7FH
CHUCB DATA 2FH

;===================================================
ORG 0000H

INIT:
MOV TMOD,#01H
MOV P1,#00H
;===================================================
;Chuong trinh chinh
MAIN:
;****************************************************
; Do A va Xanh b sang
;***************************************************
DAXB_AUTO:
CLR DOB
CLR VANGA
MOV TGA,#20
MOV TGB,#17
SETB DOA
SETB XANHB
;==============================

LAPXB:
JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 =1 thi chay Auto
CALL DELAY1S ;||Î con p3.0 =0 thi chay Handdy
DEC TGA
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 8
DJNZ TGB,LAPXB
;=================================================
; Do A va vang B sang
;************************************************
DAVB_AUTO:
CLR XANHB
MOV TGB,#3
SETB VANGB

;=====================================
LAPVB:
JNB P3.0,XADB_HANDDY ;||Î neu p3.0 =1 thi chay Auto
CALL DELAY1S ;||Î con p3.0 =0 thi chay Handdy
DEC TGA
DJNZ TGB,LAPVB
;=============================================
; Xanh A va Do B sang
;*************************************************
XADB_AUTO:
CLR DOA
CLR VANGB

MOV TGA,#26
MOV TGB,#30
SETB XANHA
SETB DOB

;==============================
LAPXA:
JNB P3.0,XADB_HANDDY
CALL DELAY1S
DEC TGB
DJNZ TGA,LAPXA
;======================================
;Vang A va Do B sang
;*************************************************
VADB_AUTO:
CLR XANHA
MOV TGA,#4
SETB VANGA

;=============================
LAPVA:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S
DEC TGB
DJNZ TGA,LAPVA
LJMP MAIN
;************************************************************
HANDDY:
;============================
DAXB_HANDDY:

MOV P0,#0FFH ; Khong cho hien thoi gian
SETB DOA ;Do A sang
SETB XANHB ; Xanh B sang
CLR DOB ;Tat Do B
CLR VANGB ;Tat Vang B
CLR XANHA ;Tat Xanh A
JB P3.0,DAXB_AUTO ; ||Îneu p3.0 = 0 thi Chay Handdy
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 9
JB P3.1,DAXB_HANDDY ; ||Îneu p3.0 = 1 thi chay AUTO
;|| =>neu p3.1 = 1 thi nhay DAXB_HANDDY
;|| =>neu p3.1 = 0 thi nhay XADB_HANDDY
;=======================================
XADB_HANDDY:
MOV P0,#0FFH
SETB XANHA
SETB DOB
CLR VANGA
CLR DOA
CLR XANHB ; || Îneu p3.0 = 1 thi chay AUTO
JB P3.0,XADB_AUTO ; ||Î neu p3.0 = 0 thi Chay Handdy
JNB P3.1,XADB_HANDDY ; || =>neu p3.1 = 1 thi nhay DAXB_HANDDY
JMP DAXB_HANDDY ; || =>neu p3.1 = 0 thi nhay XADB_HANDDY

;=============================================
HIENTHI:
CALL MAHOA

MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
MAHOA:
MOV A,TGA
MOV B,#10
DIV AB
ADD A,#10110000B
MOV CHUCA,A
MOV A,B
ADD A,#01110000B
MOV DONVIA,A
MOV A,TGB
MOV B,#10
DIV AB
ADD A,#11100000B
MOV CHUCB,A
MOV A,B
ADD A,#11010000B
MOV DONVIB,A
RET
;================================================


DELAY1S:
MOV R0,#40
LAPDELAY1S:
CALL HIENTHI
CALL DELAY50MS
DJNZ R0,LAPDELAY1S
RET
;===============================================
DELAY50MS:
MOV TH0,#HIGH(-25000)
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 10
MOV TL0,#LOW(-25000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
;=======================================
DELAY:
LOOP1:
MOV R1,#10
LOOP2:
MOV R2,#200
DJNZ R2,$
DJNZ R1,LOOP2
RET

;===================================================

END
;====================================================

**************************************************************



CHƯƠNG TRÌNH CHẠY CHẾ ĐỘ AUTO




;CHUONG TRINH DEN GIAO THONG CHAY AUTO CO HIEN THI THOI GIAN
;Nguoi viet :VUONG VAN HUNG
;Ngay viet :20/06/2008

;===================================================

TGA DATA 7CH
CHUCA DATA 2EH
DONVIA DATA 7DH
TGB DATA 7EH
DONVIB DATA 7FH
CHUCB DATA 2FH

;===================================================
;Chuong trinh chinh


ORG 0000H
INIT:
MOV TMOD,#01H
MOV P1,#0H

MAIN:
MOV TGA,#30
MOV TGB,#25
SETB P1.0
SETB P1.5
;===============================
;Thoi gian cua Do A va Xanh B
LAPXB:
CALL DELAY1S
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 11
DEC TGA
DJNZ TGB,LAPXB
CLR P1.5
SETB P1.4
MOV TGB,#5
;==============================
;Thoi gian cua Do A va Vang B
LAPVB:
CALL DELAY1S
DEC TGA
DJNZ TGB,LAPVB

CLR P1.0
CLR P1.4
SETB P1.2
SETB P1.3
MOV TGA,#18
MOV TGB,#20
;==============================
;Thoi gian cua Do B va Xanh A
LAPXA:
CALL DELAY1S
DEC TGB
DJNZ TGA,LAPXA
CLR P1.2
SETB P1.1
MOV TGA,#2
;==============================
;Thoi gian cua Do B va Vang A
LAPVA:
CALL DELAY1S
DEC TGB
DJNZ TGA,LAPVA
CLR P1.1
CLR P1.3
LJMP MAIN
;=================================================
HIENTHI:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA

CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
MAHOA:
MOV A,TGA
MOV B,#10
DIV AB
ADD A,#10110000B
MOV CHUCA,A
MOV A,B
ADD A,#01110000B
MOV DONVIA,A
MOV A,TGB
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 12
MOV B,#10
DIV AB
ADD A,#11100000B
MOV CHUCB,A
MOV A,B
ADD A,#11010000B
MOV DONVIB,A
RET

;================================================

DELAY1S:
MOV R0,#40
LAPDELAY1S:
CALL HIENTHI
CALL DELAY40MS
DJNZ R0,LAPDELAY1S
RET
;===============================================
DELAY40MS:

MOV TH0,#HIGH(-25000)
MOV TL0,#LOW(-25000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
;============================
DELAY:
LOOP1:
MOV R1,#10
LOOP2:
MOV R2,#200
DJNZ R2,$
DJNZ R1,LOOP2
RET
;===================================================


END
**********************************************************


CHƯƠNG TRÌNH HOÀN HIỆN HƠN 1:


;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan .
; khi TGA hay TGB nho hon 10 thi chi co LED hang don vi sang
;Nguoi viet :VUONG VAN HUNG
;Ngay viet :20/06/2008

;===================================================

TGA DATA 7CH
CHUCA DATA 2EH
DONVIA DATA 7DH
TGB DATA 7EH
DONVIB DATA 7FH
CHUCB DATA 2FH
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 13

;===================================================
ORG 0000H

INIT:

MOV TMOD,#01H
MOV P1,#00H
;===================================================
;Chuong trinh chinh
MAIN:
;****************************************************
; Do A va Xanh b sang
;***************************************************
DAXB_AUTO:
CLR P1.3 ;Tat Do B
CLR P1.1 ;Tat Vang A
MOV TGA,#20
MOV TGB,#17
MOV R6,#8
SETB P1.0 ; do a sang
SETB P1.5 ; Xanh B Sang
;==============================
LAPXB:

CALL DELAY1S_1
DEC TGA
DEC TGB
JNB P3.0,DAXB_HANDDY ;||Î Neu p3.0 = 0 thi chay Handdy
DJNZ R6,LAPXB ;||Î con p3.0 = 1 thi chay AUTO
MOV R6,#3
LAPXB1:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_3
DEC TGA
DEC TGB

DJNZ R6,LAPXB1
LAPXB2:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_4
DEC TGA
DJNZ TGB,LAPXB2

;=================================================
; Do A va vang B sang
;************************************************
DAVB_AUTO:
CLR P1.5
SETB P1.4
MOV TGB,#3
;=====================================
LAPVB:
JNB P3.0,XADB_HANDDY ;||Î neu p3.0 o muc thap (0) thi chay Auto
CALL DELAY1S_4 ;||Î con p3.0 o muc cao (1) thi chay Handdy
DEC TGA
DJNZ TGB,LAPVB
CALL DELAY1S_4
;=============================================
; Xanh A va Do B sang
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 14
;*************************************************
XADB_AUTO:

CLR P1.0
CLR P1.4
SETB P1.2
SETB P1.3
MOV TGA,#25
MOV TGB,#30
MOV R6,#16 ; THAY DOI KHI TGB VA TGA THAY DOI R6 = TGA - 9
;==============================
LAPXA:
JNB P3.0,XADB_HANDDY ; ||=>neu p3.0 o muc thap (0) thi chay Handdy
CALL DELAY1S_1 ; ||=>con p3.0 o muc cao (1) thi chay AuTo
DEC TGB
DEC TGA
DJNZ R6,LAPXA
MOV R6,#5 ; Thay Doi Khi TGB Va TGA Thay Doi R6 = TGB - TGA.
LAPXA1:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_2
DEC TGA
DEC TGB
DJNZ R6,LAPXA1
LAPXA2:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_4
DEC TGB
DJNZ TGA,LAPXA2
;======================================
;Vang A va Do B sang
;*************************************************
VADB_AUTO:

CLR P1.2
SETB P1.1
MOV TGA,#5
;=============================
LAPVA:
JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 = 1 thi chay Auto
CALL DELAY1S_4 ;||Î con p3.0 = 0 thi chay Handdy
DEC TGB
DJNZ TGA,LAPVA
CALL DELAY1S_4
TIEP:
LJMP MAIN


;************************************************************
HANDDY:
;============================
DAXB_HANDDY:
MOV P0,#0FFH ; Khong cho hien thoi gian
SETB P1.0 ;Do A sang
SETB P1.5 ; Xanh B sang
CLR P1.3 ;Tat Do B
CLR P1.4 ;Tat Vang B
CLR P1.2 ;Tat xanh A
JB P3.0,TIEP ; ||Î neu p3.0 = 0 thi Chay Handdy
JB P3.1,DAXB_HANDDY ; ||Î neu p3.0 = 1 thi chay AUTO
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3

Trang 15
; ||=> neu p3.1 = 1 thi nhay DAXB_HANDDY
;||=> neu p3.1 = 0 thi nhay XADB_HANDDY
;====================================================================

XADB_HANDDY:
MOV P0,#0FFH
SETB P1.2 ; Xanh A sang
SETB P1.3 ; Do B sang
CLR P1.1 ;Tat vang A
CLR P1.0 ;Tat do A
CLR P1.5 ; Tat Xanh B
JB P3.0,XADB_AUTO ; ||Î neu p3.0 = 0 thi Chay Handdy
;||Î neu p3.0 = 1 thi chay AUTO
JNB P3.1,XADB_HANDDY ;||=>neu p3.1 = 1 thi nhay DAXB_HANDDY
JMP DAXB_HANDDY ;||=>neu p3.1 = 0 thi nhay XADB_HANDDY

;=============================================
HIEN_THI1:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================

HIEN_THI2:
CALL MAHOA
MOV P0,DONVIA
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
HIEN_THI3:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
HIEN_THI4:
CALL MAHOA
MOV P0,DONVIA
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET

;================================================
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON



VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 16

MAHOA:
MOV A,TGA
MOV B,#10
DIV AB
ADD A,#10110000B
MOV CHUCA,A
MOV A,B
ADD A,#01110000B
MOV DONVIA,A
MOV A,TGB
MOV B,#10
DIV AB
ADD A,#11100000B
MOV CHUCB,A
MOV A,B
ADD A,#11010000B
MOV DONVIB,A
RET
;================================================
DELAY1S_1:
MOV R0,#40
LAPDELAY1S_1:
CALL HIEN_THI1
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_1

RET
;===============================================
DELAY1S_2:
MOV R0,#40
LAPDELAY1S_2:
CALL HIEN_THI2
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_2
RET
;===============================================
DELAY1S_3:
MOV R0,#40
LAPDELAY1S_3:
CALL HIEN_THI3
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_3
RET
;===============================================
DELAY1S_4:
MOV R0,#40
LAPDELAY1S_4:
CALL HIEN_THI4
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_4
RET
;===============================================
DELAY50MS:
MOV TH0,#HIGH(-25000)
MOV TL0,#LOW(-25000)
SETB TR0

JNB TF0,$
CLR TR0
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 17
CLR TF0
RET
;=======================================
DELAY:
LOOP1:
MOV R1,#10
LOOP2:
MOV R2,#200
DJNZ R2,$
DJNZ R1,LOOP2
RET
;===================================================

END
;******************************************************


CHƯƠNG TRÌNH HOÀN HIỆN HƠN 2:

;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan
;Nguoi viet :VUONG VAN HUNG
;Ngay viet :20/06/2008


;===================================================

TGA DATA 7CH
CHUCA DATA 2EH
DONVIA DATA 7DH
TGB DATA 7EH
DONVIB DATA 7FH
CHUCB DATA 2FH
DOA BIT P1.0
VANGA BIT P1.1
XANHA BIT P1.2
DOB BIT P1.3
VANGB BIT P1.4
XANHB BIT P1.5

;===================================================
ORG 0000H

INIT:
MOV TMOD,#01H
MOV P1,#00H
;===================================================
;Chuong trinh chinh
MAIN:
;****************************************************
; Do A va Xanh b sang
;***************************************************
DAXB_AUTO:
CLR DOB
CLR VANGA

MOV TGA,#20
MOV TGB,#17
MOV R6,#8
SETB DOA
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 18
SETB XANHB
;==============================
LAPXB:


CALL DELAY1S_1
DEC TGA
DEC TGB
JNB P3.0,DAXB_HANDDY
DJNZ R6,LAPXB
MOV R6,#3
LAPXB1:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_3
DEC TGA
DEC TGB
DJNZ R6,LAPXB1
LAPXB2:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_4
DEC TGA

DJNZ TGB,LAPXB2

;=================================================
; Do A va vang B sang
;************************************************
DAVB_AUTO:
CLR XANHB
SETB VANGB
MOV TGB,#3
;=====================================
LAPVB:
JNB P3.0,XADB_HANDDY ; neu p3.0 =1 thi chay Auto
CALL DELAY1S_4 ; con p3.0 =0 thi chay Handdy
DEC TGA
DJNZ TGB,LAPVB
CALL DELAY1S_4
;=============================================
; Xanh A va Do B sang
;*************************************************
XADB_AUTO:
CLR DOA
CLR VANGB
SETB XANHA
SETB DOB
MOV TGA,#25
MOV TGB,#30
MOV R6,#16 ; thay doi khi TGB va TGA thay doi R6 = TGA - 9
;==============================
LAPXA:
JNB P3.0,XADB_HANDDY ;||Î neu p3.0 =0 thi chay Handdy

CALL DELAY1S_1 ; ||Îcon p3.0 =1 thi chay AuTo
DEC TGB
DEC TGA
DJNZ R6,LAPXA
MOV R6,#5 ; thay doi khi TGB va TGA thay doi R6 = TGB - TGA
LAPXA1:
JNB P3.0,DAXB_HANDDY
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 19
CALL DELAY1S_2
DEC TGA
DEC TGB
DJNZ R6,LAPXA1
LAPXA2:
JNB P3.0,DAXB_HANDDY
CALL DELAY1S_4
DEC TGB
DJNZ TGA,LAPXA2
;======================================
;Vang A va Do B sang
;*************************************************
VADB_AUTO:
CLR XANHA
SETB VANGA
MOV TGA,#5
;=============================
LAPVA:

JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 = 1 thi chay Auto
CALL DELAY1S_4 ; ||Îcon p3.0 = 0 thi chay Handdy
DEC TGB
DJNZ TGA,LAPVA
CALL DELAY1S_4
TIEP:
LJMP MAIN
;************************************************************
;CHE DO HANDDY
;==================================
DAXB_HANDDY:
MOV P0,#0FFH ; Khong cho hien thoi gian
SETB DOA ;Do A sang
SETB XANHB ; Xanh B sang
CLR DOB ;Tat Do B
CLR VANGA ;Tat Vang A
CLR XANHA ;Tat Xanh A
JB P3.0,TIEP ;|=> neu p3.0 = 0 thi Chay Handdy
JB P3.1,DAXB_HANDDY ;|=>neu p3.0 = 1 thi chay AUTO
;|==>neu p3.1 = 1 thi nhay DAXB_HANDDY
;|==> neu p3.1 = 0 thi nhay XADB_HANDDY
;====================================================================

XADB_HANDDY:
MOV P0,#0FFH
SETB XANHA ;XANH A SANG
SETB DOB ; DO B SANG
CLR VANGB ; TAT VANG B
CLR DOA ; DO A TAT
CLR XANHB ; XANH B TAT

JB P3.0,XADB_AUTO ; neu p3.0 = 1 thi chay AUTO
JNB P3.1,XADB_HANDDY ; neu p3.0 = 0 thi Chay Handdy
JMP DAXB_HANDDY ;neu p3.1 = 1 thi nhay DAXB_HANDDY
; neu p3.1 = 0 thi nhay XADB_HANDDY
;=============================================
HIEN_THI1:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 20
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
HIEN_THI2:
CALL MAHOA
MOV P0,DONVIA
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY

RET
;================================================
HIEN_THI3:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY
MOV P0,DONVIA
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
HIEN_THI4:
CALL MAHOA
MOV P0,DONVIA
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
MAHOA:
MOV A,TGA
MOV B,#10
DIV AB
ADD A,#10110000B
MOV CHUCA,A
MOV A,B
ADD A,#01110000B
MOV DONVIA,A
MOV A,TGB

MOV B,#10
DIV AB
ADD A,#11100000B
MOV CHUCB,A
MOV A,B
ADD A,#11010000B
MOV DONVIB,A
RET
;================================================
DELAY1S_1:
MOV R0,#40
LAPDELAY1S_1:
CALL HIEN_THI1
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 21
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_1
RET
;===============================================
DELAY1S_2:
MOV R0,#40
LAPDELAY1S_2:
CALL HIEN_THI2
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_2
RET
;===============================================

DELAY1S_3:
MOV R0,#40
LAPDELAY1S_3:
CALL HIEN_THI3
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_3
RET
;===============================================
DELAY1S_4:
MOV R0,#40
LAPDELAY1S_4:
CALL HIEN_THI4
CALL DELAY50MS
DJNZ R0,LAPDELAY1S_4
RET
;===============================================
DELAY50MS:
MOV TH0,#HIGH(-25000)
MOV TL0,#LOW(-25000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
;=======================================
DELAY:
LOOP1:
MOV R1,#10
LOOP2:
MOV R2,#200

DJNZ R2,$
DJNZ R1,LOOP2
RET
;===================================================

END
;***********************************************************
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 22
AD0
AD1
AD2
AD3
QA1
QB1
QC1
QD1
QE1
QF1
QG1
QA2
QB2
QC2
QD2
QE2
QF2
QG2

QA3
QB3
QC3
QD3
QE3
QF3
QG3
QA4
QB4
QC4
QD4
QE4
QF4
QG4
AD3
AD2
AD1
AD0
AD0
AD1
AD2
AD3
AD0
AD1
AD2
AD3
AD0
AD1
AD2
AD3

QG1
QA1
QB1
QC1
QD1
QE1
QF1
QA2
QB2
QC2
QD2
QE2
QF2
QG2
QG3
QA4
QB4
QC4
QD4
QE4
QG4
QF4
QA3
QB3
QC3
QD3
QE3
QF3
AD6
AD7

AD5
AD4
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7 AD7
AD6
AD5
AD4
XTAL2
18
XTAL1
19
ALE
30
EA
31
PSEN
29
RST
9
P0.0/AD0
39
P0.1/AD1
38
P0.2/AD2

37
P0.3/AD3
36
P0.4/AD4
35
P0.5/AD5
34
P0.6/AD6
33
P0.7/AD7
32
P2.7/A15
28
P2.0/A8
21
P2.1/A9
22
P2.2/A10
23
P2.3/A11
24
P2.4/A12
25
P2.5/A13
26
P2.6/A14
27
P1.0
1
P1.1

2
P1.2
3
P1.3
4
P1.4
5
P1.5
6
P1.6
7
P1.7
8
P3.0/RXD
10
P3.1/TXD
11
P3.2/INT0
12
P3.3/INT1
13
P3.4/T0
14
P3.7/RD
17
P3.6/WR
16
P3.5/T1
15
U1

80C51
R0
10k
C1
1u
VCC
X1
12MHz
C2
27p
C3
27p
VCC
TUYEN DUONG A
A
7
B
1
C
2
D
6
LT
3
BI
4
LE/STB
5
QA
13

QB
12
QC
11
QD
10
QE
9
QF
15
QG
14
U2
4511
VCC
VCC
VCC
2
3
4
5
6
7
8
9
1
DRT2
10K
Q6
2N2369

Q1
2N2369
Q2
2N2369
Q3
2N2369
Q4
2N2369
Q5
2N2369
TUYEN DUONG B
CHUC A DON VI A
CHUC B DON VI B
R9
4k7
R10
4k7
R11
4k7
R12
4k7
R13
4k7
R14
4k7
A
7
B
1
C

2
D
6
LT
3
BI
4
LE/STB
5
QA
13
QB
12
QC
11
QD
10
QE
9
QF
15
QG
14
U3
4511
A
7
B
1
C

2
D
6
LT
3
BI
4
LE/STB
5
QA
13
QB
12
QC
11
QD
10
QE
9
QF
15
QG
14
U4
4511
A
7
B
1
C

2
D
6
LT
3
BI
4
LE/STB
5
QA
13
QB
12
QC
11
QD
10
QE
9
QF
15
QG
14
U5
4511
2
3
4
5
6

7
8
9
1
RP1
10K




BÀI 1: CHƯƠNG TRÌNH ĐÈN GIAO THÔNG


PHẦN 1: CHƯƠNG TRÌNH ĐÈN GIAO THÔNG TỰ ĐỘNG CÓ HIỂN THỊ THỜI GIAN
BẰNG LED 7 ĐOẠN :

;Nguoi viet :VUONG VAN HUNG
;Ngay viet :20/06/2008

;===================================================

TGA DATA 7CH
CHUCA DATA 2EH
DONVIA DATA 7DH
TGB DATA 7EH
DONVIB DATA 7FH
CHUCB DATA 2FH
CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON



VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 23

;===================================================
;Chuong trinh chinh

ORG 0000H
INIT:
MOV TMOD,#01H
MOV P1,#0H

MAIN:
MOV TGA,#30
MOV TGB,#25
SETB P1.0
SETB P1.5
;===============================
;Thoi gian cua Do A va Xanh B
LAPXB:
CALL DELAY1S
DEC TGA
DJNZ TGB,LAPXB
CLR P1.5
SETB P1.4
MOV TGB,#5
;==============================
;Thoi gian cua Do A va Vang B
LAPVB:
CALL DELAY1S
DEC TGA

DJNZ TGB,LAPVB
CLR P1.0
CLR P1.4
SETB P1.2
SETB P1.3
MOV TGA,#25
MOV TGB,#30
;==============================
;Thoi gian cua Do B va Xanh A
LAPXA:
CALL DELAY1S
DEC TGB
DJNZ TGA,LAPXA
CLR P1.2
SETB P1.1
MOV TGA,#5
;==============================
;Thoi gian cua Do B va Vang A
LAPVA:
CALL DELAY1S
DEC TGB
DJNZ TGA,LAPVA
CLR P1.1
CLR P1.3
LJMP MAIN
;=================================================
HIENTHI:
CALL MAHOA
MOV P0,CHUCA
CALL DELAY

CHÖÔNG TRÌNH VI ĐIỀU KHIỂN * ĐH: CÔNG NGHỆ SÀI GON


VƯƠNG VĂN HÙNG * CLASS: ĐĐT307. 3
Trang 24
MOV P0,DONVIA
CALL DELAY
MOV P0,CHUCB
CALL DELAY
MOV P0,DONVIB
CALL DELAY
RET
;================================================
MAHOA:
MOV A,TGA
MOV B,#10
DIV AB
ADD A,#10110000B
MOV CHUCA,A
MOV A,B
ADD A,#01110000B
MOV DONVIA,A
MOV A,TGB
MOV B,#10
DIV AB
ADD A,#11100000B
MOV CHUCB,A
MOV A,B
ADD A,#11010000B
MOV DONVIB,A

RET
;================================================

DELAY1S:
MOV R0,#20
LAPDELAY1S:

CALL HIENTHI
CALL DELAY50MS
DJNZ R0,LAPDELAY1S
RET
;===============================================
DELAY50MS:
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET

DELAY:
LOOP1:
MOV R1,#20
LOOP2:
MOV R2,#200
DJNZ R2,$
DJNZ R1,LOOP2
RET
;===================================================


END
;*********************************************************************

×