Thiết kế timer dùng 8051
Dùng IC8051 mô phỏng bằng proteus
Cài dặt được thời gian bằng nút nhấn
Hiện thị thời gian giờ phút giây đếm ngược lên LCD
Có thể stop thời gian và có thể reset lại ban đầu
Khi hết thời gian thì đóng một relay
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN – ĐIỆN TỬ ------*------ BÁO CÁO BÀI TẬP LỚN GVHD: BÙI QUỐC BẢO Đề tài số 10: Thiết kế timer dùng 8051. Timer sẽ đếm ngược đến hết thời gian cài đặt thì đóng 1 relay. Cài đặt sử dụng switch, hiển thị dùng LCD. Danh sách nhóm: Hồ Đắc Thuận 4120 3697 Võ Đình Thịnh 4120 3640 Nguyễn Trọng Tuấn 4120 4295 Nguyễn Duy Vĩnh 4120 4579 Tên đề tài Thiết kế timer dùng 8051. Timer sẽ đếm ngược đến hết thời gian cài đặt thì đóng 1 relay. Cài đặt sử dụng switch, hiển thị dùng LCD. Yêu cầu: Dùng IC8051 mô phỏng bằng proteus Cài dặt được thời gian bằng nút nhấn Hiện thị thời gian giờ phút giây đếm ngược lên LCD Có thể stop thời gian và có thể reset lại ban đầu Khi hết thời gian thì đóng một relay Sơ đồ khối phần cứng : Khối IC 8051 Khối quan trọng nhất Bao gồm bộ dao động thạch anh, nút reset hệ thống và IC Ngoài ra các port của 8051 được nối với các khối khác thông qua các label Khối LCD Các chân VSS, VDD, VEE của LCD được nối như hình vẽ Chân RS, RW, E được nối tới các port của 8051 Các chân DATA được nối tới port P1 của 8051 Khối Button Các nút nhấn SET, UP ,DOWN, START, STOP lần lượt nối tới các port P2.0, P2.1, P2.2, P2.3 của 8051 Khối relay Có một relay và đèn LED hiển thị Giới thiệu linh kiên mới: LCD LM020L Relay III. SƠ ĐỒ KẾT NỐI IV. Lưu đồ giải thuật V. Code EN EQU P3.7 RS EQU P3.6 RW EQU P3.5 ORG 030H MOV P2,00H MOV P3,00H LCALL INIT_LCD RESE: MOV P2,00H CLR RS ;VIET CHU SETTIME MOV P1,#80h SETB EN CLR EN LCALL WAIT_LCD MOV A,#'S' LCALL WRITE_TEXT MOV A,#'E' LCALL WRITE_TEXT MOV A,#'T' LCALL WRITE_TEXT MOV A,#'T' LCALL WRITE_TEXT MOV A,#'I' LCALL WRITE_TEXT MOV A,#'M' LCALL WRITE_TEXT MOV A,#'E' LCALL WRITE_TEXT MOV 10H,#48 ;TAO GIA TRI DAU 000000 MOV 11H,#48 MOV 12H,#48 MOV 13H,#48 MOV 14H,#48 MOV 15H,#48 SETGIO: ;CAI DAT GIO LCALL DISPLAY LCALL DELAY LCALL DISPLAYGIO LCALL DELAY JB P2.1,UPGIO JB P2.2,DOWNGIO JB P2.0,SETPHUT JB P2.3,MAINB SJMP SETGIO MAINB: LJMP MAINA UPGIO: INC 14H MOV A,14H CJNE A,#58,SETGIO INC 15H MOV 14H,#48 MOV A,15H CJNE A,#58,SETGIO MOV 14H,#48 MOV 15H,#48 SJMP SETGIO DOWNGIO: DEC 14H MOV A,14H CJNE A,#47,SETGIO DEC 15H MOV 14H,#57 MOV A,15H CJNE A,#47,SETGIO MOV 14H,#57 MOV 15H,#57 SJMP SETGIO DISPLAYGIO: CLR RS MOV P1,#88h SETB EN CLR EN LCALL WAIT_LCD MOV A,#32 LCALL WRITE_TEXT LCALL WRITE_TEXT RET SETGIOA: LJMP SETGIO SETPHUT: ;CAI DAT PHUT LCALL DISPLAY LCALL DELAY LCALL DISPLAYPHUT LCALL DELAY JB P2.1,UPPHUT JB P2.2,DOWNPHUT JB P2.0,SETGIOA JB P2.3,MAINA SJMP SETPHUT UPPHUT: INC 12H MOV A,12H CJNE A,#58,SETPHUT INC 13H MOV 12H,#48 MOV A,13H CJNE A,#54,SETPHUT MOV 12H,#48 MOV 13H,#48 SJMP SETPHUT DOWNPHUT: DEC 12H MOV A,12H CJNE A,#47,SETPHUT DEC 13H MOV 12H,#57 MOV A,13H CJNE A,#47,SETPHUT MOV 13H,#53 MOV 12H,#57 SJMP SETPHUT DISPLAYPHUT: CLR RS MOV P1,#8Bh SETB EN CLR EN LCALL WAIT_LCD MOV A,#32 LCALL WRITE_TEXT LCALL WRITE_TEXT RET STOP: JB P2.3,MAIN JB P2.0,RESEB SJMP STOP RESEB: LJMP RESE DISPLAYHAICHAM: ;XOA DAU HAI CHAM CLR RS MOV P1,#8Ah SETB EN CLR EN LCALL WAIT_LCD MOV A,#32 LCALL WRITE_TEXT CLR RS MOV P1,#8Dh SETB EN CLR EN LCALL WAIT_LCD MOV A,#32 LCALL WRITE_TEXT RET MAINA: CLR RS ;CHIET CHU RUNNING MOV P1,#80h SETB EN CLR EN LCALL WAIT_LCD MOV A,#'R' LCALL WRITE_TEXT MOV A,#'U' LCALL WRITE_TEXT MOV A,#'N' LCALL WRITE_TEXT MOV A,#'N' LCALL WRITE_TEXT MOV A,#'I' LCALL WRITE_TEXT MOV A,#'N' LCALL WRITE_TEXT MOV A,#'G' LCALL WRITE_TEXT MAIN: ;MAIN -CHUONG TRINH CHINH JB P2.4,STOP JB P2.0,RESEB ACALL DISPLAY ACALL DELAY1S LCALL DISPLAYHAICHAM ACALL DELAY1S DEC 10H MOV A,10H CJNE A,#47,MAIN MOV 10H,#57 DEC 11H MOV A,11H CJNE A,#47,MAIN MOV 10H,#57 MOV 11H,#53 DEC 12H MOV A,12H CJNE A,#47,MAIN MOV 10H,#57 MOV 11H,#53 MOV 12H,#57 DEC 13H MOV A,13H CJNE A,#47,MAIN MOV 10H,#57 MOV 11H,#53 MOV 12H,#57 MOV 13H,#53 DEC 14H MOV A,14H CJNE A,#47,MAIN MOV 10H,#57 MOV 11H,#53 MOV 12H,#57 MOV 13H,#53 MOV 14H,#57 DEC 15H MOV A,15H CJNE A,#47,MAIN RELAY: ;//////////////////RELAY/////////////////////////// SETB P2.5 HETGIO: ;HET GIO CLR RS ; MOV P1,#80h SETB EN CLR EN LCALL WAIT_LCD MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'T' LCALL WRITE_TEXT MOV A,#'I' LCALL WRITE_TEXT MOV A,#'M' LCALL WRITE_TEXT MOV A,#'E' LCALL WRITE_TEXT MOV A,#'-' LCALL WRITE_TEXT MOV A,#'O' LCALL WRITE_TEXT MOV A,#'U' LCALL WRITE_TEXT MOV A,#'T' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT MOV A,#'_' LCALL WRITE_TEXT LCALL DELAY1S CLR RS MOV P1,#01h SETB EN CLR EN LCALL WAIT_LCD LCALL DELAY1S JB P2.0,RESEA SJMP HETGIO RESEA: LJMP RESE DISPLAY: ;DISPLAY CLR RS MOV P1,#88h SETB EN CLR EN LCALL WAIT_LCD MOV A,15H LCALL WRITE_TEXT MOV A,14H LCALL WRITE_TEXT MOV A,#':' LCALL WRITE_TEXT MOV A,13H LCALL WRITE_TEXT MOV A,12H LCALL WRITE_TEXT MOV A,#':' LCALL WRITE_TEXT MOV A,11H LCALL WRITE_TEXT MOV A,10H LCALL WRITE_TEXT RET WAIT_LCD: MOV R7,#250 DJNZ R7,$ CLR RW RET WRITE_TEXT: SETB RS MOV P1,A SETB EN CLR EN LCALL WAIT_LCD RET INIT_LCD: CLR RS MOV P1,#38h SETB EN CLR EN LCALL WAIT_LCD CLR RS MOV P1,#0Ch SETB EN CLR EN LCALL WAIT_LCD RET DELAY1S: ;DELAY 0.5 GIAY 2LAN MOV R7,#3 LAP5:MOV R6,#250 LAP2:MOV R5,#250 DJNZ R5,$ DJNZ R6,LAP2 DJNZ R7,LAP5 RET DELAY: ;DELAY MOV R7,#1 LAP4:MOV R6,#200 LAP3:MOV R5,#250 DJNZ R5,$ DJNZ R6,LAP3 DJNZ R7,LAP3 RET END Làm được gì, chưa làm được gì * Làm được: - Sử dụng được các switch để xác định thời gian để đóng relay kể từ khi nhấn nút start - Có thể dừng thời gian đếm lại trong quá trình đếm bằng nút stop *Chưa làm được: - Thời gian đáp ứng khi nhấn switch chưa tức thời. - Chưa có nhiều chế độ điều khiển nâng cao. Hướng phát triển Phát triển thêm nhiều chế độ điều khiển khác như: Tạo hệ thống đóng ngắt tự động khi đến giờ quy định. Tạo hệ thống hoạt động luân phiên giữa hai máy sau một khoảng thời gian nhất định. Tạo hệ thống tự động thông minh khi có ngoại cảnh tác động vào. Có thể kết hợp thêm với các hệ thống khuếch đại công suất, ghép nối với những hệ thống khác để tạo thêm nhiều chức năng gia tăng khác
File đính kèm:
- thiet_ke_timer_dung_8051.docx
- Bao cao VXL.pptx