luận văn hệ thống báo giờ tự động
Luận văn tốt nghiệp 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 Hệ thống báo giờ tự động Luận văn tốt nghiệp Đạ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 Hệ thống báo giờ tự động Luận văn tốt nghiệp 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. Hệ thống báo giờ tự động Luận văn tốt nghiệp 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. Hệ thống báo giờ tự động Luận văn tốt nghiệp 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) Hệ thống báo giờ tự động Luận văn tốt nghiệp 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 Hệ thống báo giờ tự động Luận văn tốt nghiệp 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 Hệ thống báo giờ tự động Luận văn tốt nghiệp PHẦN I GIỚI THIỆU ĐỀ TÀI Hệ thống báo giờ tự động Luận văn tốt nghiệp 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). Hệ thống báo giờ tự động Luận văn tốt nghiệp _ 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. Hệ thống báo giờ tự động [...]... có khả năng điều chỉnh giờ, phút độc lập với nhau cũng như không có khả năng điều chỉnh theo hướng giảm giờ, phút _ Tự động báo hiệu tại những thời điểm đã được qui đònh, những thời điểm này là cố đònh và được đặt trước trong EPROM Hệ thống báo giờ tự động Luận văn tốt nghiệp 1.3- Ưu nhược điểm của hệ thống bao giờ tự động dùng “EPROM” và vi xử lí Z80 Như vậy hệ thống báo giờ tự động mà người viết thiết... hoạt động của các khối mạch” sẽ giúp chúng ta hiểu rõ hơn hoạt động của Hệ Thống Bước đầu tiên trong việc thiết kế Hệ Thống là phân bố bộ nhớ và thực hiện giải mã đòa chỉ cho các bộ phận của Hệ Thống Luận văn tốt nghiệp 2.2_Bộ nhớ Hệ Thống và giải mã đòa chỉ: 2.2.1_Bộ nhớ Hệ Thống: Hệ Thống báo giờ tự động là một hệ vi xử lí nên việc phân bố bộ nhớ Hệ Thống là hết sức cần thiết Ngoài bộ nhớ ROM, RAM Hệ. .. các thông tin cần thiết như thời gian thực, các Hottime và Skiptime, tạo thông báo lỗi Xử lí bàn phím để nhận lệnh từ người sử dụng Hệ thống báo giờ tự động Luận văn tốt nghiệp PHẦN II NỘI DUNG Hệ thống báo giờ tự động Luận văn tốt nghiệp I- GIỚI THIỆU CÁC DẠNG MẠCH ĐÃ CÓ TRONG NƯỚC Trước đây đã có một vài Hệ Thống báo Giờ Tự Động được thiết kế và thi công Tuy nhiên, do chúng được thiết kế bằng cách dùng... SƠ ĐỒ KHỐI TỔNG QUÁT HỆ THỐNG Hệ thống báo giờ tự động DISPLAY DISPLAY • Nguyên lí hoạt động tổng quát: Hệ thống báo giờ tự động là một hệ vi xử lí nên 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 Vi xử lí được đặt ở chế độ “auto reset” nên khi mới mở điện vi xử lí sẽ bắt đầu đọc bộ nhớ tại đòa chỉ 0000h Đây cũng là đòa chỉ bắt đầu của chương trình hệ thống Ngoài ra, mạch... _ Tín hiệu báo chuông được điều khiển bằng phần mềm nên rất đa dạng nhằm mục đích thể hiện ý nghóa của loại thời điểm báo hiệu _ Có chương trình báo lỗi nhằm tăng thêm tính sống động của hệ thống Nhược điểm: _ Hệ thống sử dụng nhiều IC hơn, nhưng cách kết nối các bộ phận như bộ nhớ, bàn phím, hiển thò lại đơn giản hơn _ Cách viết phần mềm cho hệ thống khó hơn Hệ thống báo giờ tự động Luận văn tốt nghiệp... mã từ BCD ra led 7 đoạn để hiển thò Đòa chỉ : 0h 1h 2h 3h 4h D0 0 0 1 0 1 Dạng sóng Hệ thống báo giờ tự động Luận văn tốt nghiệp 1/60 Hz Do mạch đếm là mạch đếm BCD nên ở phút 60 phải có xung reset mạch đếm phút về 00 và tăng giờ lên 1, tương tự khi giờ bằng 24 phải reset giờ về 00 Nguyên tắc reset mạch đếm phút và giờ như sau: Bit D1 dùng để reset mạch đếm phút Giả sử mạch đếm phút được reset ở mức... ngắn cho cuối tiết Hệ thống báo giờ tự động Luận văn tốt nghiệp 1.2 _ Đề tài : “Thiết Kế Và Thi Công Mạch Đồng Hồ Báo Giờ Giáo viên hướng dẫn : Nguyễn Phương Quang Sinh viên thực hiện : Võ Đức Trí : Đoàn Nam Sơn Lớp : 95KĐĐ3/7 Sơ đồ khối chi tiết mạch KHỐI ĐIỀU KHIỂN BÁO KHỐI HIỂN THỊ KHỐI GIẢI ĐA HP, CHỌN KÊNH KHỐI CHỐT BỘ NHỚ KHỐI DAO ĐỘNG VÀ CHIA TẦN SỐ BỘ GIẢI MÃ ĐỊA CHỈ KHỐI DAO ĐỘNG ĐIỀU CHỈNH... nhớ và đệm: ghi toàn bộ chương trình báo tiết học trong 24 giờ • Tạo xung cho mạch chỉ thò (1 phút) • Tạo xung reset cho mạch chỉ thò sau 60 phút, sau 24 giờ Hệ thống báo giờ tự động Luận văn tốt nghiệp • Tạo xung reset toàn mạch sau 24 giờ (bằng cách reset mạch đếm về trạng thái ban đầu mà tại đòa chỉ đó chứa đoạn chương trình reset toàn mạch) _ Khối điều khiển báo hiệu: • Tạo thời gian dài (7’) cho... sau: HOẠT ĐỘNG CỦA µP ĐỊA CHỈ MERQ TÍN HIỆU ĐIỀU KHIỂN Hiển thò 2000h – 2FFFh L DPL = L Điều khiển báo hiệu 3000h – 3FFFh L BDR = L Đọc bàn phím 4000h – 4FFFh L KBD = L Hệ thống báo giờ tự động Luận văn tốt nghiệp 2.3_ Khảo sát tính chất ngắt NMI : (NON_ MASKABLE INTERRUPT) Ngắt NMI (ngắt không thể che bằng phần mềm) của Z80 là ngắt có độ ưu tiên tuyệt đối Khi có ngắt tác động, chương trình Hệ Thống sẽ... thò gồm 7 led 7 đoạn sẽ thông báo thời gian (Thứ, giờ, phút và giây) và cho phép người sử dụng theo dõi được các thao tác trên bàn phím Mạch kiểm soát ngắt giúp người sử dụng lựa chọn các chế độ hoạt động Settime, Hottime và Skiptime tương ứng với các ngắt INT mode 0 Mạch điều khiển báo hiệu phát ra tín hiệu theo sự điều khiển của phần mềm Hệ thống báo giờ tự động Luận văn tốt nghiệp POWER POWER SUPPLY . đặt trước trong EPROM. Hệ thống báo giờ tự động Luận văn tốt nghiệp 1.3- Ưu nhược điểm của hệ thống bao giờ tự động dùng “EPROM” và vi xử lí Z80. Như vậy hệ thống báo giờ tự động mà người viết thiết. đí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: _. và Skiptime, tạo thông báo lỗi. Xử lí bàn phím để nhận lệnh từ người sử dụng. Hệ thống báo giờ tự động Luận văn tốt nghiệp PHẦN II NỘI DUNG Hệ thống báo giờ tự động Luận văn tốt nghiệp I- GIỚI