HOẠT ĐỘNG
+ Lúc đầu ánh sáng từ LED phát đến LED thu chưa bị che khối cảm biến đưa ra tín hiệu có mức logic 1 vào Vi điều khiển 89S52 đồng hồ chưa hoạt động
+ Khi ta che ánh sáng từ LED phát đến LED thu (trong 1 khoang thời gian ngắn) rồi thả ra khối cảm biến đưa ra tín hiệu chuyển từ mức logic 1 xuống mức logic 0 rồi lại chuyển lên mức logic 1 tạo thành 1 xung kích vào chân ngắt ngoài INT0 đồng hồ bắt đầu chạy, nếu che lần nữa rồi thả thì thời gian sẽ được lưu lại ( lưu đc 3 lần )
+ Mạch gồm có 3 button:
- button 1: nối với chân 9, nối với âm nguồn làm nhiệm vụ reset
- button 2: nối với chân 13 (INT1) nối với âm nguồn để xem lại kết quả đã hiển thị
- button 3: nối chân 28 (P2.7) với âm nguồn để chuyển xem kết quả hiển thị tiếp theo
(Chúng em đã rút gọn tối đa phần báo cáo: cố gắng mô tả rõ ràng chức năng mà mạch có thể thực hiện , bỏ qua các phần râu ria, không trình bầy chi tiết về 89S52 phần mà hầy hiểu quá rõ )
9 trang |
Chia sẻ: banmai | Lượt xem: 2398 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Đồng hồ cảm biế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 BÁCH KHOA HÀ NỘI
KHOA ĐIỆN TỬ - VIỄN THÔNG
-------------------o0o----------------
BµI TËP LíN
M«n: Vi xö lý
§Ò tµi: §«ng hå c¶m biÕn
Gi¸o viªn híng dÉn: ThÇy Ph¹m Ngäc Nam
Sinh viªn thùc tËp: Nhãm 7_§T9K47
Lª Minh C¬ng
KhuÊt B¸ §«ng
NguyÔn V¨n Hïng
Vò §×nh Ngäc
Bïi Minh QuyÕt
NguyÔn §×nh TuÊn (C )
Hà Nội.11/2005
S¬ ®å khèi
Vi §iÒu KhiÓn 89S52
C¶m BiÕn
Nót BÊm
Khèi hiÓn thÞ
C¸c ch©n cña Vi §iÒu khiÓn 89S52
Khèi c¶m biÕn: gåm cã LED ph¸t, LED thu, 1 bé khuyÕch ®¹i so s¸nh ë ®©y chóng em dïng LM324 , c¶m biÕn sö dông LED ph¸t, LED thu ho¹t ®éng ko æn ®Þnh, chóng em ®ang ®Þnh chuyÓn sang dïng Laser
4
1
3
2
1 2 3 4 5 6 7
14 13 12 11 10 9 8
GND
+3 - 30V
+
+
+
+
Khèi hiÓn thÞ: dïng 7 LED 7 thanh anot chung, ®Ó hiÓn thÞ phÇn tr¨m gi©y, phót, giê (giê chØ hiÓn thÞ hµng ®¬n vÞ)
Ho¹t ®éng
+ Lóc ®Çu ¸nh s¸ng tõ LED ph¸t ®Õn LED thu cha bÞ che khèi c¶m biÕn ®a ra tÝn hiÖu cã møc logic 1 vµo Vi ®iÒu khiÓn 89S52 ®ång hå cha ho¹t ®éng
+ Khi ta che ¸nh s¸ng tõ LED ph¸t ®Õn LED thu (trong 1 khoang thêi gian ng¾n) råi th¶ ra khèi c¶m biÕn ®a ra tÝn hiÖu chuyÓn tõ møc logic 1 xuèng møc logic 0 råi l¹i chuyÓn lªn møc logic 1 t¹o thµnh 1 xung kÝch vµo ch©n ng¾t ngoµi INT0 ®ång hå b¾t ®Çu ch¹y, nÕu che lÇn n÷a råi th¶ th× thêi gian sÏ ®îc lu l¹i ( lu ®c 3 lÇn )
+ M¹ch gåm cã 3 button:
- button 1: nèi víi ch©n 9, nèi víi ©m nguån à lµm nhiÖm vô reset
- button 2: nèi víi ch©n 13 (INT1) nèi víi ©m nguån à ®Ó xem l¹i kÕt qu¶ ®· hiÓn thÞ
- button 3: nèi ch©n 28 (P2.7) víi ©m nguån à ®Ó chuyÓn xem kÕt qu¶ hiÓn thÞ tiÕp theo
(Chóng em ®· rót gän tèi ®a phÇn b¸o c¸o: cè g¾ng m« t¶ râ rµng chøc n¨ng mµ m¹ch cã thÓ thùc hiÖn , bá qua c¸c phÇn r©u ria, kh«ng tr×nh bÇy chi tiÕt vÒ 89S52 phÇn mµ hÇy hiÓu qu¸ râ )
S¬ ®å nguyªn lý nh sau:
LËp tr×nh:
ORG 0000H
SJMP MAIN
ORG 0BH
LJMP NGAT_TIMER0
ORG 0003H ; ngat ngoai 0
LJMP CAM_BIEN
ORG 0013H ; ngat ngoai 1
LJMP XEM
MAIN:
MOV SP,#30H ;NHAP DIA CHI BAT DAU CHUONG TRINH TAI 30H
SETB P3.7
MOV R0,#18H
MOV 11H,#00h
MOV 12H,#00H ; DIA CHI LUU TRU hh:mm:ss
MOV 13H,#00H
MOV 14H,#00H
MOV 15H,#00H
MOV 16H,#00H
MOV 17H,#00H
MOV IE,#10000111B ;CHO PHEP NGAT NGOAI 0,1,NGAT TRAN TILER 0
MOV TMOD,#11H ;TIMER 0,1 CHE DO DINH THOI 16 BIT
DOI:
MOV C,P3.7
LCALL HIEN_THI
JC DOI
LCALL TRE_PHIM
LCALL TRE_PHIM
MOV TL0,#LOW(-9216)
MOV TH0,#HIGH(-9216)
SETB TR0
LAP:
LCALL HIEN_THI
SJMP LAP
HIEN_THI:
MOV DPTR,#BANG_MA_LED
;LED1
MOV P1,#10111111B
MOV A,17H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV p2,#0FFh
;LED2
MOV P1,#11011111B
MOV A,16H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV p2,#0FFh
;LED3
MOV P1,#11101111B
MOV A,15H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV p2,#0FFh ;Chong Nhieu
;LED4
MOV P1,#11110111B
MOV A,14H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV p2,0FFh ;Chong Nhieu
;LED5
MOV P1,#11111011B
MOV A,13H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV p2,#0FFh ;Chong Nhieu
;LED6
MOV P1,#11111101B
MOV A,12H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV P2,#0FFh
;LED7:
MOV P1,#11111110B
MOV A,11H
MOVC A,@A+DPTR
MOV P2,A
LCALL DELAY1
MOV p2,#0FFh;Chong Nhieu
THOAT_HIENTHI:
RET
RET
DELAY1:
MOV R7,#10H
nnn:
DJNZ R7,nnn
RET
NGAT_TIMER0:
CLR TR0
INC 17H
MOV A,17H
CJNE A,#10,KET_THUC
MOV 17H,#00
INC 16H
MOV A,16H
CJNE A,#10,KET_THUC
MOV 16H,#00
INC 15H
MOV A,15H
CJNE A,#10,KET_THUC
MOV 15H,#00
INC 14H
MOV A,14H
CJNE A,#6,KET_THUC
MOV 14H,#00
INC 13H
MOV A,13H
CJNE A,#10,KET_THUC
MOV 13,#00H
INC 12H
MOV A,12H
CJNE A,#6,KET_THUC
MOV 12H,#00H
INC 11H
MOV A,11H
CJNE A,#10,KET_THUC
MOV 11H,#00H
KET_THUC:
MOV TL0,#LOW(-9216)
MOV TH0,#HIGH(-9216)
SETB TR0
RETI
TRE_PHIM:
MOV R4,#255 ;
lap2: MOV R3,#255 ;tong so tre la 255*255*1,085*10(-6) = 0.7055S
lap1: DJNZ R3,lap1
DJNZ R4,lap2
RET
CAM_BIEN:
LCALL TRE_PHIM
LCALL TRE_PHIM
INC R0
MOV A,17H
MOV @R0,A
INC R0
MOV A,16H
MOV @R0,A
INC R0
MOV A,15H
MOV @R0,A
INC R0
MOV A,14H
MOV @R0,A
INC R0
MOV A,13H
MOV @R0,A
INC R0
MOV A,12H
MOV @R0,A
INC R0
MOV A,11H
MOV @R0,A
RETI
XEM:
CLR TR0
LCALL TRE_PHIM
MOV R0,#18H
SETB P2.7
LL1:
LCALL TRE_PHIM
LCALL TRE_PHIM
INC R0
MOV A,@R0
MOV 17H,A
INC R0
MOV A,@R0
MOV 16,A
INC R0
MOV A,@R0
MOV 15H,A
INC R0
MOV A,@R0
MOV 14H,A
INC R0
MOV A,@R0
MOV 13H,A
INC R0
MOV A,@R0
MOV 12H,A
INC R0
MOV A,@R0
MOV 11H,A
LL2:
LCALL HIEN_THI
MOV C,P2.7
JNC LL1
SJMP LL2
SETB TR0
RETI
BANG_MA_LED:
DB 11000000b;0
DB 11111001b
DB 10100100b;2
DB 10110000b
DB 10011001b
DB 10010010b;5
DB 10000010b
DB 11111000b
DB 10000000b
DB 10010000b;9
END
Tµi liÖu tham kh¶o:
1. Hä vi ®iÒu khiÓn 8051- Tèng v¨n On
2. CÊu tróc vµ lËp tr×nh víi hä vi ®iÒu khiÓn 8051 - NguyÔn t¨ng Cêng, Phan Quèc Th¾ng
3.www.alldatasheet.com và 1 số diễn đàn khác