Luận văn tốt nghiệp Hệ thống báo giờ tự động BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT KHOA ĐIỆN _ ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: ỨNG DỤNG CPU Z80 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG BÁO GIỜ TỰ ĐỘNG SVTH : PHAN THANH TÀI LỚP : 95KĐĐ GVHD : TS_ TRẦN THU HÀ TP. HỒ CHÍ MINH Tháng 3-2000 Luận văn tốt nghiệp Hệ thống báo giờ tự động Đại học quốc gia TP. HCM Cộng hòa xã hội chủ nghóa Việt Nam Trường Đại Học Sư Phạm Kỹ Thuật Độc lập – Tự do – Hạnh phúc KHOA ĐIỆN _ ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ NHIỆM VỤ LUẬN VĂN TỐT NGHIỆP Họ và tên : PHAN THANH TÀI Lớp : 95KĐĐ 1- Tên đề tài: ỨNG DỤNG CPU Z80 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG BÁO GIỜ TỰ ĐỘNG 2- Các số liệu ban đầu: ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… 3- Nội dung các phần thuyết minh và tính toán : ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… 4- Các bảng vẽ và đồ thò: ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………… 5- Cán bộ hướng dẫn: TS-Trần Thu Hà 6- Ngày giao nhiệm vụ: 7- Ngày hoàn thành nhiệm vụ: 28/02/2000 Cán bộ hướng dẫn ký tên Thông qua bộ môn Ngày tháng năm 2000 Chủ nhiệm bộ môn Luận văn tốt nghiệp Hệ thống báo giờ tự động LỜI CẢM TẠ Có lẽ không một ai có thể quên được những mái trường mà mình đã đi qua trong một thời thơ ấu cho đến lúc trưởng thành và tôi không phải là một ngoại lệ. Các mái trường đã lần lượt nối tiếp nâng dần từng bước đi lên của tôi. Cứ sau mỗi chặng đường đi qua, tôi lại thấy mình lớn lên, vững vàng hơn trong kiến thức và năng lực. Chặng đường vừa đi qua là chặng đường cuối cùng của thời cắp sách đến trường đó là năm năm dài đầy cam go và thử thách dưới mái trường Đại Học Sư Phạm Kỹ Thuật. Nơi đây đã không chỉ đơn giản cung cấp cho tôi những kiến thức khoa học kỹ thuật mà quý hơn cả là đã nhóm trong tôi ngọn lửa yêu khoa học và rèn luyện cho tôi một nghò lực vững vàng để làm hành trang bước vào đời. Bên cạnh đó gia đình còn là nguồn động lực to lớn về tinh thần lẫn vật chất giúp cho tôi bước đi trên con đường mà tôi đã chọn. Con xin cảm ơn ba mẹ đã không quản khó nhọc lo toan chăm chút cho con, nuôi dưỡng con thành người. Nay con kính dâng lên ba mẹ những gì con đã gặt hái được trên ghế nhà trường. Xin cảm ơn những mái trường mà tôi đã đi qua suốt thời niên thiếu. Tôi sẽ ghi nhớ mãi công ơn của tất cả thầy cô đã dìu dắt tôi từ những buổi học vở lòng đến nay. Cảm ơn trường Đại Học Sư Phạm Kỹ Thuật, nơi in đậm những vui buồn, thất bại và thành công của tuổi sinh viên. Kính lời cảm ơn khoa điện cùng các thầy cô của khoa, tất cả như những người thân đã dành nhiều tình cảm tốt đẹp đối với tôi và tạo mọi điều kiện thuận lợi để tôi học tập tốt. Gởi đến cô Trần Thu Hà lời ghi ơn vô vàn, người cô đã trực tiếp theo sát, tận tình hướng dẫn tôi trong suốt quá trình làm luận văn. Sau cùng là lời cảm ơn chân thành về những ý kiến đóng góp của q thầy cô và tất cả bạn đọc. Luận văn tốt nghiệp Hệ thống báo giờ tự động LỜI NÓI ĐẦU Kỹ thuật vi xử lí với tốc độ phát triển nhanh đã và đang mang đến những thay đổi to lớn trong khoa học và công nghệ cũng như trong đời sống hàng ngày. Ngày nay, các thiết bò, máy móc ngày càng trở nên thông minh hơn và dễ sử dụng hơn. Các công việc được thực hiện với hiệu quả cao hơn. Đó cũng nhờ vào kỹ thuật vi xử lí. Kỹ thuật vi xử lí là kỹ thuật của tương lai, là chìa khóa đi vào công nghệ hiện đại. Đối với sinh viên chuyên ngành Điện Tử, đây là một lónh vực mới, hứa hẹn mở ra nhiều triển vọng. Để góp phần làm nền tảng ban đầu cho việc học tập, tìm hiểu kỹ thuật vi xử lí người viết đề nghò thực hiện đề tài : ỨNG DỤNG CPU Z80 VÀO HỆ THỐNG BÁO GIỜ TỰ ĐỘNG. Trong quá trình thực hiện đề tài, mặc dù người viết đã rất cố gắng, xong chắc chắn không tránh khỏi thiếu xót. Rất mong nhận được sự góp ý, phê bình và chỉ dẫn của q thầy cô và bạn đọc. Luận văn tốt nghiệp Hệ thống báo giờ tự động MỤC LỤC Lời mở đầu Mục lục PHẦN I : GIỚI THIỆU ĐỀ TÀI I- Mục tiêu đề tài. II- Khả năng của hệ thống báo giờ tự động. III- Một số qui ước. IV- Phương hướng giải quyết. 4.1- Giải pháp phần cứng 4.2- Giải pháp phần mềm V- Nguyên lý chung của hệ thống báo giờ tự động. PHẦN II : NỘI DUNG I- Giới thiệu các dạng mạch đã có trong nước. 1.1- Đề tài “Thiết Kế Và Thi Công Máy Báo Tiết Cho Trường ĐHSPKT” 1.2- Đề tài “Thiết Kế Và Thi Công Mạch Đồng Hồ Báo Giờ”ø. 1.3-Ưu nhược điểm của hệ thống báo giờ tự động dùng “EPROM” và vi xử lí Z80. II- Thiết kế phần cứng. 2.1- Tổng quát phần cứng hệ thống 2.2- Bộ nhớ hệ thống và giải mã đòa chỉ 2.2.1- Bộ nhớ hệ thống 2.2.2- Mạch giải mã đòa chỉ 2.2.3- Tóm tắt 2.3- Khảo sát tính chất ngắt NMI 2.4- Cấu tạo và nguyên tắt hoạt động các khối mạch 2.4.1- Mạch tạo xung đồng hồ 2.4.2- Mạch đònh thời 2.4.3- Mạch bàn phím (Keypro) Luận văn tốt nghiệp Hệ thống báo giờ tự động 2.4.4- Mạch kiểm soát ngắt 2.4.5- Mạch hiển thò (Display) 2.4.6- Mạch điều khiển báo hiệu 2.4.7- Mạch cung cấp điện 2.5- Sơ đồ chi tiết mạch điện hệ thống. III- Thiết kế phần mềm 3.1- Tổng quát phần mềm hệ thống 3.1.1- Chức năng báo hiệu tự động 3.1.2- Chức năng tạo thời gian thực 3.1.3- Chức năng điều chỉnh thời gian thực 3.1.4- Chức năng về Hottime (Xem – Xóa – Đặt) 3.1.5- Chức năng về Skiptime (Xem – Xóa – Đặt) 3.1.6- Các chương trình con Chương trình con hiển thò (tên là Display) Chương trình xử lí bàn phím (tên là Keypro) Chương trình báo lỗi (tên là ERROR) 3.2- Tổ chức dữ liệu 3.2.1- Thời gian thực 3.2.2- Restime 3.2.3- Hottime 3.2.4- Skiptime 3.2.5- Mã chuông 3.2.6- Các biến 3.2.7- Phân chia vùng nhớ 3.3- Các chương trình 3.3.1- Chương trình MAIN 3.3.2- Chương trình RTP (Real Time Program) 3.3.3- Chương trình Settime 3.3.4- Chương trình Hottime 3.3.5- Chương Trình Skiptime Luận văn tốt nghiệp Hệ thống báo giờ tự động 3.3.6- Chương trình con Display 3.3.7- Chương trình con Keypro 3.3.8- Chương trình con ERROR IV- Thi công PHẦN III : KẾT LUẬN VÀ KIẾN NGHỊ I- Kết quả thực nghiệm II- Mô tả hệ thống và hướng dẫn sử dụng 2.1- Chức năng điều chỉnh thời gian thực (Settime) 2.2- Chức năng về Hottime 2.3- Chức năng về Skiptime III- Kết luận và hướng phát triển của đề tài IV- Kiến nghò Phụ lục Tài liệu tham khảo Luận văn tốt nghiệp Hệ thống báo giờ tự động PHẦN I GIỚI THIỆU ĐỀ TÀI Luận văn tốt nghiệp Hệ thống báo giờ tự động I- MỤC TIÊU CỦA ĐỀ TÀI: Việc báo hiệu thời gian trong trường học, trong phân xưởng sản xuất hay ở các xí nghiệp … tuy rất đơn giản nhưng đòi hỏi phải có người quản lý theo dõi thường xuyên và báo hiệu chính xác. Để đề phòng cháy nổ cho các cơ quan, kho tàng … cần phải được trang bò các thiết bò phát hiện hỏa hoạn. Việc phát hiện sớm các vụ hỏa hoạn sẽ hạn chế được những thiệt hại về tính mạng con người cũng như của cải vật chất. Mục tiêu của đề tài là thiết kế một Hệ Thống có những khả năng sau: _ Tạo ra thời gian thực. _ Tự động báo hiệu tại những thời điểm đã được qui đònh (Gồm những thời điểm được đặt trước trong ROM và những thời điểm do người sử dụng tự đặt vào Hệ Thống qua bàn phím). _ Việc báo hiệu có thể được thực hiện bằng nhiều cách khác nhau. _ Thăm dò các thiết bò phát hiện hỏa hoạn (Sensors) và phát tín hiệu báo động khẩn cấp khi có hỏa hoạn xảy ra. Trong khuôn khổ của luận văn tốt nghiệp, người viết chỉ thiết kế Hệ Thống thực hiện việc tạo thời gian thực và tự động báo hiệu tại những thời điểm đã được qui đònh. Hệ Thống có tên gọi “Hệ Thống Báo Giờ Tự Động” được thiết kế nhằm mục đích thay thế người quản lý tự động báo hiệu tại các thời điểm trong ngày một cách chính xác. II- KHẢ NĂNG CỦA HỆ THỐNG BÁO GIỜ TỰ ĐỘNG: Với tên gọi “Hệ Thống Báo Giờ Tự Động” Hệ Thống có những khả năng sau: _ Cho phép theo dõi thời gian thực (Gồm thứ, giờ, phút và giây) và điều chỉnh thời gian thực. _ Tự động báo hiệu tại những thời điểm cố đònh hằng ngày (Những thời điểm này được đặt sẵn theo yêu cầu nơi sử dụng). Không báo hiệu vào ngày thứ 7 và Chủ nhật. _ Cho phép người sử dụng đặt vài thời điểm báo hiệu đột xuất trong ngày. _ Người sử dụng có thể cấm báo hiệu tại những thời điểm nào đó trong ngày. _ Cho phép xem lại hay xóa mất bất kì thời điểm nào do người sử dụng tự đặt vào Hệ Thống. _ Tiếng chuông báo hiệu đa dạng: số hồi chuông, độ dài hồi chuông được thay đổi nhằm thể hiện mục đích mỗi thời điểm báo hiệu. _ Hệ Thống vẫn làm việc khi mất điện lưới (nhưng sẽ không báo hiệu). Luận văn tốt nghiệp Hệ thống báo giờ tự động _ Hệ Thống có đèn chỉ thò yêu cầu đặt lại thời gian thực khi việc tạo thời gian thực bò gián đoạn. _ Hệ Thống có khả năng phát hiện ra lỗi và sẽ gởi thông báo lỗi đến người sử dụng qua led hiển thò. III- MỘT SỐ QUI ƯỚC : Để ngắn gọn trong trình bày, người viết xin qui ước các thuật ngữ sau đây: _ Điều chỉnh thời gian thực: là thay đổi thời điểm hiện tại, gọi là SETTIME _ Thời điểm báo hiệu thường trực: là những thời điểm báo hiệu cố đònh hàng ngày, chẳng hạn như giờ học trong trường học, gọi là RESTIME. _ Thời điểm báo hiệu tức thời: là những thời điểm do ngươi sử dụng tự đặt vào Hệ Thống để báo hiệu đột xuất, gọi là HOTTIME. _ Thời điểm cấm báo hiệu: là những thời điểm do sử dụng tự đặt vào để cấm báo hiệu tại bất kì một thời điểm nào trong ngày, gọi là SKIPTIME. IV-PHƯƠNG HƯỚNG GIẢI QUYẾT: Để Hệ Thống có những tính năng mạnh mẽ, dễ dàng trong sử dụng, người viết dùng kỹ thuật vi xử lý để thiết kế Hệ Thống. Hoạt động của Hệ Thống là sự kết hợp chặt chẽ giữa phần cứng và phần mềm. 4.1-Giải pháp phần cứng: Hệ Thống được thiết kế dựa trên bộ vi xử lí (P Micro processor) Z80 của hãng Zilog. Hệ Thống có: _ Bộ nhớ ROM và RAM phục vụ cho hoạt động của Hệ Thống. _ Tín hiệu đònh thời để phục vụ việc tạo thời gian thực bằng phần mềm. _ Bàn phím để người sử dụng giao tiếp với Hệ Thống. _ Mạch kiểm soát các vectơ ngắt INT mode 0 dùng cho việc phục vụ các chức năng: Settime, Hottime và Skiptime. _ 7 led 7 đoạn để hiển thò thời gian (Thứ, giờ, phút và giây). _ Mạch điều khiển chuông điện để báo hiệu. _ Mạch nguồn cấp điện có accu dự phòng khi mất điện lưới. 4.2. Giải pháp phần mềm: Phần mềm Hệ Thống được thiết kế dựa trên cấu tạo phần cứng Hệ Thống được tổ chức như sau: _ Một IC ROM chứa phần mềm Hệ Thống và bảng Restime. _ Một IC RAM được dùng làm vùng đệm, Stack, bảng Hottime, bảng Skiptime. _ Chương trình ra quyết đònh báo hiệu và điều khiển báo hiệu. . Đề tài Thi t Kế Và Thi Công Mạch Đồng Hồ Báo Giờ”ø. 1.3-Ưu nhược điểm của hệ thống báo giờ tự động dùng “EPROM” và vi xử lí Z80. II- Thi t kế phần cứng. 2.1- Tổng quát phần cứng hệ thống. thời gian thực và tự động báo hiệu tại những thời điểm đã được qui đònh. Hệ Thống có tên gọi Hệ Thống Báo Giờ Tự Động được thi t kế nhằm mục đích thay thế người quản lý tự động báo hiệu tại. SKIPTIME. IV-PHƯƠNG HƯỚNG GIẢI QUYẾT: Để Hệ Thống có những tính năng mạnh mẽ, dễ dàng trong sử dụng, người viết dùng kỹ thuật vi xử lý để thi t kế Hệ Thống. Hoạt động của Hệ Thống là sự kết