Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
1,48 MB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA VIỄN THÔNG I - - BÀI TẬP LỚN THỰC HÀNH CƠ SỞ ĐỀTÀI:LẮPMẠCHHIỂNTHỊTHỜIGIAN,NGÀYTHÁNGNĂM,GIỜPHÚTGIÂYBẰNGLCD,SỬDỤNGVIĐIỀUKHIỂNHỌ8051VÀICTHỜIGIANTHỰC DS1307 Th.S NGUYỄN ĐỨC VIỆT GIẢNG VIÊN HƯỚNG DẪN: Th.S NGUYỄN ĐỨC MINH Th.S LA THU HỒNG NHÓM SINH VIÊN THỰC HIỆN: MẠC ĐỨC MẠNH NGUYỄN ĐÌNH HUỲNH ĐỖ VĂN HIẾU NGUYỄN THỊ HUYỀN TRANG LỚP: D09VT3 HÀ NỘI, 2012 Bài tập lớn môn Thực hành sở MỤC LỤC MỤC LỤC DANH MỤC HÌNH ẢNH LỜI NÓI ĐẦU CHƢƠNG PHÂN TÍCH YÊU CẦU 1.1 Khảo sát phân tích tốn 1.1.1 Cách hiểnthịthờigian 1.1.2 Mục đích 1.1.3 Các công nghệ ứng dụng thiết kế thờigianthực 1.1.4 Giải pháp thiết kế 1.1.5 Các tham số cho hệ thống CHƢƠNG 2: THIẾT KẾ HỆ THỐNG 10 2.1 Sơ đồ tổng quát 10 2.2 Sơ đồ Call graph 11 2.3 Sơ đồ đặc tả 11 2.5 Các module hệ thống 14 2.5.1 Khối nguồn 14 2.5.2 Khối điềukhiển trung tâm 14 2.5.3 Khối tạo thờigianthực 15 2.5.4 Khối hiểnthị 15 2.5.5 Khối giao tiếp phím bấm 16 2.6 Giới thiệu số linh kiện 16 2.6.1 Viđiềukhiển AT89C51 16 Bài tập lớn môn Thực hành sở 2.6.2 ICthờigianthực DS1307 .24 2.6.4 IC ổn áp 7805 36 2.6.5 Tụ điện 37 2.6.6 Điện trở 37 2.6.7 Nút bấm button .37 2.6.8 Biến trở 38 2.6.9 Thạch anh 38 2.6.10 Pin CMOS 3V .38 CHƢƠNG XÂY DỰNG HỆ THỐNG 39 3.1 Thiết kế phần cứng .39 3.2 Lập trình viđiềukhiển 40 Chương trình 40 3.3 Kết mô .53 KẾT LUẬN 54 DANH MỤC TÀI LIỆU THAM KHẢO 55 Bài tập lớn môn Thực hành sở DANH MỤC HÌNH ẢNH Hình 1.1 Đồng hồ điện tử Hình 1.2 Đồng hồ điện tử lò vi sóng Hình 2.1 Sơ đồ khối hệ thống 10 Hình 2.2 Sơ đồ Call graph mạch 11 Hình 2.3 Sơ đồ đặc tả mạch 11 Hình 2.4 Sơ đồ thuật tốn khối điềukhiển 12 Hình 2.5 Sơ đồ thuật toán cài đặt hiểnthị LCD 13 Hình 2.6 Sơ đồ khối nguồn 14 Hình 2.7 Khối điềukhiển trung tâm 14 Hình 2.8 Khối tạo thờigianthực 15 Hình 2.9 Khối hiểnthị 16 Hình 2.10 Các nút điềukhiểnmạch 16 Hình 2.11 Hình ảnh AT89C51 17 Hình 2.12 Sơ đồ khối AT89C51 18 Hình 2.13 Sơ đồ chân AT89C51 19 Hình 2.14 Mạch reset tác động tay tự động reset khởi động máy 20 Hình 2.15 Mạch tạo xung clock 22 Hình 2.16 ICthờigianthực DS1307 25 Bài tập lớn môn Thực hành sở Hình 2.17 Khối mạchthờigianthực 26 Hình 2.18 Sơ đồ khối DS1307 27 Hình 2.19 Sơ đồ địa RAM 28 Hình 2.20 Sơ đồ địc RTC 28 Hình 2.21 Hình ảnh LCD 16x2 32 Hình 2.22 IC ổn áp 5V – 7805 36 Hình 2.23 Hình dạng điện trở thiết bị điện tử 37 Hình 2.24 Nút bấm 37 Hình 2.25 Biến trở 38 Hình 2.26 Pin CMOS 38 Hình 3.1 Sơ đồ nguyên lý mạch vẽ proteus 39 Hình 3.1 Sơ đồ mạch in lớp 39 Bài tập lớn mơn Thực hành sở LỜI NĨI ĐẦU Sự đời vi xử lí nói chung, viđiềukhiển nói riêng tạo bƣớc ngoặt lớn việc thiết kế hệ thống xử lí thơng tin, đo lƣờng điềukhiển truyền thông Kết tạo đƣợc sản phẩm nhƣ máy ảnh số, máy chơi nhạc MP3, đầu đĩa DVD, biến tần,PLC…ngày rẻ hơn, nhỏ gọn hơn, thông minh tiện dụng Hơn nữa, kỹ thuật viđiềukhiển phát triển, đƣợc ứng dụng vào nhiều lĩnh vực sản xuất cơng nghiệp, tự động hóa, đời sống nhiều lĩnh vực khác So với kỹ thuật số kỹ thuật viđiểukhiển nhỏ gọn nhiều đƣợc tích hợp lại có khả lập trình đƣợc đểđiềukhiển Nên tiện dụng động Với tính ƣu việt viđiềukhiển phạm vi đồ án nhỏ này, chúng em chọn đề tài " Mạchhiểnthịthờigian, ngày, tháng, năm,phútgiâyLCD,sửdụngviđiềukhiểnhọ8051ICthờigianthực DS1307 Có chỉnh thờigian,ngày tháng" Mục đích đề tài hƣớng đến: tạo bƣớc đầu cho sinh viên thử nghiệm ứng dụngviđiềukhiểnthực tiễn để từ tìm tòi, phát triển nhiều ứng dụng khác đời sống ngày cần đến Việc thực xong đồ án môn học kiến thức học, số sách tham khảo số nguồn tài liệu khác nên khơng tránh khỏi thiếu sót Vì nhóm mong đƣợc góp ý thầy cô bạn Hà Nội, ngày 22 tháng 12 năm 2012 Nhóm sinh viên Bài tập lớn mơn Thực hành sở CHƢƠNG PHÂN TÍCH U CẦU 1.1 Khảo sát phân tích tốn Đồng hồ công cụ để đo đạc mốc thờigian nhỏ ngày; đối lập với lịch, công cụ để đo thờigian dài ngày Những loại đồng hồdùng kĩ thuật thƣờng có độ xác cao cấu tạo phức tạp Trong đó, ngƣời ta tạo loại đồng hồ nhỏ đểdễ dàng mang theo bên (gọi đồng hồ đeo tay) Những loại đồng hồ đại thƣờng thể ba thông tin: giờ, phút, giây 1.1.1 Cách hiểnthịthờigian Đồng hồ cơ: Đồng hồ thể thờigiansửdụng góc Mặt đồng hồ có số từ đến 12 sửdụng kim đểphút Từ số đến số kế cận phút (đối với kim phút), (đối với kim giờ) hay giây (đối với kim giây) Một loại đồng hồ khác đƣợc sửdụng đồng hồ mặt trời Nó hoạt động nhờ theo dọi thƣờng xuyên ánh sáng Mặt Trời, ngƣời ta theo dõi cách nhìn bóng chúng Đồng hồ điện tử: Đồng hồ điện tử sửdụng hệ thống số để thể thờigian Thơng thƣờng có cách thể hiện: - 24 để đếm từ 00-23h - 12 với kí hiệu AM / PM (chủ yếu Mĩ) Những đồng hồ điện tử sửdụng hình LCD hay LED, ống catode để thể hình ảnh số Khi đồng hồ điện tử thay pin, chúng thƣờng "quên" liệu thờigian trƣớc Đồng hồ âm thanh: Để tiện lợi hơn, có số đồng hồsửdụng âm để bào hiệu Âm đƣợc sửdụng nhƣ ngôn ngữ tự nhiên ("Bây mƣời sáu ba mƣơi phút) hay mã (số tiếng chuông báo hiệu số giờ) Bài tập lớn môn Thực hành sở Đồng hồ chữ: Loại đồng hồthờigian dạng chữ Nếu nhƣ đồng hồ điện tử đọc đƣợc số 12:35 đồng hồ chữ, đọc đƣợc "Mƣời hai ba mƣơi lăm phút" Một số loại đồng hồ khác sửdụng chế gần khiến ngƣời sửdụng cảm thấy dễ chịu sửdụng đồng hồ (ví dụ "Khoảng mƣời hai rƣỡi") 1.1.2 Mục đích Đồng hồ treo tƣờng đƣợc dùng nhà văn phòng, đồng hồ đeo tay đƣợc mang tay, loại đồng hồ lớn đƣợc đặt nơi công cộng (nhà thờ hay bến xe) Hầu hết máy tính điện thoại di động có góc dƣới hình hiểnthị Tuy nhiên, đồng hồ lúc đƣợc sửdụngđểhiểnthịthờigian Nó sửdụngđểđiềukhiển vật theo thờigianVí dụ nhƣ đồng hồ chng đƣợc dùng làm chng báo tiết học Nó đƣợc gọi xác hệ thống đếm Máy tính sửdụng tín hiệu đồng hồđể đồng q trình xử lý (mặc dầu có số nghiên cứu xử lí khơng đồng bộ) Máy tính lƣu trữ thờigianđể báo hiệu đểhiểnthịthờigian Bên máy tính có đồng hồ đƣợc ni pin Máy tính hoạt động đồng hồ máy bị chết nhƣng khởi động máy lại, đồng hồ máy tính đƣợc khởi động lại Thờigian khái niệm mơn vật lý Do đó, chế tạo dụng cụ đo thờigian xác có ý nghĩa quan trọng thí nghiệm Hình 1.1 Đồng hồ điện tử Bài tập lớn mơn Thực hành sở Hình 1.2 Đồng hồ điện tử lò vi sóng 1.1.3 Các công nghệ ứng dụng thiết kế thờigianthựcICthờigian thực, viđiều khiển, cách thứchiểnthịthờigianthực ICthờigian thực: Hiệnthị trƣờng có loại ICthờigianthực phồ biến DS1307 DS12887 Các IC có chức chạy thờigianthực lƣu điện, với DS1307 cần có thêm nguồn nuôi pin cmos 3V, với DS12887 có sẵn pin tích hợp bên Các ICthực giao tiếp với viđiềukhiểnđểthịthờigian cài đặt giờ… Trên sở sửdụng loại IC này, đề tài nhóm em đƣợc giao dùng DS1307 Viđiều khiển: Có nhiều loại viđiềukhiển khác sửdụngmạch đồng hồ nhƣ viđiềukhiển pic, avr, 8051… Các loại viđiềukhiển pic hay avr có nhiều ƣu điểm so với 8051 nhƣ hỗ trợ kết nối ngoại vi tốt hơn, tốc độ xử lý nhanh hơn, lập trình đơn giản Nhƣng giá thành lại cao nhiều so với 8051 mà mạch chúng em sửdụng AT89C51 Hiển thị: Chúng ta có cách hiểnthị là: sửdụng LED đoạn sửdụng LCD LED đoạn: - Ƣu điểm: hiểnthị rõ ràng thu hút đƣợc ý nhìn xa - Nhƣợc điểm: mạch điện phức tạp cần thêm IC chốt LCD 16x2: Bài tập lớn môn Thực hành sở - Ƣu điểm: hiểnthịdễ dàng, linh động việc hiểnthịthờigian, kết nối đơn giảnmạch điện không phức tạp… - Nhƣợc điểm: không thu hút đƣợc ý LED đoạn, giá thành cao… 1.1.4 Giải pháp thiết kế Đồng hồthờigianthực với trung tâm điềukhiển AT89C51 linh kiện khác: LCD hiển thị, IC ổn áp7805, ICthờigianthực DS1307 AT89C51 có ƣu điểm: tính tốc độ đáp ứng đƣợc yêu cầu kĩ thuật ứng dụng khơng đòi hỏi cao; giá thành thấp họviđiềukhiển khác; có hỗ trợ lập trình điềukhiển hợp ngữ C IC DS1307 IC chuyên dụng, cho khả xác thờigian LCD hiểnthị cách rõ ràng, linh động IC ổn áp 7805 đƣợc sửdụng rộng rãi nguồn 1.1.5 Các tham số cho hệ thống Sửdụng nguồn điện 5V Làm việc liên tục Kích thƣớc phù hợp với ngƣời sửdụng Hệ thống nhỏ gọn Hệ thống lƣu đƣợc thờigian nguồn cấp (có nguồn dự trữ) Nguồn nuôi (pin CMOS) cho ICthờigianthực đảm bảo Làm việc điều kiện mơi trƣờng bình thƣờng Bài tập lớn mơn Thực hành sở D7=1; rs=0; rw=1; while(D7!=0) { en=0; en=1; } } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void ghilenhLCD(unsigned char x) { busy(); congLCD=x; // gia tri x rs=0; // chon ghi lenh rw=0; // ghi len lcd en=1; // cho phep muc cao en=0; //xung cao xuong thap } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void khoitaoLCD(void) { ghilenhLCD(0X38); // hai dong va ma tran 5x7 ghilenhLCD(0X0C); //bat man hinh , tat tro ghilenhLCD(0X01); //xoa man hinh ghilenhLCD(0X06); // dich hienthi sang phai(tang tro sang phai) } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void ghi_kytu(unsigned char value) { busy(); congLCD=value; rs=1; rw=0; en=1; en=0; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void ghi_chuoi(unsigned char *string) { 41 Bài tập lớn môn Thực hành sở unsigned char i; for(i=0;string[i]!='\0';i++) ghi_kytu(string[i]); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void ghiso(unsigned char a) { unsigned char i; i=a/10; ghi_chuoi(rtc[i]); i=a%10; ghi_chuoi(rtc[i]); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void hienthi_dulieu_rtc(unsigned char x) { unsigned char temp; temp = x/16; ghi_chuoi(rtc[temp]); temp = x%16; ghi_chuoi(rtc[temp]); } /**********************************************************************/ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// // CAC CHUONG TRINH CON GIAO TIEP VOI RTC // //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// // ca dk start va stop dc tao boi thiet bi chu void start_rtc(void) //dk start: su cdoi tthai tu cao xuong thap tren duong sda { //duong scl dang o muc cao scl=1; sda=1; _nop_(); _nop_(); sda=0; scl=0; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// 42 Bài tập lớn môn Thực hành sở void stop_rtc(void) duong { //dk stop: su cdoi trang thai tu muc thap len cao tren duong sda // slc dang o muc cao sda=0; scl=1; _nop_(); _nop_(); sda=1; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// void gui_rtc(unsigned char x) { unsigned char i; for(i=0;i cai dat gio { caidat_rtc(); co=0; } } } 3.3 Kết mô 53 Bài tập lớn môn Thực hành sở KẾT LUẬN Sau thờigian tìm hiểu, nhóm chúng em hoàn thành đề tài " Mạchhiểnthịthờigian, ngày, tháng, năm,phútgiâyLCD,sửdụngviđiềukhiểnhọ8051ICthờigianthực DS1307 Có chỉnh thờigian,ngày tháng" Đồng hồhiểnthị đƣợc thứ, ngày, tháng, năm, giờ, phút, giây, cài đặt đƣợc thờigian thơng qua giao tiếp phím ấn Qua chúng em đƣợc củng cố kiến thức học, kết hợp đƣợc với thực tiễn, phục vụ cho công việc tƣơng lai nhiều Chúng em cố gắng đểthựcđề tài cách hồn thiện nhanh có thể, nhƣng trình độ hạn chế nên nhiều thiếu sót, đề tài dừng lại việc làm đồng hồhiểnthịthờigian đơn giản Cũng với đề tài này, tƣơng lai chúng em phát triển mức cao hơn, kết hợp chúng với thiết bị khác đểsửdụngthực tiễn sống nhƣ đồng hồ kèm đo nhiệt độ, hẹn giờ, chuông báo, lịch làm việc cá nhân hay tập thể,… 54 Bài tập lớn môn Thực hành sở DANH MỤC TÀI LIỆU THAM KHẢO [1] Bài giảng vi xử lý–vi điềukhiển – Đại học Kỹ Thuật Công Nghiệp [2] Bài giảng Hệ thống Nhúng – Đại học Kỹ Thuật Công Nghiệp [3] Giáo trình họviđiềukhiển8051 – Tống Văn Ôn [4] Hƣớng dẫn sửdụng kit 8051 – BKIT HARDWARE CLUB [5] Programing Embedded Systems II – Michael J.Pont – Unisversity of Leicester Các trang web tham khảo: [1] http://www.keil.com/forum/ [2] http://vagam.dieukhien.net/ [3] http://vidieukhien.net/ [4] http://www.8051projects.net/ [5] http://www.hocavr.com/index.php/app/textlcd [6] http://www.hocavr.com/index.php/app/ds1307 55 ... hiển thị thời gian, ngày, tháng, năm, phút giây LCD, sử dụng vi điều khiển họ 8051 IC thời gian thực DS1307 Có chỉnh thời gian, ngày tháng" Mục đích đề tài hƣớng đến: tạo bƣớc đầu cho sinh vi n thử... ứng dụng thiết kế thời gian thực IC thời gian thực, vi điều khiển, cách thức hiển thị thời gian thực IC thời gian thực: Hiện thị trƣờng có loại IC thời gian thực phồ biến DS1307 DS12887 Các IC. .. Khối điều khiển trung tâm sử dụng vi điều khiển AT89C51, qua chƣơng trình lập trình đƣợc nạp cho chip, vi điều khiển điều khiển vi c đọc, ghi thời gian thực, hiển thị thời gian lên khối hiển thị