Tài liệu Đề tài Đồng hồ hiển thị giờ phút giây thông qua led 7 đoạn: TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
KHOA CƠ KHÍ CHẾ TẠO MÁY
BỘ MÔN CƠ ĐIỆN TỬ
**********
BÁO CÁO GIỮA KÌ MÔN HỌC VI ĐIỀU KHIỂN
ĐỀ TÀI
ĐỒNG HỒ HIỂN THỊ GIỜ PHÚT GIÂY THÔNG QUA LED 7 ĐOẠN
GVGD: Lê Tấn Cường
SVTH : Phan Trần Hải Nguyên MSSV: 05111066
* Sơ đồ nguyên lý mạch đồng hồ:
+ Sơ đồ chân led 7 đoạn:
Bài tập sử dụng led 7 đoạn Anod chung với A1 là chân chung.
+ Khối vi điều khiển:
Bài tập sử dụng vi điều khiển 89C51, các nút nhấn SW2, SW3, SW4, SW5, SW6, SW7 tương ứng các nút chức năng giờ, phút, giây, vào chế độ, thoát chế độ, nút đặt giờ.
Từ d1 đến d8 là các ngõ ra điều khiển các cổng Anod của led 7 đoạn. TA1,TA2 là hai ngõ vào từ mạch dao động thạch anh 12MHz. RESET là ngõ vào từ mạch RESET vi điều khiển. Và a,b,c,d,e,f,g,p là các ngõ ra điều khiển led 7 đoạn.
+ Mạch dao động với thạch anh 12MHz
Thạch anh 12 MHz tạo tần số dao động 1 MHz , mỗi chu kì máy có thời gian là 1μs.
+ Mạch Reset vi điều khiển
+ Mạch điều khiển các cổng Anod chung của led 7 ...
12 trang |
Chia sẻ: haohao | Lượt xem: 1348 | Lượt tải: 2
Bạn đang xem nội dung tài liệu Đề tài Đồng hồ hiển thị giờ phút giây thông qua led 7 đoạn, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
KHOA CƠ KHÍ CHẾ TẠO MÁY
BỘ MÔN CƠ ĐIỆN TỬ
**********
BÁO CÁO GIỮA KÌ MÔN HỌC VI ĐIỀU KHIỂN
ĐỀ TÀI
ĐỒNG HỒ HIỂN THỊ GIỜ PHÚT GIÂY THÔNG QUA LED 7 ĐOẠN
GVGD: Lê Tấn Cường
SVTH : Phan Trần Hải Nguyên MSSV: 05111066
* Sơ đồ nguyên lý mạch đồng hồ:
+ Sơ đồ chân led 7 đoạn:
Bài tập sử dụng led 7 đoạn Anod chung với A1 là chân chung.
+ Khối vi điều khiển:
Bài tập sử dụng vi điều khiển 89C51, các nút nhấn SW2, SW3, SW4, SW5, SW6, SW7 tương ứng các nút chức năng giờ, phút, giây, vào chế độ, thoát chế độ, nút đặt giờ.
Từ d1 đến d8 là các ngõ ra điều khiển các cổng Anod của led 7 đoạn. TA1,TA2 là hai ngõ vào từ mạch dao động thạch anh 12MHz. RESET là ngõ vào từ mạch RESET vi điều khiển. Và a,b,c,d,e,f,g,p là các ngõ ra điều khiển led 7 đoạn.
+ Mạch dao động với thạch anh 12MHz
Thạch anh 12 MHz tạo tần số dao động 1 MHz , mỗi chu kì máy có thời gian là 1μs.
+ Mạch Reset vi điều khiển
+ Mạch điều khiển các cổng Anod chung của led 7 đoạn
Chương trình ASM:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;CHUONG TRINH DONG HO SO HIEN THI THOI GIAN
; PHAN TRAN HAI NGUYEN - MSSV 05111066
; NGAY: 2-11-2008
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
giay equ R4 ; thay ten thanh ghi R4 la giay
phut equ R3 ; thay ten thanh ghi R3 la phut
gio equ R2 ; thay ten thanh ghi R2 la gio
ngat equ R1 ; thay ten thanh ghi R1 la ngat ( so lan ngat)
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 0000h
ljmp main
org 0003h ;dia chi ngat ngoai 0
ljmp ISR_external0
org 000Bh ; dia chi ngat timer 0
ljmp ISR_timer0
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
org 0030h
main: mov dptr,#maso
mov 26h,#0BFh ;hien thi dau gach ngang
mov 23h,#0BFh
mov TMOD,#01h
clr TF0
mov IE,#10000011b
setb PX0 ; uu tien ngat ngoai
clr PT0
setb IT0 ; ngat ngoai canh xuong
mov TH0,#03Ch
mov TL0,#0B0h
setb TR0
mov 30h,#00
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
main1: mov gio,#00h ; gia tri ban dau cho gio la 00
main2: mov phut,#00h ; gia tri ban dau cho phut la 00
main3: mov giay,#00h ; gia tri ban dau cho giay la 00
main4: mov ngat,#00h ; gia tri ban dau cho ngat la 00
lcall giaima
main5: lcall hienthi
;doan chuong trinh led bao hieu
mov R7,30h
cjne R7,#1,main6
clr P3.7
;doan chuong trinh kiem tra nut nhan thoat
jb P2.3,maina
k1: mov R7,#30
k2: jnb P2.3,k1
djnz R7,k2
setb P3.7
mov 30h,#00
maina: mov a,giay
cjne a,#58h,main6
setb P3.7
mov 30h,#00
main6: cjne ngat,#20h,main5
; cong gia tri giay
mov a,giay
add a,#1h
da a
mov giay,a
;doan ma kiem tra gio hen
cjne a,2Ch,main7
mov a,phut
cjne a,2Dh,main7
mov a,gio
cjne a,2Eh,main7
mov 30h,#1
main7:mov a,giay
cjne a,#60h,main4
;cong gia tri phut
mov a,phut
add a,#1h
da a
mov phut,a
cjne a,#60h,main3
;cong gia tri gio
mov a,gio
add a,#1h
mov 30h,#1
da a
mov gio,a
cjne a,#24h,main2
ljmp main1
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con phuc vu ngat timer 0
ISR_timer0:
inc ngat
mov TH0,#03Ch
mov TL0,#0B0h
clr TF0
setb TR0
reti
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; chuong trinh con giai ma cho led 7 doan
giaima:
;cho giay
; hang don vi
mov a,giay
anl a,#0Fh
movc a,@a+dptr
mov 28h,a
; hang chuc
mov a,giay
anl a,#0F0h
swap a
movc a,@a+dptr
mov 27h,a
;cho phut
;hang don vi
mov a,phut
anl a,#0Fh
movc a,@a+dptr
mov 25h,a
;hang chuc
mov a,phut
anl a,#0F0h
swap a
movc a,@a+dptr
mov 24h,a
;cho gio
; hang don vi
mov a,gio
anl a,#0Fh
movc a,@a+dptr
mov 22h,a
;hang chuc
mov a,gio
anl a,#0F0h
swap a
movc a,@a+dptr
mov 21h,a
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con hien thi
hienthi:
mov a,#01111111b
mov R0,#26H
ht: mov P1,a
mov P0,@R0
lcall delay
mov P0,#0FFh
dec r0
rr a
cjne R0,#20h,ht
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;chuong trinh con phuc vu ngat ngoai 0
ISR_external0:
clr P3.7
clr P3.2
clr 20h
loop: lcall giaima
lcall hienthi
; kiem tra nut nhan EXIT co duoc nhan hay khong
jb P2.3,nhgio
e1: mov r7,#40
e2: jnb P2.3,e1
djnz r7,e2
inc 20h
mov r6,20h
cjne r6,#0,exit
; nhan tang gio va chong doi
nhgio: jb P2.0,nhphut
l1: mov r7,#10
l2: jnb P2.0,l1
djnz r7,l2
ajmp tanggio
;nhan tang phut va chong doi
nhphut: jb P2.1,nhgiay
l3: mov r7,#10
l4: jnb P2.1,l3
djnz r7,l4
ajmp tangphut
;nhan tang giay va chong doi
nhgiay: jb P2.2,hen
l5: mov r7,#10
l6: jnb P2.2,l5
djnz r7,l6
ajmp tanggiay
exit: ljmp exit1
;nhan nut hen gio
hen: jb P3.0,loop
l7: mov r7,#10
l8: jnb P3.0,l7
djnz r7,l8
mov 29h,giay
mov 2Ah,phut
mov 2Bh,gio
loophen: lcall giaima
lcall hienthi
jb P2.3,hengio ;nut nhan thoat
l9: mov r7,#40
l10: jnb P2.3,l9
djnz r7,l10
mov 2Ch,giay
mov 2Dh,phut
mov 2Eh,gio
mov giay,29h
mov phut,2Ah
mov gio,2Bh
sjmp loop
hengio: jb P2.0,henphut
l11: mov r7,#40
l12: jnb P2.0,l11
djnz r7,l12
mov a,gio
add a,#01h
da a
mov gio,a
cjne a,#24h,hengio1
mov gio,#00
hengio1: ajmp loophen
henphut: jb P2.1,hengiay
l13: mov r7,#40
l14: jnb P2.1,l13
djnz r7,l14
mov a,phut
add a,#01h
da a
mov phut,a
cjne a,#60h,henphut1
mov phut,#00
henphut1: ajmp loophen
hengiay: jb P2.2,loophen
l15: mov r7,#40
l16: jnb P2.2,l15
djnz r7,l16
mov a,giay
add a,#01h
da a
mov giay,a
cjne a,#60h,hengiay1
mov giay,#00
hengiay1: ajmp loophen
; doan ma tang gia tri gio
tanggio:
mov a,gio
add a,#01h
da a
mov gio,a
cjne a,#24h,gio1
mov gio,#00
gio1: ajmp loop
;doan ma tang gia tri phut
tangphut:
mov a,phut
add a,#1h
da a
mov phut,a
cjne a,#60h,phut1
mov phut,#00
phut1: ajmp loop
;doan ma tang gia tri giay
tanggiay:
mov a,giay
add a,#1h
da a
mov giay,a
cjne a,#60h,giay1
mov giay,#00
giay1: ajmp loop
exit1: setb P3.2
reti
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Chuong trinh con delay trong luc hien thi
delay: mov r5,#0Fh
djnz r5,$
ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
; ma led 7 doan anod chung
maso: db 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
end
Các file đính kèm theo tài liệu này:
- bai bao cao vi dieu khien.doc