Luận văn Tốt nghiệp Ứng dụng CPU Z80 - Thiết kế và thi công hệ thống báo giờ tự động

Tài liệu Luận văn Tốt nghiệp Ứng dụng CPU Z80 - Thiết kế và thi công hệ thống báo giờ tự động

pdf104 trang | Chia sẻ: haohao | Lượt xem: 1221 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Tốt nghiệp Ứng dụng CPU Z80 - Thiết kế và thi công hệ thống báo giờ tự động, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng BOÄ GIAÙO DUÏC VA Ø ÑA ØO TAÏO ÑA ÏI H OÏC QUOÁC GIA TP. H OÀ CH Í MINH TR ÖÔØNG Ñ AÏI HOÏC S Ö PH AÏM KYÕ THUAÄT KHOA Ñ IEÄN _ ÑIEÄN TÖÛ BOÄ MOÂN ÑIEÄN TÖÛ LUAÄN VAÊN TOÁT NGHIEÄP ÑEÀ TAØI: ÖÙNG DUÏNG CPU Z80 THIEÁT KEÁ VAØ THI COÂNG HEÄ THOÁNG BAÙO GIÔØ TÖÏ ÑOÄNG SVTH : PHAN THANH TAØI LÔÙP : 95KÑÑ GVH D : TS_ TRAÀN THU H AØ TP. H OÀ CH Í MINH Th aùng 3-2000 Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Ñaïi ho ïc quoác gia TP. HCM Coäng hoøa x aõ hoäi ch uû ngh óa Vieät Nam Trö ôøng Ñaïi Hoïc Sö Phaïm Kyõ Thuaät Ñoäc laäp – Tö ï do – Haïnh phuùc KHOA ÑIEÄN _ ÑIEÄN TÖÛ BOÄ MOÂN ÑIEÄN TÖÛ NHIEÄM VUÏ LUAÄN VAÊN TOÁT NGHIEÄP H oï vaø teân : PHAN THANH TAØI Lôùp : 95KÑÑ 1- Teân ñ eà ta øi: ÖÙNG DUÏNG CPU Z80 THIEÁT KEÁ VAØ THI COÂNG HEÄ THOÁN G BAÙO GIÔØ TÖÏ ÑOÄNG 2- Caùc so á lieäu ban ña àu: ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… 3- No äi dung caùc phaàn thuyeát minh va ø tính toa ùn : ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… 4- Caùc baûng veõ va ø ñoà t hò: ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………………… ……………………………………… ……………………… ……………………… ………………………… ……………………… ……………… ……… ……………………… ……………… ……………………… ……………………… ………………………… 5- Caùn boä höôùng da ãn: TS-Tra àn Thu Haø Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 6- Ngaøy giao nhieäm vuï: 7- Ngaøy hoa øn thaønh nhieäm vuï: 28/02/2000 Caù n bo ä hö ôùng daãn kyù teân Thoâng qua boä moân Ngaøy thaù ng naêm 2000 Chuû nhieäm bo ä moân LÔØI CAÛM TAÏ Coù leõ khoâng mo ät a i co ù theå queân ñöôïc nhö õng maùi trö ôøng maø mình ñ aõ ñi qua tro ng moät thôøi thô a áu cho ñeán luùc trö ôûng thaønh vaø toâi khoâng phaûi la ø moät ngoaïi leä. Caùc maùi tröôøng ña õ laàn löôït noái tieáp naâng daàn töøng böôùc ñ i leân cu ûa toâi. Cöù sau moãi chaëng ñ öôøng ñi qua, toâi laïi thaáy mình lôùn leân, vöõng va øng hôn trong kieán thöùc vaø naêng löïc. Chaëng ñöôøng vöøa ñ i qua la ø chaëng ñöô øng cuoái cuøng cu ûa thôøi caép sa ùch ñ eán trö ôøng ñoù laø naêm naêm daøi ñaày ca m go v aø thöû thaùch dö ôùi maùi trö ôøng Ña ïi Hoïc Sö Pha ïm Kyõ Thuaät. Nôi ñ aây ñ aõ khoâng chæ ñ ôn giaûn cung ca áp cho toâi nhö õng kieán thöùc khoa hoïc kyõ thuaät maø quyù hôn ca û laø ña õ nho ùm trong toâi ngoïn löûa ye âu khoa hoïc vaø re øn luyeän cho toâi moät nghò löïc vö õng vaøng ñ eå laøm ha ønh trang böôùc vaøo ñô øi. Be ân ca ïnh ñ où gia ñình co øn laø nguoàn ñoäng löïc to lôùn veà tinh thaàn laãn vaät cha át giuùp cho toâi bö ôùc ñi tre ân con ñöô øng maø toâi ña õ choïn. Con xin caûm ô n ba me ï ñ aõ khoâng qua ûn khoù nhoïc lo toan chaêm chuùt cho co n, nuoâi döôõng co n tha ønh ngöôøi. Nay con kính daâng leân ba meï nhöõng gì co n ña õ gaët haùi ñöôïc treân ghe á nha ø tröô øng. Xin ca ûm ôn nhöõng maùi tröô øng maø toâi ñ aõ ñi qua suoát thôøi nieân thieáu. To âi seõ ghi nhôù maõi coâng ôn cuûa taát caû thaày co â ñaõ dìu daét toâi töø nhöõng buoåi hoïc vôû loøng ñ eán nay. Caûm ôn trö ôøng Ñaïi Hoïc Sö Phaïm Ky õ Thua ät, n ôi in ñaäm nhöõng vu i buoàn, thaát baïi vaø thaønh coâng cu ûa tuo åi sinh vieân. Kính lôøi ca ûm ôn khoa ñieän cuøng ca ùc thaày coâ cuûa khoa, taát caû nhö nhö õng ngö ôøi thaân ñ aõ daønh nhieàu tình caûm toát ñeïp ñoái vôùi toâi vaø taïo moïi ñ ieàu kieän thu aän lôïi ñe å toâi hoïc taäp toát. Gôûi ñeán coâ Traàn Thu Haø lôøi ghi ôn voâ va øn, ngöôøi coâ ña õ tröïc tieáp theo saùt, ta än tình höôùng da ãn to âi trong suo át qu aù trình la øm luaän vaên. Sau cuøng laø lô øi caûm ôn chaân tha ønh veà nhöõng yù kieán ñoùng goùp cuûa quí thaày coâ vaø taát caû baïn ño ïc. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng LÔØI NOÙI ÑAÀU Kyõ thuaät vi xöû lí vô ùi to ác ñ oä phaùt t rieån nhanh ñaõ vaø ñang mang ñeán nhöõng thay ñoåi to lô ùn tro ng khoa ho ïc vaø co âng nghe ä cuõng nhö trong ñ ôøi soáng haø ng ngaøy . Ngaøy nay , caùc thie át bò, maùy moùc ngaøy caø ng trôû neân tho â ng minh hô n vaø deã söû duïng hôn. Caùc co âng vie äc ñ öô ïc t hö ïc hieän vôùi hieäu quaû cao hô n. Ño ù cuõng nhôø vaøo ky õ thu aät vi xö û lí. Ky õ thuaät vi xöû lí laø kyõ thuaät cuûa töô ng lai, laø chìa khoùa ñi vaøo coâ ng ngheä hieä n ñ aïi. Ño ái vôùi sinh vieân chuyeân ngaø nh Ñieän Tö û, ñaây laø moät lónh vö ïc mô ùi, hö ùa heïn mô û ra nhie àu t rieån vo ïng. Ñeå go ùp phaàn laøm ne à n t aû ng ban ñaàu cho vie äc hoïc taä p, tìm hieåu ky õ thu aät vi xö û lí ngöô øi vie át ñe à nghò thöïc hieän ñ eà taøi : ÖÙNG DU ÏNG CPU Z 80 VAØO HEÄ THOÁNG BAÙO GIÔØ T ÖÏ ÑOÄNG. Trong qu aù trì nh thö ïc hie än ñ eà taøi, maëc duø ngö ôøi vieát ñaõ raát coá gaéng, xo ng c haéc c haén kho âng traùnh kho ûi thieáu xo ùt. Raát mo ng nhaän ñ öôïc söï goùp yù, pheâ bì nh vaø chæ daã n cu ûa quí thaày coâ vaø baïn ñ oïc. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng MUÏC LUÏC Lôøi môû ñaàu Muïc luïc PH AÀN I : GIÔÙI TH IEÄU ÑEÀ TA ØI I- Muïc ti eâu ñeà ta øi. II- Kha û na êng cuûa heä thoáng baùo g iôø tö ï ñoäng. III- Moät soá qu i öô ùc. IV- Phöông höôùng gia ûi qu yeát. 4.1- Giaûi phaùp phaàn cöùng 4.2- Giaûi phaùp phaàn meàm V- Nguy eân lyù chung cuûa heä thoáng ba ùo g iôø töï ñoäng. PH AÀN II : NOÄI DUNG I- Giôùi thieäu ca ùc daïng maïch ña õ coù trong nöôùc. 1.1- Ñeà taøi “Thi eát K eá Vaø Thi Coâng Maùy Baùo Tieát Ch o Trö ôøng ÑH SPKT” 1.2- Ñeà taøi “Thi eát K eá Vaø Thi Coâ ng Maïc h Ñoàng Hoà Baùo Giôø”ø. 1.3-Öu nhöôïc ñie åm cuûa heä thoáng baùo giôø töï ñ oäng duøng “EPROM” vaø vi xöû l í Z80. II- Thieát keá phaàn cöùng. 2.1- Toång qua ùt phaàn cöùng heä thoáng 2.2- Bo ä nhôù heä thoáng vaø giaûi maõ ñòa chæ 2.2.1- Bo ä nhôù heä thoáng 2.2.2- Maïch giaûi maõ ñòa chæ 2.2.3- To ùm ta ét 2.3- Khaûo saùt tính chaát n gaét NMI 2.4- Ca áu ta ïo va ø nguye ân ta ét hoaït ño äng ca ùc khoái maïch 2.4.1- Maïch taïo xung ñoàng ho à 2.4.2- Maïch ñònh thôøi 2.4.3- Maïch baøn phím (Ke ypro) Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 2.4.4- Maïch kieåm soa ùt ngaét 2.4.5- Maïch hieån thò (Display ) 2.4.6- Ma ïch ñie àu khieån baùo hieäu 2.4.7- Maïch cung ca áp ñieän 2.5- Sô ño à chi tieát ma ïch ñ ieän heä thoáng. III- Thieát keá phaàn meàm 3.1- Toång qua ùt phaàn meàm heä thoáng 3.1.1- Ch öùc naêng baùo hieäu töï ñoäng 3.1.2- Ch öùc naêng ta ïo thôøi gian thöïc 3.1.3- Ch öùc naêng ñ ieàu chænh thôøi gian thöïc 3.1.4- Ch öùc naêng veà Hottime (Xem – Xoùa – Ña ët) 3.1.5- Ch öùc naêng veà Skiptime (Xem – Xoùa – Ñaët) 3.1.6- Ca ùc chöông trình co n  Chöông trình con hieån thò (teân l aø Display )  Chöông trình xöû lí baøn phím (te ân la ø Keypro )  Chöông trình baùo loãi (teân laø ERROR) 3.2- Toå chöùc dö õ lieäu 3.2.1- Thôøi gian thö ïc 3.2.2- Re stime 3.2.3- Hottime 3.2.4- S kiptime 3.2.5- Maõ chuo âng 3.2.6- Ca ùc bieán 3.2.7- P haân chia vuøng nhôù 3.3- Ca ùc chö ông trình 3.3.1- Ch öông trình MAIN 3.3.2- Ch öông trình RTP (Real Time P rogra m) 3.3.3- Ch öông trình Settime 3.3.4- Ch öông trình Hottime 3.3.5- Ch öông Trình Skiptime Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 3.3.6- Ch öông trình con Display 3.3.7- Ch öông trình con Ke ypro 3.3.8- Ch öông trình con ERROR IV- Thi coâng PH AÀN III : KEÁT LUAÄN VAØ KIEÁN NGHÒ I- Keát qua û thöïc nghieäm II- Moâ taû heä thoáng vaø höô ùng daãn sö û duïng 2.1- Chö ùc naêng ñie àu chænh thôøi gia n thöïc (Settime ) 2.2- Chö ùc naêng veà Ho ttime 2.3- Chö ùc naêng veà Skiptime III- Keát luaän vaø höôùng phaùt trieån cuûa ñe à taøi IV- Kieán nghò Phuï luïc Taøi lieäu tham khaûo Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng PHAÀN I GIÔÙI THIEÄU ÑEÀ TAØI Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng I- MUÏC TIEÂU CUÛA ÑEÀ TAØI: Vieäc baùo hieäu thô øi gian trong trö ôøng hoïc, tro ng phaâ n xö ôûng saû n xu aát hay ôû caùc xí nghieäp … tuy raát ñô n giaû n nhö ng ñ oøi hoûi phaûi c où ngö ôøi quaûn ly ù theo doõi thö ôøng xuyeân vaø baùo hieäu chính xaùc. Ñeå ñ eà pho øng chaùy no å cho caùc cô qu an, kho taøng … caà n phaûi ñ öô ïc trang bò c aùc thieát bò phaùt hieän ho ûa hoaïn. Vieäc phaùt hie än sô ùm caùc vuï ho ûa hoaï n se õ haï n cheá ñ öô ïc nhöõng t hieät haïi ve à tính maï ng co n ngöôøi cu õng nhö cu ûa caûi vaät chaát. Mu ïc tieâu cu ûa ñe à taøi laø thie át keá moät He ä Thoáng co ù nhöõng khaû naê ng s au : _ Taïo ra thôøi gian t hö ïc. _ Tö ï ñoäng baùo hieäu taïi nhöõng thôøi ñie åm ñaõ ñöô ïc qu i ñònh (Goàm nhöõng t hô øi ñie åm ñ öô ïc ñ aët tröôùc tro ng ROM vaø nhöõ ng thôøi ñ ieåm do ngöô øi söû duïng tö ï ñaët vaøo Heä T ho án g qua baø n phím). _ Vieäc baùo hieäu co ù theå ñ öôïc thöïc hieän baè ng nhie àu caùch khaùc nhau. _ T haêm do ø caù c thieát bò phaùt hieän hoûa ho aï n (Se nsors) vaø phaùt tín hie äu baùo ño än g khaå n caá p khi co ù ho ûa ho aï n xaûy ra. Trong khu oân khoå cuûa luaän vaê n to át nghie äp, ngö ôøi vieát chæ thieát ke á He ä Tho áng thö ïc hieän vieäc taïo thô øi gian thö ïc vaø töï ñ oäng baùo hie äu taïi nhöõng thôøi ñie åm ñ aõ ñ öô ïc qui ñònh. Heä Tho áng coù te ân goïi “Heä T hoáng Baùo Giôø Tö ï Ñoäng” ñö ôïc thieát keá nhaèm muïc ñích thay theá ngöôøi qu aûn lyù töï ñoäng baùo hieäu taïi caùc thôøi ñ ieåm tro ng ngaøy moät caùch chính xaùc. II- KHAÛ NAÊN G CUÛA HEÄ THOÁNG BAÙO GIÔØ TÖÏ ÑOÄNG: Vô ùi te ân goïi “Heä Thoáng Ba ùo Giôø Töï Ñoäng ” Heä Thoáng co ù nhöõng khaû naê ng sau: _ Cho pheùp the o doõi thôøi gia n t hö ïc (Goàm thöù, giô ø, phuùt vaø giaây) vaø ñ ieàu chænh thôøi gian thöïc. _ T öï ño äng baùo hieäu taïi nhöõng thôøi ñ ieåm co á ñònh haèng ngaøy (Nhöõ ng thôøi ñ ieåm naøy ñ öô ïc ñ aët saün the o yeâu caàu nô i söû du ïng). Kho âng baùo hie äu vaøo ngaøy thöù 7 vaø Chu û nhaät. _ Cho pheùp ngöô øi söû du ïng ñaët vaøi t hôøi ñie åm baùo hieäu ñoät xuaát tro ng ngaøy . _ Ngöôøi söû du ïng co ù theå caám baùo hieäu taïi nhöõng thôøi ñie åm naøo ñ où trong ngaøy. _ Cho pheù p xem laïi hay xo ùa maát baát kì thôøi ñie åm naøo do ngöô øi söû duïng tö ï ñaët vaøo Heä Tho áng. _ Tieáng c hu oâng baùo hie äu ñ a daïng: so á ho ài c hu oâng, ñ oä daøi hoài chuoâng ñöô ïc thay ñ oåi nhaèm the å hieän mu ïc ñ ích mo ãi thôøi ñ ieåm baùo hieäu. _ He ä Thoáng vaã n laøm vie äc khi maát ñ ieän löôùi (nhö ng seõ khoâng baùo hieäu). _ Heä Thoáng co ù ñe øn chæ thò ye âu caàu ñ aët la ïi thôøi gian thöïc khi vie äc ta ïo thôøi gian thöïc bò giaùn ñoa ïn. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng _ He ä Thoáng coù khaû naêng phaùt hieän ra lo ãi vaø seõ gôûi tho âng baùo loãi ñeán ngöô øi söû duïng qua led hieån thò. III- MOÄT SOÁ QUI ÖÔÙC : Ñeå ngaén goïn trong trình ba øy, ngöôøi vie át xin qu i öô ùc caùc thuaät ngöõ sau ña ây: _ Ñieàu ch ænh thôøi gia n thö ïc: laø thay ñoåi thô øi ñ ieåm hieän taïi, goïi laø SETTIME _ Thôøi ñieåm baùo hieäu thö ôøng tröïc: laø nhö õng thôøi ñ ieåm baùo hieäu coá ñònh haøn g ngaøy, chaú ng haïn nhö giôø hoïc trong tröô øng hoïc, goïi laø RESTIME. _ Thôøi ñieåm baùo hieäu töùc thôøi: laø nhöõng thô øi ñie åm do ngöô i söû du ïng töï ñ aët vaøo He ä Thoáng ñeå baùo hieäu ño ät xuaát, goïi l aø HOTTIME. _ Thôøi ñieåm caám baùo hieäu: laø nhöõng thôøi ñie åm do sö û du ïng töï ñ aët vaøo ñ eå caám baùo hieäu taïi baát kì moät thô øi ñieåm naøo trong ngaøy, go ïi laø SKIPTIME. IV-PHÖÔN G HÖÔÙNG GIAÛI QUYEÁT: Ñeå He ä Tho áng coù nhö õng tính naê ng maïnh me õ, deã daøng t rong sö û du ïng, ngöô øi vieát du øn g kyõ thuaät vi xöû lyù ñe å thieát ke á Heä T ho áng. Hoaït ñ oäng cuûa Heä T ho áng laø sö ï keát hôïp c haët che õ giöõa p haàn cöùng vaø phaà n me àm. 4.1-Giaûi phaùp phaàn cöùng: Heä T ho áng ñö ôïc thieát keá döïa treân bo ä vi xöû lí (P M icro processor) Z 80 cuûa haõn g Zi log. Heä Tho áng coù: _ Boä nhô ù ROM vaø RAM phuïc vuï cho hoaït ño äng cuûa Heä Thoáng. _ Tín hie äu ñ ònh thôøi ñe å phuïc vuï vieäc taïo thôøi gian thö ïc baèng phaà n meàm. _ Baø n phím ñe å ngöôøi söû duïng giao tieáp vôùi He ä Tho áng. _ M aï c h kieåm soaùt caùc ve ctô ngaét INT mode 0 duøng c ho vie äc phu ïc vu ï caù c c hö ùc naê ng: Settime , Ho ttime vaø Skiptime . _ 7 l ed 7 ñoaïn ñeå hie ån t hò thô øi gian (Thöù, giô ø, phuùt vaø giaây). _ Maïc h ñieàu khieån chuo âng ñi eän ñe å baùo hieäu . _ Maïc h nguoàn caáp ñieän coù accu dö ï phoøng khi maá t ñ ieän löôùi. 4.2. Giaûi phaùp phaàn meàm: Phaàn meàm Heä Thoáng ñ öô ïc thie át ke á dö ïa tre ân caá u taïo phaàn cöùng Heä Thoáng ñ öô ïc to å chö ùc nhö sau: _ Moät IC ROM chöùa phaà n meàm Heä Thoáng vaø baû ng Restime . _ Moät IC RAM ñöô ïc du øng laøm vuøng ñ eäm, S tack, baû ng Hot time, baûng Skiptime . _ Chö ông trình ra qu ye át ñònh baùo hieäu vaø ñ ieàu khie ån baùo hieäu. _ Chö ông trình phuïc vuï ngaét NMI ñ eå ñ eám thôøi gian t höïc. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng _ Caùc c hö ông trình phu ïc vu ï caùc ngaét INT mode 0 ñ eå thöïc hie än caù c c hö ùc naê ng: Settime , Hot time vaø S kiptime. _ Xö û ly ù baø n phím vaø hie ån t hò ñeå ngöôøi söû duïng giao ti eáp vô ùi Heä T ho áng. Treân ñaây laø giaûi phaùp kyõ thuaät maø ngöôøi vieát choïn ñeå thieát keá Heä Thoáng. V- NGUYEÂN LYÙ CHUNG CUÛA HEÄ THOÁNG BAÙO GIÔØ TÖÏ ÑOÄNG : Boä vi xö û lyù (P) Z80 laø mo ät P 8 bit, coù khaû naê ng truy xuaát 64K B bo ä nhôù, coù nhie àu kieåu ngaét. Taà n soá xung clock toái ñ a 2.5MHz (hoï Z80 CPU). Taä p le änh goàm 158 le änh. Trong quaù trình hoaït ño äng cu ûa Heä Thoáng, cö ù mo ãi giaây tín hieäu ñ ònh thôøi taùc ñoäng vaøo ngaét NMI ñ eå go ïi chö ông trì nh taïo thô øi gia n thö ïc vaø moãi giaây thô øi gian thö ïc ñ öô ïc hieån thò tre ân ñ eøn led 7 ño aïn. Chö ông trì nh phaàn meàm thöôøng xu ye ân thöïc hieän quaù trì nh so saù nh t hôøi gia n t hö ïc vôùi tö øng Restime , Hot time, Skiptime vaø thöù t ro ng tuaàn ñeå ra qu ye át ñ ònh baùo hie äu. Khi coù tín hie äu goïi ngaét INT , tu øy vaøo ñ òa chæ ngaét mo de 0, caùc chö ùc naê ng nhö: Xem_Xoùa_Ñaët Hottime , Xe m_Xoùa_Ñaët Skiptime vaø Settime seõ ñ öôïc chöông trìn h tö ông ö ùng phuïc vu ï. Khi ñoù, tho âng qu a baø n phím vaø ñeøn hieå n thò ngö ôøi söû du ïng seõ thö ïc hieän caù c chö ùc naêng ñaõ choïn. Nhìn chung: Ngöôøi vie át thaáy ye âu caàu phaà n cöù ng ngoaøi boä vi xö û lí vaø boä nhô ù (R OM vaø RAM) caà n phaûi coù maïc h hieå n thò, baøn phím, maïc h kieåm soaùt ngaét mode 0, maïc h ñi eàu khieå n baùo hieäu, maïch t aïo xu ng ño àng ho à vaø ñ ònh thôøi. Veâà phaà n me àm, ngoaøi vie äc khô ûi ño äng He ä Tho áng caàn phaûi thö ïc hieän caùc nhieäm vu ï sau: taïo thô øi gian thöïc, qu ye át ñ ònh vieäc baùo hieäu vaø ñ ieàu khieå n baùo hie äu . Phu ïc vuï ngö ôøi söû duïng ñi eàu chæ nh t hô øi gia n thöïc, thö ïc hieä n caùc c hö ùc naê ng veà Hottime vaø Skiptime. Ñieàu khieån maïch hie ån thò ñe å hieån thò caùc thoâng tin caà n thieát nhö thô øi gia n thöïc, caùc Hot time vaø Ski ptime , taïo thoâng baùo lo ãi. Xö û lí baø n phím ñ eå nhaä n l eänh tö ø ngöôøi söû duïng. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng PHAÀN II NOÄI DUNG Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng I- GIÔÙI THIEÄU CAÙC DAÏNG M AÏCH ÑAÕ COÙ TRONG NÖÔÙC. Tröô ùc ñaây ñaõ co ù mo ät vaøi He ä Thoáng baùo Giôø Töï Ñoäng ñöô ïc thieát keá vaø thi co âng. Tuy nhie ân, do c huùng ñö ôïc thieát keá baèng caùch du ø ng “Epro m” ne â n ñ aõ vaáp phaûi moät vaøi haï n che á ve à tí nh naê ng tro ng söû du ïng cu õng nhö vie äc tính to aù n phöùc taï p tro ng ke át no ái phaà n cöùng. Sau ñ aây , ngö ôøi vieát seõ giôùi thieäu hai daï ng maïch du øng “E pro m” ñ ieån hì nh. 1.1_ Ñeà taøi : “Thieát Keá Vaø Thi Coâng Maùy Baùo Tieát Cho Tröôøng ÑHSPKT” Gvhd: Traàn Minh Chaù nh. Svth : Ngu ye ãn Ñình Maïnh Chie á n Traàn Thò Baïc h Ngo ïc Sô ñoà khoái chi tieát maïch: Trình baøy sô ñoà khoái: _ Khoái dao ñ oäng: taïo t aà n so á c hu aå n 1Hz laøm taà n soá cô sôû ñ eå maïc h ho aït ñ oäng vaø taïo xung ñ ie àu khie ån maïch baùo giaây. _ Khoái chia 30: taïo taàn soá 1/30 Hz tö ùc ½ giaây laø taà n so á ñ eå maïch ñeám thay ño åi ñ òa chæ bo ä nhôù. _ Kho ái ñeá m: Laø maïch ñeá m leân laø m taêng daàn ñòa chæ boä nhôù sau moãi xung ½ giaây. Co ù theå ña ët laïi tra ïng thaùi ban ña àu (reset) baèng ta y hoaëc töø n goõ ra cuûa boä nhôù. _ Khoái nhôù vaø ñ eäm: ghi toaøn bo ä chöông trình baùo ti eát hoïc trong 24 giôø.  Taïo xung c ho maïc h chæ t hò (1 phu ùt) .  Taïo xung re set cho maïch chæ t hò sau 60 phuùt, sau 24 giôø.  Taïo xung re se t toaøn maïch sau 24 giô ø (baèng ca ùch reset maïch ñe ám veà traïng thaùi ban ña àu ma ø taïi ñòa chæ ño ù chöùa ñoaïn chöông trình reset toaøn ma ïch). COÂNG SU AÁT VA Ø TAÛI DAO ÑO ÄNG 1Hz CHI A 30 OR NGUOÀN 12 V. 5V DAO ÑO Ä NG CHÆ NH ÑEÁM NHÔÙ VAØ ÑE ÄM ÑIEÀU KHI EÅN BA ÙO CHÆ THÒ Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng _ Kho ái ñieàu khieå n baùo hie äu:  Taïo thôøi gian daøi (7’) cho ñ aàu tie át hoïc.  Taïo thôøi gian ngaén (3’) cho cuo ái tieát hoïc.  Taét mô û baùo baè ng tay theo yeâu caàu sö û du ïng (ALARM ON/OFF). _ Khoái coâng suaát: goàm transistor co âng suaát, rô le ño ùng caét taûi AC, DC ( 110V, 220V). _ Khoái dao ñ oäng ñie àu chæ nh: Taïo taà n soá dao ñ oäng cao hô n taà n soá dao ñ oäng cô baû n ñ eå ñ ieàu chænh laïi ño àng ho à baùo giôø.  Chænh vô ùi toác ñoä nha nh.  Chænh vô ùi toác ñoä chaäm. _ K ho ái nguo àn: Go àm coù maïch oå n aù p, m aïc h baûo veä nhaèm cöïc tính ngu oàn accu töø beân ngoaøi Nguyeân lyù ho aït ñoäng cô baûn cuûa he ä thoáng nhö sau: Döõ lie äu töø 0 ñe án 23 giô ø vaø tín hie äu ñ ieàu khieån baùo c huoâng ñöôïc naïp tro ng moät IC ROM 2732. Dö õ lieäu naøy kho âng xuaát tröïc tieáp ra led 7 ñ oaïn ñe å hie ån thò maø c hu ùng co ù nhie äm vuï taïo ra xu ng cloc k c ho maïc h ñ eám BCD vaø xung re set cho maïch ñ eám sau 60 phu ùt vaø s au 24 giôø. Nguyeân taéc taïo ra x ung clock cho maïch ñeám BCD n hö sau : Cöù moãi phuùt ô û ngo õ ra cuûa IC ROM seõ xu aát hai 2 by te, ôû bit D0 cuûa by te thöù nhaát co ù giaù trò laø 0 vaø byte thö ù 2 coù giaù trò laø 1, IC ROM cö ù tuaàn hoaøn xuaát ra dö õ lieäu nhö t he á neân ôû bit D 0 ngoõ ra seõ taïo thaø nh moät chu oãi xung lieân tuïc co ù taàn so á laø 1/60 Hz hay 1 phu ùt (daï ng c huoãi xung coù ñ öô ïc moâ taû ô û hình phía dö ôùi) kích cho maïch ñeám BCD ñeå maïch ñe ám naøy cöù ñ eám taêng leân, sau ñ où so á ñe ám BCD naøy se õ ñöôïc giaûi maõ töø BCD ra le d 7 ñoaïn ñeå hieån thò. Ñòa chæ : 0h 1h 2h 3h 4h D0 0 1 0 1 0 Daïng so ùng 1/60 Hz Do maïch ñe ám laø maïc h ñ eám BCD neân ôû phuùt 60 phaûi co ù xu ng rese t maïc h ñ eám phuùt veà 00 vaø taê ng giô ø leân 1, tö ông t öï khi giô ø baè ng 24 phaûi re se t giôø ve à 00. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Nguyeân taéc reset maïch ñeám ph uùt vaø g iôø nhö sau: Bit D1 du øng ñe å reset maïch ñe ám phu ùt. Giaû söû maï ch ñe ám phu ùt ñ öôïc re set ô û möùc 0 thì taát caû caùc by te ô û phu ùt 60 phaûi ñaët bit D1 = 0 coøn caùc byte khaùc phaûi ñ aët bit D1 = 1. Töô ng töï nhö reset maïch ñeám phu ùt, bit D 2 du ø ng ñe å rese t maïch ñe ám giô ø. Byte töông ö ùng vô ùi 24 giô ø phaûi ñaët bit D2 = 0 (giaû söû maïch ñeám giôø coù re set taùc ño äng mö ùc 0) coøn caùc byte coøn laïi phaûi ñaët bit D2 = 1. VD : Maïch re set phuùt taùc ño äng möùc 0 thì phaûi ghi chö ông trình nhö sau: Ñòa chæ : 118D 119D 102D 121D Giôø öùng : 0:59 0:59: 30 1:00:00 1:00:30 D1 : 1 1 0 1 D0 ck CO ck CO ck CO ck Reset 60 phu ùt Reset 24 giôø D1 D2 SÔ ÑOÀ MAÏCH ÑEÁM BCD CHO PHUÙT, GIÔØ Nguyeân taéc xuaát tín hi eäu ñieàu kh ieån ch uoâng: Söû duïng bit D 4 ñ eå phaùt tín hie äu ñi eàu khieån c huoâng c ho ñaàu tieát hoïc vaø bit D 5 ñeå phaùt tín hieäu ñie àu khieån chuoâng ôû cuo ái ti eát hoïc, phaûi du øng 2 bit ñe å ñie àu khieå n chuoâng l aø do phaûi söû duïng 2 maïch dao ñ oäng ñ ôn oån, moät maïch ñònh thôøi gia n daøi cho ñ aàu tieát vaø moät maïch ñònh thôøi gia n ngaén cho cu oái tieát. 1.2 _ Ñeà taøi : “Thieát Keá Vaø Thi Coâng Maïch Ñoàng Hoà Baùo Giôø” Giaùo vieân hö ôùng daã n : Nguyeãn Phöô ng Quang Sinh vie â n t hö ïc hieä n : Voõ Ñö ùc Trí IC1 IC2 Phu ùt Chuïc phuùt IC3 Giô ø IC4 Chuïc gi ôø Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng : Ño aøn Nam Sôn Lôùp : 95KÑÑ3/7 Sô ñoà khoái chi tieát maïch. Nhie äm v uï caùc kh oái: _ Khoái taïo xu ng: kho ái naøy co ù chö ùc naê ng taïo dao ñoäng vaø chia taà n soá ñ eå ñ öô ïc xu ng 1 Hz. Xung naøy ñ öô ïc ñöa ñeán bo ä ñe ám vaø giaûi maõ ñòa chæ bo ä nhôù. KHOÁI ÑIEÀU KHIEÅN BAÙO BOÄ GIAÛI MAÕ ÑÒA CHÆ KHOÁI HIEÅN THÒ KHOÁI GIAÛI ÑA HÔÏP, CHOÏN KEÂNH KHOÁI DAO ÑOÄNG ÑIEÀU CHÆNH KHOÁI CHOÁT KHOÁI DAO ÑOÄNG VAØ CHIA TAÀN SOÁ KHOÁI NGUOÀN BOÄ NHÔÙ Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng _ Kho ái giaûi maõ ñòa chæ boä nhôù: khoái naøy laø boä ñ eám leân nhaän xung clock vôùi ta àn soá 1/60 Hz (1 phuùt), 11 ngoõ ra cuûa boä ñe ám ñö ôïc ñöa ñeán 11 ñ öôøng ñòa chæ töø A2 ñ eán A1 2 cuûa IC nhô ù 2764. _ Boä nhôù: Laø nô i lö u trö õ döõ lieäu ñ aõ naïp töø trö ôùc. Maïch giaûi maõ ñòa chæ bo ä nhôù seõ laøm c ho ñòa c hæ boä nhô ù thay ño åi, khi ñ où dö õ lieäu se õ ñöôïc xu aát ra maïch be ân ngoaøi qu a maïch ñe äm dö õ lie äu. Boä cho át dö õ lieäu : coù nhie äm vuï c ho át dö õ lieäu vaø giao tieáp vôùi boä nhô ù ñ eå hieån thò döõ lieäu ra led 7 ñoaïn. _ Khoái giaûi maõ vaø choïn ke ânh: nhaän xung töø boä dao ño äng sau ño ù giaûi maõ ôû ngo õ ra ñeå cho ï n boä ñeäm. _ Khoái hie ån t hò: cho pheùp ngöô øi söû duïng xem ñ öô ïc giô ø, phu ùt thoâng qua led 7 ño aïn. _ Khoái ñie àu khie ån baùo : ñaây laø kho ái thöïc hie än nhie äm vu ï chính, noù coù nhieäm vu ï phaù t ra tín hieäu ñie àu khieå n chuoâng. _ Khoái dao ñ oäng ñ ieàu chænh: t aïo taàn soá dao ñ oäng cao hô n taàn soá dao ñoäng cô baû n ñeå cho phe ùp ngö ôøi sö û du ïng chænh laïi giô ø, phu ùt cu ûa ñoàng ho à. _ K hoái ngu oàn: khoái naøy ñaûm baûo cho toaøn m aïc h hoaït ño äng lieân tu ïc, goàm coù maïc h o ån aùp vaø ac cu döï pho øng. Nguyeân lyù ho aït ñoäng cô baûn cuûa he ä thoáng nhö sau: Dö õ lieäu tö ø 0 ñe án 23 giô ø vaø tín hie äu ñie àu khieån baùo chuoâng ñ öô ïc lö u trong Eprom. Dö õ lieäu naøy seõ ñ öô ïc xuaát ra le d 7 ñoaïn vaø maïc h ñieàu khieån baùo c hu oâng c hæ qu a boä ñ eäm maø khoâ ng c aàn giaûi maõ, mo ãi phuùt se õ co ù 4 byte döõ lieäu goàm 2 byte c ho giôø vaø 2 byte cho phuùt xuaát laàn lö ôït ra 2 led giô ø vaø 2 le d phuùt, c huùng seõ vaã n cö ù xu aát ra laà n lö ôït nhö the á ( qu eùt) vôùi taà n soá khaù cao ñe å ngöôøi qu an saùt khoâng coøn thaáy ñ öô ïc söï chôùp taét cuûa noù nöõa. Döõ l ieäu xu aát ra ô û bo ä ñe äm co ù 32 ñ öô øng, tro ng ñoù 28 ñ öô øng cu ng caá p cho hieå n thò giôø, phuùt, mo ät ñö ôøng caáp c ho hie ån thò AM /PM tho âng qu a 1 FF-T, moät ñöô øng caá p cho maïch ñie àu khieån chuoâng ñe å baùo giô ø. Döïa vaøo nguy eân taéc ho aït ñ oäng cuûa hai daï ng maïch ne âu treân ngöô øi vie át nhaä n thaáy raèng maëc duø nguy eân taéc ho aït ño äng cu ûa c hu ùng khaù c nhau nhö ng c huùng ñe àu coù chun g nhö õng khaû naêng sau: _ Taïo ra thôøi gian t hö ïc goàm giôø vaø phuùt. _ Ñieàu chænh thôøi gian thö ïc, caùch ñie àu chænh laø ñ ieàu chænh vô ùi to ác ñ oä nhanh vaø chaäm nhö ng kho âng co ù khaû naê ng ñi eàu chænh giô ø, phu ùt ño äc laäp vôùi nhau cu õng nhö khoâng coù khaû naê ng ñ ieàu chænh the o höôùng giaûm giôø, phuùt. _ Töï ñoäng baùo hie äu taïi nhö õng thô øi ñie åm ñ aõ ñ öô ïc qui ñònh, nhöõ ng thôøi ñ ieåm naøy laø coá ñ ònh vaø ñ öô ïc ñaët tröô ùc trong EPROM. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 1.3- Öu nhöôïc ñieåm cuûa heä thoáng bao giôø töï ñoäng duøng “EPROM” vaø vi xöû lí Z80. Nhö vaäy he ä tho áng baùo giô ø töï ñoäng maø ngöôøi vie át thieát ke á co ù ñöôïc nhöõng öu, nhöôïc ñ ieåm so vô ùi 2 daïng maïc h neâu treân nhö sau : Öu ñieåm: _ Hieån thò ñöô ïc t heâm thöù vaø g iaây. _ Ñieàu chænh thö ù, giô ø, phuùt ño äc laäp vôùi nhau. Coù theå ñi eàu chænh thôøi gian the o höôùng taêng ho aëc giaûm. _ Coù t he å ñaët vaøo he ä tho áng 10 thôøi ñie åm baùo hieäu ño ät xuaát thoâng qua baø n phím _ Coù t he å ñaët vaøo he ä tho áng 10 thôøi ñie åm caám baùo hieäu thoâng qua baø n phím _ Coù theå xem laïi vaø xo ùa ñ i caùc thôøi ñ ieåm baùo hieäu ño ät xu aát vaø caù c thô øi ñie åm caám baùo hieäu do ngöô øi söû duïng ñaët vaøo heä tho á ng. _ Kho â ng baùo hieäu vaøo ngaøy thöù baûy vaø c hu û nhaät (giaûi quyeát baè ng phaà n me àm). _ Tín hieäu baùo c hu oâng ñ öô ïc ñ ie àu khie ån baèng phaàn me àm ne ân raát ña daï ng nhaèm mu ïc ñ ích theå hie ä n y ù nghó a cuûa lo aïi thô øi ñieåm baùo hie äu. _ Coù chöô ng trình baùo lo ãi nhaèm taêng t heâm tính soáng ñoäng cuûa he ä thoáng. Nhöôïc ñieåm: _ He ä thoá ng söû duïng nhieàu IC hô n, nhö ng caùc h keát noái caùc bo ä phaä n nhö boä nhô ù, baø n phím, hie ån t hò l aïi ñ ôn giaû n hô n. _ Caùc h vie át phaà n meàm cho he ä thoáng kho ù hô n Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng II_ THIEÁT KEÁ PHAÀN CÖÙNG. 2.1_ Toång quaùt phaàn cöùng Heä Thoáng. Pha àn cöùng Heä Thoáng ñ öôïc xaây döïng vôùi yeâu caàu ñ ôn giaûn nhöng hieäu quaû, phuïc vuï toát cho caùc hoa ït ño äng cuûa He ä Thoáng. Sô ñoà kho ái toång quaùt cu ûa Heä Thoáng ñöô ïc moâ ta û ôû hình 1.  Tr ình baøy sô ñoà khoái Thaønh phaàn coát loõi cuûa He ä Thoáng laø boä vi xöû lí (P) Z80, caùc vi ma ïch nhôù ROM (Re ad Only Memory), RAM (Ra ndo m Access Memo ry ). Caùc boä pha än boå trô ï nhö maïch taïo xung ñoàng hoà vaø ñònh thôøi (Clo ck generato r vaø Time r), ma ïch baøn phím (Ke yboard ), ma ïch hieån thò (Dis play), maïch kieåm so aùt ngaét INT (Interrupt co ntroller) va ø ma ïch ñieàu khieån baùo hieäu (Bell Driver). Heä Thoáng seõ goà m coù 1 vi ma ïch ROM vaø 1 v i ma ïch RAM. Vi maïch R OM seõ löu tröõ phaàn me àm Heä Thoáng vaø ca ùc thôøi ñie åm baùo hieäu Restime. Vi maïch RAM duøng ñ eå laøm vuøng nhô ù laø m vieäc cuûa Heä Tho áng vaø laø vuøng ñe äm ñe å löu tröõ caùc Hottime vaø Skiptime. Maïch taïo xung ñoàng hoà vaø ñònh thôøi seõ phaùt ra xung nhòp cho hoaït ño äng cuûa Heä Thoáng vaø tín hieäu ñònh thôøi taàn soá 1Hz taùc ñoäng vaøo ngaét NMI cuûa P phuïc vuï vieäc taïo thôøi gian thöïc. Baøn phím goàm 5 phím chöùc naêng (Xaây döïng theo nguye ân taéc aùnh xaï boä nhô ù) cho pheùp ngöôøi söû duïng ñie àu chænh thôøi gian thöïc cuõng nhö ña ët caùc Ho ttime vaø Skiptime. Maïch hieån thò goà m 7 led 7 ñ oaïn seõ thoâng baùo thôøi gian (Thöù, giôø, phuùt vaø giaây) vaø cho phe ùp ngöô øi söû du ïng theo doõi ñöô ïc caùc tha o ta ùc tre ân baøn phím. Maïch kieåm soaùt ngaét giuùp ngö ôøi sö û duïng löïa cho ïn caùc che á ño ä hoaït ño äng Settime, Hottime vaø Skiptime töông ö ùng vôùi caùc ngaét INT mode 0. Maïch ñieàu khieån baùo hieäu phaùt ra tín hie äu theo sö ï ñie àu khieån cuûa phaàn meàm. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng ADDRESS BUS CONT ROL BUS DAT A BUS 1Hz 277khZ Hình 1: SÔ Ñ OÀ KH OÁI TOÅNG Q UA ÙT H EÄ THOÁNG VXL Z80 POWER SUPPLY TIMER CLOCK EPROM 8KB RAM 2KB BELL D RIVER INTERR UPT CONTR OLLER KEYBO ARD DIS PLAY Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng  Nguyeân lí hoaït ñoäng toång quaùt: Heä thoáng baùo giôø töï ñoäng laø mo ät heä vi xöû lí n eân hoa ït ñoäng cuûa heä thoáng laø söï keát hôïp cha ët cheõ giöõa p haàn cöùng vaø pha àn meàm. Vi xöû lí ñ öôïc ñaët ô û cheá ñoä “au to reset” neân khi mô ùi mô û ñ ieän vi xöû lí se õ baét ñ aàu ño ïc boä nhô ù taïi ñòa chæ 0000h. Ña ây cu õng la ø ñòa chæ baét ñaàu cuûa chöô ng trình heä thoáng. Ngoa øi ra, ma ïch kieåm soa ùt ngaét seõ ca ám tín hieäu Timer taùc ñ oäng vaøo ngaét NMI cuûa Z80 nhaèm muïc ñích traùnh vieäc taïo thôøi gian thöïc sa i da ãn ñe án heä thoáng baùo giô ø sai. Veà ma ët phaàn meàm: Khi môùi mô û ñieän chöông trình heä thoáng se õ khôûi ñoäng maïch hieån thò (khô ûi taïo 8279) ñeå maïch hieån thò saün sa øng hieån thò döõ lieäu thôøi gian thöïc töø vi xöû lí gôûi tôùi. Ngo aøi ra, chöông trình heä thoáng co øn reset ma ïch baùo chuoâng … Maïch baøn phím hoaït ñoäng khi chöô ng trìn h c on Key pro ñ öôïc goïi ñeå phuïc vuï cho Settime, Ho ttime hay Skiptime. Pha àn “caáu taïo vaø nguyeân taét hoaït ñoäng cuûa caùc khoái maïch” seõ giuùp chuùng ta hieåu roõ hôn hoaït ñoäng cu ûa Heä Thoáng. Böô ùc ñaàu tieân tro ng vieäc thie át keá Heä Thoáng laø phaân boá boä nhôù vaø thöïc hie än giaûi ma õ ñ òa chæ cho caùc boä phaän cuûa Heä Thoáng. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 2.2_Boä nhôù Heä Thoáng vaø giaûi maõ ñòa chæ: 2.2.1_Boä nhôù H eä Thoáng: He ä Thoáng baùo giôø tö ï ñoäng laø moät heä vi xöû lí neân vieäc phaân bo á boä nhôù He ä Thoáng laø heát söùc ca àn thieát. Ngoa øi boä nhôù ROM, RAM Heä Thoáng coøn co ù caùc boä phaän: baøn phím, ma ïch hieån thò vaø maïch ñie àu khieån baùo hieäu. Caùc boä phaän naøy ñ öôïc xem nhö boä nhôù. Boä vi xö û lí seõ tru y xuaát caùc khoái ma ïch naøy gioáng nhö truy xuaát boä nhôù (phöô ng pha ùp a ùnh xaï boä nhôù). Do y eâu caàu hoaït ño äng vôùi vuøng nhôù nho û. He ä Thoáng chæ söû duïng 20KB ñ aàu tieân (0000h – 4FFFh) trong khoâng gian 64KB ma ø Z80 quaûn lí. Vô ùi yeâu caàu tre ân boä nhôù seõ ñö ôïc pha ân chia thaønh caùc vuøng nhôù daønh cho ROM, RAM, vu øng nhôù daønh cho maïch h ieån thò, maïch baùo hieäu va ø baøn phím. Ñe å ñô n giaûn, boä nhôù Heä Thoáng seõ chia thaønh 5 vuøng vôùi dung löô ïng 4KB/vuøng ñöô ïc phaân bo á nhö sau: 4FFFh 4000h MAÏCH BAØN PHÍM 4KB 3FFFh 3000h MAÏCH BAÙO HIEÄU 4KB 2FFFh 2000h MAÏCH HIEÅN THÒ 4KB 1FFFh 1800h CHÖA DUØNG 2KB 17FFh 1000h RAM 2KB 0FFFh 0000h ROM 4KB Hình 2: BAÛN ÑOÀ BOÄ NHÔÙ HEÄ THOÁNG Vu øng nhôù töø ñòa chæ 0000h ñe án 0FFFh daønh cho IC ROM chöùa pha àn meàm Heä Thoáng vaø löu tröõõ ca ùc Re stime. IC ROM ñöôïc duøng laø 2732 (4KBx8). Ba ûng mo â ta û hoa ït ño äng vaø sô ñoà cha ân chöùc na êng nhö sau: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CHEÁ ÑOÄ CE OE \Vpp Vcc OUTPUT Rea d Stand by Program Program verify Program Inhibit VIL VIH VIL VIL VIH VI L X Vpp VI L Vpp Vcc Vcc Vcc Vcc Vcc Do ut High Z Din Do ut High Z Baûng 1 : BAÛNG MOÂ TAÛ H OAÏT ÑOÄNG CUÛA IC – ROM 2 732 Hình 3: SÔ ÑOÀ CHAÂN CHÖÙC NAÊNG CUÛA IC-ROM 2732 Vu øng nhôù töø 1000h ñeán 1FFFh laø vuøng nhô ù RAM duøng ñeå la øm ngaên xeáp (Stack), vuøng ñeäm, baûng Ho ttime vaø baûng Skiptime. Vôùi yeâu caàu hieän ta ïi, Heä Thoáng chæ söû du ïng 2KB töø 1000h ñe án 17FFh khi coù y eâu caàu mô û roäng 2KB co øn laïi seõ ñöô ïc duøng ñeán. IC- RAM ñöô ïc choïn laø loa ïi RAM tónh (Static Ram) 6116 (2KBx8). IC 6116 co ù ba ûng moâ ta û hoaït ñoäng vaø sô ñoà chaân chö ùc naêng nhö sau: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CHEÁ ÑOÄ CE OE WE DAT A Khoâng choïn Caám xua át Ñoïc (Read) Ghi (Write ) H L L L X H L H X H H L High Z High Z Do ut Din Baûng 2 : BAÛNG MOÂ TAÛ H OAÏT ÑOÄNG CUÛA IC – RAM 6 116 Hình 4: S Ô ÑOÀ CH AÂN CHÖÙC NAÊNG CUÛA RAM 6116 Vu øng nhôù co øn laïi ñö ôïc daønh cho ca ùc boä pha än: baøn phím, hieån thò, ñ ieàu khieån baùo hie äu. 2.2.2_ Maïch giaûi maõ ñòa c hæ: Nhieäm vuï maïch giaûi ma õ ñòa chæ laø thöïc hieän hoaït ñoäng giaûi ma õ ñeå ta ïo ra caùc tín hieäu : cho ïn IC nhôù ROM , RAM (CS ch ip select) vaø caùc tín hieäu ñ ieàu khieån choïn caùc bo ä phaän baøn phím, hieån thò, ñieàu khieån baùo hieäu. Maïch giaûi maõ ñòa chæ la ø moät ma ïch giaûi ma õ töø 3 ra 8 ñöô øng söû du ïng 3 ñ öôøng ñòa chæ A12, A13, A14 ñe å giaûi maõ taïo 8 ñöô øng tín hieäu ñ ieàu khieån va ø choïn chip. Ba ûng giaûi ma õ ñòa chæ chi tie át cuøng caùc tín hie äu ñie àu khieån nhö sau : Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng A15 A14 A13 A12 A 11 A10 ……A0 VUØNG NHÔÙ TÍN HIEÄU CHÖÙC NAÊNG 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 1 1 0 0 x x …… x 0 x …… x 1 x …… x x x ….. x x x ….. x x x …… x 0000h – 0FFFh 1000h - 17FF h 1800h – 1FFFh 2000h – 2FFFh 3000h - 3FFFh 4000h - 4FFFh 1CS 2CS DPL BDR KBD Cho ï n IC ROM Cho ï n IC RAM Chöa duøng Hieån thò Baùo hie äu Ñoïc baøn phím Baûng 3 : BAÛNG GI AÛI MAÕ ÑÒA CHÆ BOÄ NH ÔÙ. Maïch giaûi ma õ ñ òa chæ duøng IC 74LS13 8 co ù 8 ngoõ ra taùc ñoäng mö ùc thaáp. Tín hieäu MERQ töø P taùc ñ oäng vaøo 2 ngo õ vaøo ñ ieàu kieän G2A vaø G2B ñe å ñ ieàu khieån vieäc giaûi maõ choïn chip. Hình 5: SÔ ÑOÀ CHI TIEÁT MAÏCH GIAÛI MAÕ ÑÒA CHÆ. 2.2.3_Toùm taét: Maïch ñie än boä nhôù Heä Thoáng coù ca áu ta ïo nhö sau : Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Hình 6: SÔ ÑOÀ CHI TIEÁT MAÏCH BOÄ NH ÔÙ Ca ùc t ín hieäu 1CS , 2CS thöïc hieän choïn IC ROM va ø IC RAM. Tín hieäu RD töø P ñ ieàu khieån vieäc ñoïc döõ l ieäu tro ng ROM vaø RAM, tín hieäu WR cho phe ùp P ghi döõ lieäu vaøo RAM. Gia ûn ño à thôøi gia n caùc chu kì P ñoïc va ø ghi bo ä nhô ù nhö hình 7: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CLOCK A0-A15 VALID ADDRESS MERQ RD D0-D7 DATA IN WR D0-D7 DATA OUT Hình 7: CHU KÌ  P ÑOÏC VAØ GH I BOÄ NHÔÙ. Ho aït ñoäng ñoïc, ghi boä nhôù cuûa P nhö sau: HOAÏT ÑOÄNG CUÛA P MERQ CS RD WR Ño ïc boä nhôù L L L H Ghi boä nhôù L L H L Ca ùc boä phaän baøn phím, hieån thò vaø ñ ieàu khieån baùo hieäu thieát keá theo nguyeân taét aùnh xaï boä nhôù. Hoa ït ñoäng cuûa P tru y xuaát caùc bo ä phaän naøy nhö sau: HOAÏT ÑOÄNG CUÛA P ÑÒA CHÆ MERQ TÍN HIEÄU ÑIEÀU KHIEÅN Hieån thò 2000h – 2FFFh L DPL = L Ñieàu khieån baùo hieäu 3000h – 3FFFh L BDR = L Ñoïc baøn phím 4000h – 4FFFh L KBD = L Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 2.3_ Khaûo saùt tính chaát ngaét NMI : (NON_ MASKABLE INTERRUPT) Ngaét NMI (ngaét khoâng theå che baèng phaàn me àm) cu ûa Z80 la ø nga ét coù ñoä öu tieân tuy eät ño ái. Khi co ù ngaét NMI ta ùc ño äng, chö ông trình Heä Thoáng se õ ta ïm döøng coâng vieäc hieän taïi ñe å thöïc hieän chö ông trình phuïc vuï ngaét NMI baét ñaàu taïi ñ òa chæ 0066h. Vôùi ye âu ca àu ñaët ra laø Heä Thoáng laøm vieäc vôùi thôøi gian thöïc, neân ñoøi hoûi vieäc ñ eám thôøi gian phaûi thöïc hieän chính xaùc vaø ñö ôïc öu tieân haøng ñaàu . Do ñoù, ngaét NMI daønh cho vieäc ñe ám thôøi gian thöïc. Tuy nhieân, ngoaøi hoaït ñoäng ñeám thôøi gian thöïc chöô ng trình He ä Thoáng coøn phaûi thöïc hieän ca ùc co âng vieäc khaùc nhö: phuïc vuï baøn phím, phuïc vuï vieäc baùo hieäu cu õng nhö hieån thò. Ngaét NMI kho âng ñ öôïc laøm aûnh höôûng ñe án caùc hoa ït ño äng tre ân . Coâng vieäc thaê m doø ngaét INT vaø NMI ñö ôïc Z80 thöïc hieän taïi chu kì ñ oàng hoà cuoái cuøng ô û chu kì ma ùy cuoái cuøng cuûa moät chu kì leänh (go ïi laø caùc thô øi ñie åm to). Chu kì ma ùy cuoái Chu kì ma ùy le änh keá to  Hình 8: GIAÛN ÑOÀ NH AÄN NGAÉT NMI Theo hình 8, neáu co ù tín hieäu goïi ngaét NMI (hoaëc ngaét INT ) xuaát hieän ta ïi ca ùc thôøi ñie åm khaùc vôùi ca ùc thôøi ñ ieåm to thì chöô ng trình He ä Thoáng se õ khoâng nhaän ñ öôïc ngaét NMI vaø chöô ng trình phu ïc vuï ngaét ñeå ta ïo thôøi gian thöïc seõ khoâng ñöôïc thöïc hieän. Pha àn me àm He ä Thoáng bao goàm nhieàu loaïi leänh vaø caùc leänh naøy ñö ôïc thöïc hieän vôùi soá chu kì ñoàng hoà khaùc nhau. Do vaäy, xung goïi nga ét NMI pha ûi ñuû ro äng ñ eå vieäc thaêm doø ngaét NMI ñ öôïc thöïc hieän moät ca ùch hoaøn haûo. Neáu xung goïi ngaét NMI coù ñoä ro äng lôùn hôn möùc caàn t hieát t hì ñ ieàu g ì xaûy ra ? Qua thöû nghieäm ngöôøi vieát nhaän thaáy, khi coù ngaét NMI chöô ng trình He ä Thoáng taïm döøng co âng vieäc hieän taïi vaø thöïc hieän chö ông trình phuïc vuï ngaétNMI , neáu tín hieäu ngaét NMI tieáp tuïc ñöôïc giöõ ôû möùc logic thaáp thì sa u khi chöông trình phuïc vuï ngaét NMI thöïc hieän xong, P se õ trô û veà thöïc hieän coâng vieäc dôû dang trö ôùc khi phuïc vuï nga ét ma ø kho âng baän taâ m ñeán tín hieäu ngaét NMI duø luùc naøy vaãn Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng ñ ang ôû möùc tích cöïc thaáp. Ñeå nhaän nga ét trôû laïi, cha ân NMI cuûa Z 80 phaûi ñöô ïc keùo leân möùc logic cao tröôùc khi coù tín hieäu ngaét keá tieáp. Nhö vaäy coù the å noùi raèng, khi tín hieäu NMI ô û möùc thaáp vaø P nhaän nga ét thì vieäc thaêm doø ngaét seõ kho âng ñöôïc thöïc hie än cho ñeán khi tín hieäu NMI leân möùc cao. Vie äc cho tín hieäu NMI leân möùc cao tröôùc khi co ù tín hieäu ngaét keá tieáp töô ng ñ öông vôùi vieäc kho âi phuïc hoaït ñoäng thaêm doø ngaét cuûa P . Toùm la ïi, ñeå hoaït ñoäng ñeám thôøi gian thöïc khoâng a ûnh höôûng ñeán caùc hoaït ñ oäng khaùc cu ûa Heä Tho áng (trong ño ù coù vieäc P nhaän ngaét INT ) thì ñoä roäng xung goïi ngaét goïi ngaét NMI (ñe ám thôøi gian) phaûi ñöô ïc choïn thích hôïp vaø chöô ng trình phuïc vuï ngaét NMI phaûi kho âng ñ öôïc quaù daøi. Ña ây laø y eâu caàu qua n troïng ño ái vôùi hoaït ñoäng cu ûa Heä Thoáng . 2.4_Caáu taïo vaø nguyeân taét hoaït ñoäng caùc khoái maïch: 2.4.1_Maïch taïo x ung ñoàng hoà: Maïch ta ïo xung ño àng hoà co ù vai tro ø nhö quaû tim ña äp nhòp cho hoaït ño äng cuûa Heä Thoáng. Vieâäc taïo thôøi gian thöïc seõ ca øng chính xaùc neáu ta àn soá xung clock caáp cho P caøng ca o. Tuy nhieân, He ä Tho áng seõ hoaït ñoäng khoù oån ñònh ôû ta àn soá cao do nhieãu xuaát hieän tre ân ñö ôøng ma ïch in. Do va äy , ta àn soá xung clock ñöôïc choïn sa u cho giaûm thieåu sai soá tro ng vieäc taïo thôøi gian thöïc vaø traùnh ñ öôïc nhieãu xuaát hieän treân maïch in ñ eå Heä Thoáng hoaït ño äng oån ñònh. Ta àn so á xung clock ñö ôïc choïn laø 500KHz. Caên cöù va øo taàn soá xung clo ck ñaõ choïn vaø tính chaát ngaét NMI cu ûa P la ø seõ nhaän nga ét khi pha ûi thöïc hieän xong leänh coøn ñ ang dang dôû ta tính ñ öôïc sa i soá veà thôøi gian cöïc ña ïi do vieäc ta ïo thôøi gian thöïc nhö sau: Thôøi gia n thöïc hieän leänh daøi nhaát t = 23x1/fck = 23/500000 = 0.46s Sai soá trong 1 phu ùt = 60 x t = 60 x 0.46 = 27,6S Tính töô ng töï ta co ù sai soá cöïc ña ïi trong moät na êm = 365 x 24 x 60 x 60 x t = 365 x 24 x 60x 60 x27,6 = 870s Sai soá naøy laø sa i soá ma x, thöïc teá khoâng phaûi luùc naøo tín hieäu goïi ngaét NMI cuõng nga y vöøa luùc P nha än moät leänh daøi nhaát neân taàn so á hoaït ño äng cuûa Heä Thoáng = 500KHz la ø chaáp nha än ñ öôïc. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Taàn soá xu ng clock naøy cuõng ñöôïc caáp cho IC 8279 ñeå hieån thò. Ñeå taän duïng soá löôïng coång logic treân maïch c uõng nhö ñô n giaûn tro ng thieát keá, maïch dao ñoäng ñö ôïc thieát keá nhö sau: Hình 9: SÔ ÑOÀ MAÏCH TAÏO XUNG ÑOÀNG H OÀ 2.4.2_Maïch ñònh th ôøi. Ma ïch ñònh thôøi coù nhieäm vuï taïo ra xung nhòp tuaàn hoaøn phu ïc vuï cho v ieäc ñ eám thôøi gian thöïc. Vie äc ñeám thôøi gian thö ïc ñoøi hoûi pha ûi thöïc hieän moät ca ùch chính xaùc vaø oån ñònh. Do ño ù, ma ïch ñònh thôøi pha ûi taïo ra tín hieäu ñònh thôøi co ù taàn soá thaät chính xaùc vaø coù t ính oån ñ ònh ca o. Tín hieäu ñònh thôøi taùc ño äng vaøo nga ét NMI . Khi coù ngaét NMI chöông trình taïo thôøi gian thöïc seõ ta êng l eân 1 ñô n vò thôøi gian (1 gia ây ). Ñeå co ù ñöô ïc tín hieäu ñònh thôøi ta àn soá 1Hz co ù ñ oä chính xaùc vaø tính oån ñònh cao maëc nhieân kho âng theå sö û duïng ma ïch dao ño äng RC vì giaù trò R, C khoâng oån ñ ònh theo thôøi gian cuõng nhö nhieät ñoä. Coù theå duøng maïch dao ño äng thaïch anh ñe å co ù ñ öôïc tín hieäu ñònh thôøi oån ñ ònh vaø chính xaùc. Tuy nhieân, giaù trò thaïch anh ba ùn ngoaøi thò tröô øng ít nhaát cuõng vaøi tra êm KHz, cho neân phaûi toán theâm ma ïch chia taàn so á thì môùi coù ñöôïc tín hieäu ñònh thôøi ta àn soá 1Hz. Chính vì vaäy ngöôøi vieát choïn maïch dao ñ oäng trong ñoàng hoà GIMIKO, ña ây laø maïch chuyeân duøng neân ña ûm baûo ñ öôïc tính oån ñònh vaø ch ính xaùc cuûa tín hieäu ñ ònh thôøi. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Hình 10: SÔ ÑOÀ MAÏCH ÑÒNH TH ÔØI. Do ma ïch dao ño äng söû duïng nguoàn 1,5V neân tín hieäu ñònh thôøi ô û ngoõ ra seõ ñ öôïc khuyeách ña ïi leân cho phu ø hôïp vôùi mö ùc logic cuûa maïch soá. Sa u ño ù, tín hieäu ñ ònh thôøi se õ ñ öôïc giôùi haïn ño ä ro äng xung trö ôùc khi ñöa ñeán cha ân NMI cuûa Z80 baèng mo ät ma ïch ñôn oån (Mono Multivibra tor). Ñoä ro äng xung goïi ngaét NMI ñ öôïc choïn phuï thuo äc vaøo thôøi gian thöïc hieän leänh daøi n haát trong chöông trình Heä Thoáng. T hôøi gian thöïc hieän leänh daøi nhaát cuûa Z80 laø 23x1/fck (giaây) ñe å baûo ñ aûm P nha än ñöô ïc ngaét moãi khi coù tín hieäu ngaét NMI = 0. Ñoä roäng xung goïi ngaét phaûi tho ûa :  > 23x1/fc k = 0.46s IC 74LS123 coù coâng thö ùc tính ñ oä roäng xu ng nhö sau:  = 0,45xRxC Vôùi R = 1K, C = 0. 047f Ta coù  = 0,45x 1000x0.047x10- 6 = 21,1s  xaáp xæ 45.1 laàn thôøi gian thöïc hieän leänh da øi nha át cu ûa P, giaù trò naøy cuûa  thoûa maõn yeâu ca àu ñ aët ra. 2.4.3_Maïch baøn phím (K eyboar d): Ngöô øi sö û duïng duøng baøn phím ñe å ñ ieàu chænh thôøi gian (Settime), ñaët caùc thôøi ñ ieåm baùo hieäu ñoät xuaát (Hottime), ñaët ca ùc thôøi ñ ieåm caám baùo hieäu (Skiptime), xem hoaëc xoùa noäi dung ba ûng Ho time /Skiptime. Ñeå ñaùp ö ùng caùc yeâu caàu tre ân, baøn phím seõ coù 5 phím vôùi teân goïi nhö sau : Ins, + , -, De l/Date vaø Ok chöùc naêng töøng phím do phaàn meàm qui ñ ònh. Ca ùch sö û duïng baøn phím ñ öôïc moâ ta û chi tieát ô û phaàn “Moâ taû Heä Thoáng vaø höôùng daãn söû duïng”. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Baøn phím ñö ôïc thieát keá theo ngu yeân taéc aùnh xaï boä nhôù, P se õ xem ba øn phím nhö 1 byte nhôù. Baøn phím coù ñòa chæ thuoäc vuøng nhô ù töø 4000h ñe án 4FFFh. P duøng tín hieäu ñ ieàu khieån ñe å truy xuaát baøn phím. Caùc phím a án khaùc nhau seõ la øm cho byte nhôù co ù noäi dung khaùc nha u töông öùng vôùi chöùc naêng khaùc nhau cuûa moãi phím. Chu kì P ñoïc baøn phím nhö h ình 11. CLOCK A0-A15 MERQ D0-D7 Hình 11: CHU K Ì P ÑOÏC BAØN PHÍM. Tín hieäu MERQ töø P seõ hieäu löïc hoùa vieäc giaûi ma õ ñòa chæ ta ïo ra tín hieäu ñ eå P ñoïc baøn phím. Baøn phím coù caáu ta ïo goàm moät IC ñ eäm 8 bit 3 traïng thaùi va ø 5 Switch nhö sau: Hình 12: SÔ ÑOÀ CH I TIEÁT MAÏCH BAØN PHÍM . IC 74LS245 ñöô ïc duøng laøm maïch ñ eäm 8 bit 3 traïng thaùi neân baøn phím coù toái ñ a 8 phím. Hieän ta ïi baøn phím goàm 5 phím, P duøng tín hieäu ñie àu khieån KBD ta ùc ñ oäng vaøo chaân G cuûa IC 74LS245 ñeå ñ oïc baøn phím. Khi kho âng coù phím naøo ñö ôïc Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng a án, döõ lieäu ñoïc vaøo coù noäi dung laø 0FFh. Khi coù 1 phím ñ öôïc aán, bit töông ö ùng seõ coù möùc logic thaáp. Ví duï, khi phím O K ñöô ïc a án, döõ lieäu ñoïc ñöô ïc seõ coù noäi dung la ø 0F7h. Nhö va äy, moãi phím töông öùng vôùi moät maõ sa u: PH ÍM AÁN MAÕ Ins Ins_+ Ins_- + - Del Ok De l/Da te _ + Del/Date_ - 0FEh 0FCh 0FAh 0FDh 0FBh 0EFh 0F7h 0EDh 0EBh Baûng 4: BAÛNG MAÕ BAØN PHÍM Chöông trình xöû lí baøn phím seõ thöïc hieän caùc co âng vieäc phu ø hôïp vôùi caùc maõ ñ öôïc nha än . Khi kho âng coù nhu caàu sö û duïng ba øn phím, ngoõ ra cuûa maïch ñ eä m 8 bit ô û traïng tha ùi toång trôû cao , baøn phím ñö ôïc caùch ly khoûi bus dö õ lieäu. Chöông trình phaàn meàm pha ûi ño ïc phím sa u moãi 200ms nhaèm mu ïc ñ ích: Choáng hieän töô ïng naûy cuûa phím vaø ñe å ngö ôøi söû duïng theo doõi ñöô ïc söï thay ñ oåi cuûa caùc con soá treân ñeøn hieån thò khi aán caùc phím. 2.4.4_Maïch kieåm soaùt ngaét (interupt co ntro ller). Heä Thoáng baùo giôø töï ño äng coù 3 chöùc naêng: Setime, Ho time vaø Skiptime. Ñeå thöïc hieän ca ùc khaû naêng na øy, ngöôøi söû duïng se õ duøng tín hieäu ngaét INT ñ eå ba ùo cho P bieát coâng vieäc ca àn thöïc hieän ñe å phu ïc vu ï ngö ôøi söû duïng. Ta ïi moãi thôøi ñie åm, ngöôøi sö û duïng chæ coù theå laøm vieäc ôû 1 chöùc naêng hoaëc Setime hoaëc Ho time hoaëc Skiptime. Ngaét INT cuûa Z80 go àm 8 vectô ngaét, nhöng chæ c où 3 vectô ngaét ñöô ïc duøng ñeå ta ïo neân 3 chöùc naêng treân. Nhieäm vuï cuûa maïch kieåm soaùt ngaét la ø taïo ra 3 vectô ngaét khaùc nhau P seõ caên cöù vaøo ve ctô nga ét ñeå goïi chöông trình phuïc vuï töô ng ö ùng. Ñeå thuaän tieän tro ng söû duïng, He ä Thoáng se õ coù 3 led chæ thò töô ng ö ùng vôùi 3 Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng chöùc naêng: Setime, Hotti me vaø Skiptime maïch kieåm soa ùt ngaét goàm ca ùc thaønh phaàn nhö sau : Töø t im er NM I Z80 SETTIME HOTTIM E DATA BUS SKIPTIME SELECT SW ACCECPT INT IORQ 1M SW Hình 13: SÔ ÑOÀ KHOÁI MAÏCH KIEÅM S OAÙT NGAÉT. Maïch ta ïo vectô nga ét laø maïch ñeám mo dulo 4 ño àng boä, seõ ta ïo ra 4 vectô ngaét (vectô nga ét goàm 8 bit coù daïng 11ttt111). Moãi vectô ngaét ta ïo ra tö ông öùng vôùi 1 chöùc naêng cuûa He ä Thoáng. Hieän taïi Heä Thoáng chæ söû duïng 3 vectô ngaét, caùc vectô ngaét coøn laïi daønh cho ca ùc y eâu caàu môû roäng chöùc naêng khi ca àn. Ba ûng 5 trình baøy caùc vectô nga ét va ø chöùc naêng cuûa chuùng: VECTÔ NGAÉT ÑÒA CHÆ NGAÉT CHÖÙC NAÊNG 11001111 11011111 11101111 11111111 0008h 0018h 0028h 0038h Setime Phuïc vu ï hotime Phu ïc vuï Skiptime Chöa söû duïng Baûng 5: CH ÖÙC NAÊNG VAØ ÑÒ A CHÆ CAÙC VECTÔ NG AÉT. Khi coù tín hieäu goïi ngaét, P seõ phaùt ra 2 tín hieäu IORQ vaø 1M ñe å ñ oïc vectô ngaét ñ ang hie än dieän treân ñeäm 8 bit vaø thöïc hieän chöô ng trình phuïc vuï nga ét töô ng CHOÁT 8 BIT 3 TRA ÏNG THAÙI TA ÏO VE CTÔ NGAÉT MAÏCH GOÏI NG AÉT GIAÛI MA Õ VAØ CHÆ THÒ Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng ö ùng vôùi vectô ngaét ño ù. Maïch giaûi maõ vaø chæ thò seõ laø m saùn g led töông öùng vôùi vectô ngaét ñöôïc cho ïn. Ngöô øi sö û duïng seõ duøng switch “sele ct” ñe å löïa choïn vectô ngaét vaø aán switch “a ccept” ñeå goïi ngaét INT . Khi ôû chöùc naêng Setime , ma ïch kieåm soa ùt nga ét se õ taïo ra tín hieäu ñie àu khieån döøng vieäc ñe ám thôøi gian thöïc. Tín hieäu naøy seõ ñie àu khieån vieäc cho hoaëc caám tín hieäu Timer t aùc ñoäng vaøo ngaét NMI . Khi khôûi ñoäng hoaëc trö ôùc ñoù bò maát ñieän, Heä Thoáng se õ töï ño äng ñ aët ôû cheá ñ oä Setime vaø ngöøng vieäc ñ eám thôøi gian thöïc, luùc ñoù maïch taïo vectô ngaét töï ñoäng taïo ra vectô ngaét 11001111 vaø tín hieäu ngö øng ñ eá m thôøi gian. Co âng vieäc treân nhaèm traùnh cho Heä Thoáng baùo giôø sai, ñoàng thôøi ngöôøi söû duïng seõ bieát ñö ôïc ca àn phaûi ñaët la ïi thô øi gian khi nhìn tha áy ñe øn chæ thò chöùc na êng Setime saùng leân. Maïch kieåm soaùt n gaét co ù ca áu taïo nhö sau : Hình 14: SÔ ÑOÀ CH I TIEÁT MAÏCH K IEÅM SOAÙT NGAÉT. IC 74LS245 ñ öôïc duøng laøm ñe äm 8 bit 3 tra ïng thaùi, IC 74LS112 la øm ma ïch ñ eám modu lo 4, ñ öôïc ña ët ô û cheá ñoä töï ñ oäng re se t khi môùi caáp ñ ieän. IC 4093 laø m nhieäm vuï giaûi maõ vaø thuùc caùc led chæ thò. IC 74LS123 laøm nhieäm vuï giôùi haïn xung goïi ngaét INT . Caùc switch aán ñeàu ñöô ïc choáng doäi. Caùc chaân Q1, Q2 cuûa I C 74LS112 keát hôïp vôùi ca ùc cha ân A1, A2, A3, A4, A5, A6 ,A7, A8 ñöôïc noái le ân möùc Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng cao cuûa IC 74LS245 ñeå ta ïo thaønh ca ùc vectô ngaét. P duøng tín hieäu IORQ vaø 1M ta ùc ñoäng vaøo chaân G cuûa 74LS245 ñeå ñoïc noäi dung vectô ngaét. 2.4.5_Maïch hieån th ò (Display). Maïch hieån thò coù nhieäm vuï thoâng ba ùo thôøi gian thöïc vaø cho pheùp ngöôøi söû duïng theo doõi ñöôïc co âng vieäc ñang thöïc hieän khi duøng baøn phím. Noäi dung hieån thò laø ca ùc co n soá ch æ thôøi gian (thöù, giôø, phuùt, giaây). Ñeøn hieån thò goàm 7 led 7 ñ oaïn, mo ät led hieån thò thöù, hai led hieån thò giôø, hai le d hieån thò phuùt vaø 2 le d hieån thò giaây. Do ñaëc ñieåm cuûa He ä Thoáng laø pha àn queùt hieån thò ca àn phaûi ñö ôïc thöïc hieän ñ oäc la äp vôùi vi xöû lí neân ngöôøi vieát söû duïng I C chu yeân queùt phím vaø hieån thò. Ño ù la ø IC 8279 ñ eå hieån thò. Caáu truùc ph aàn cöùng 8279 Hình 15: SÔ ÑOÀ CHAÂN CH ÖÙC NAÊNG IC 8279 Teân ca ùc cha ân : TEÂN DB7 – DB0 CLK RESET CS\ RD\ WR\ Ao I/O I/O I I I I I I CHÖÙC NAÊNG Da ta bus Clock i npu t Re se t input Chip Select Rea d input Write input Address Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng IRQ Sl0 - SL3 RL0 – RL3 SHIFT CNTL/STB OUT A3 – 0 OUT B3 – 0 BD O O I I I O O O Interru pt re que st inpu t Sca n lines Retu rn lines Shift input Co ntrol/Strobe input Displa y (A) ou tput Displa y (B) output Blank Displa y output Caáu truùc ph aàn meàm c uûa 8 279  IC 8279 coù 1 ñ öôøng ñ òa chæ A0 cho chöùc na êng löïa choïn nhö sau:  A0 = 02 : 8279 xem döõ lieäu töø vi xöû lí gôûi tôùi 8279 la ø döõ lieäu ñeå hieån thò.  A0 = 12 :827 9 xe m döõ lieäu töø vi xöû lí gôûi ñeá n laø döõ lieäu cuûa leänh ñ ieàu khieån 8279.  Ca ùc leänh ñ ieàu khieån cuûa 8279:  Ke yboarb/display mode set: + Ma õ 0 0 0 D D K K K + Trong ño ù hai bit DD duøng ñeå thieát laäp mode hieån thò, 3 bit KKK duøng ñeå thieát la äp mode queùt baøn phím. + Hai bit DD: DD = 00 : hieån thò 8 kí töï – loái vaøo traùi DD = 01 : hieån thò 16 kí tö ï - loái vaøo traùi DD = 10 : hieån thò 8 kí töï - loái vaøo p ha ûi DD = 11 : hieån thò 16 kí tö ï – lo ái va øo phaûi + Ba bit KKK 000 : enco de scan keybo ard – 2 key lockout Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 001 : decode scan keybo ard – 2 key lockout 010 : enco de scan keybo ard – N ke y lo ckout 011 : decode scan keybo ard – N ke y lo ckout 100 : enco de scan sensor mat rix 101 : dencode sca n senso r ma trix 110 : strobe input, encode display sca n 111 : strobe input, decode display sca n  Pro gram clock: + Ma õ 0 0 1 P P P P P + Leänh naøy coù chöùc chia taàn soá xung clock ôû ngoõ vaøo clk ôû chaân so á 3, caùc bit PPPPP duøng ñe å xaùc ñ ònh so á chia naèm tro ng töø 2 ñeán 30, taàn so á hoaït ño äng cuûa maïch queùt hieån thò vaø choáng doäi cuûa 8279 thö ôøng laø 1 00KHz. Neáu ta àn soá ngoõ vaøo la ø 2MHz thì phaûi chia cho 20 ñeå ñ öôïc 100 KHz. Khi ñoù caùc bit PPPPP coù gia ù trò laø 10100  Re ad FIFO /se nsor RAM. + Ma õ 0 1 0 AI X A A A + 8279 co ù 8 byte RAM beân tro ng ñ eå chöùa maõ cuûa phím a án hay maõ cu ûa caùc senso rs, ñ eå truy xu aát töøng byte ma õ cuûa phím a án hay cuûa se so rs ta coù theå ñ ieàu chænh caùc bit AAA töông ö ùng. Boä nhôù na øy thuoäc kieåu FIFO. + AI (au toma tically increme nt) : ô û möùc 1 c où chöùc naêng la øm con tro û töï ño äng ta êng leân byte keá tieáp ñeå saün sa øng cho vieäc ñ oïc döõ lieäu. Neáu AI = 0 con tro û seõ khoâng thay ñ oåi.  Re ad display RAM: + Ma õ 0 1 1 AI A A A A + 8279 coù 16 byte RAM beân tro ng do con tro û 4 bit AAAA quaûn lyù. 16 byte Ram naøy duøng ñ eå chöùa döõ lieäu hieån thò do vi xöû lí gôûi ñeán, ñe å ñoïc döõ lieäu oâ nhôù naøo tro ng vuøng nhôù Ra m ta coù theå ñie àu chænh caùc bit AAAA tö ông öùng. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Boä nhôù naøy thuo äc kieåu F IFO + AI (a uto ma tica lly increment): ôû mö ùc 1 coù chöùc naêng laø m con troû töï ño äng ta êng leân byte keá tieáp ñeå saün saøng ñoïc byte dö õ lieäu. Ne áu AI = 0 con tro û se õ kho âng thay ñoåi.  End interrupt + Ma õ 1 1 1 E 0 0 0 0 + Bit E = 1 se õ xoùa ngaét IRQ ve à mö ùc 0  Le änh write display RAM. + Ma õ 1 0 0 AI A A A A + 8279 coù 16 byte Ra m beân trong do con tro û 4 bit AAAA quaûn lyù 16 byte Ram naøy duøng ñeå chöùa döõ lieäu hieån thò do vi xöû lí gôûi tôùi. Ñeå gôûi döõ lieäu ñeán byte Ram töù ma áy trong 16 byte Ram ta coù theå ñ ieàu chænh ca ùc bit AAAA töô ng ö ùng + AI (a uto ma tica lly increment): ôû mö ùc 1 coù chöùc naêng laø m con troû tö ïño äng ta êng leân byte keá ñ eå saün sa øng nhaän döõ lieäu. Neáu AI = 0 co n troû seõ kho âng thay ñoåi do ñoù byte döõ lieäu sau se õ ñeø leân byte döõ l ieäu trö ôùc ñoù. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Hình 16: S Ô ÑOÀ CH I TIEÁT MAÏCH H IEÅN THÒ. Caùch khôûi ta ïo 8279 ñöôïc trình baøy ôû phaàn thie át keá pha àn meàm. 2.4.6_Maïch ñieàu khieån baùo hieäu: Khi ñeán thôøi ñieåm baùo hieäu, Heä Thoáng phaùt ra tín hieäu ñie àu khieån thieát bò baùo hieäu hoaït ñoäng. Vieäc baùo hieäu ñö ôïc theå hieän baèng ñe øn chôùp taét hay tie áng coøi, chuoâng ñieän. Ca ùch thöùc baùo hieäu nhö : soá hoài chuoâng vaø ño ä daøi ca ùc hoài chuo âng do pha àn me àm Heä Thoáng qui ñ ònh. Ca ùch thöùc baùo hieäu co ù theå thay ñoåi baèng caùch thay ño åi byte ma õ chu oâng tro ng c höông trình phaàn meàm. Caùc thieát bò baùo hieäu coù theå ñ öôïc caáp ñ ieän töø nguo àn ñie än khaùc vôùi nguoàn ñie än cuûa Heä Thoáng. Maïch ñie àu khieån baùo hieäu coù ñòa chæ töø 3000h ñe án 3FFFh. P seõ xuaát tín hieäu baùo hieäu ra maïch ñie àu khieån baùo hieäu baèng leänh ghi dö õ l ieäu vaøo 1 byte n hôù baát kì trong vuøng nhôù 3000h ñeán 3FFFh, P duøng tín hieäu BDR ñeå ñieàu khieån vieäc baùo hieäu. Ma ïch ñieàu khieån baùo hieäu co ù sô ñoà khoái nhö hình 17. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng DATA BUS Q7 BDR Hình 17: S Ô ÑOÀ KH OÁI MAÏCH ÑIEÀU K HIEÅN BAÙO HIEÄU. CLOCK A0-A15 VALID ADDRESS MERQ BDR D0-D7 DATA Hình 18: CH U K Ì P XUAÁT DÖÕ LIEÄU BAÙO H IEÄU. Döõ lieäu baùo hieäu goàm 8 bit töø D0 ñeán D7 cuûa byte baùo hieäu, ví duï cho ïn bit D7 ñ eå ñieàu khieån thieát bò baùo hieäu. Khi ngo õ ra Q7 cu ûa ma ïch choát ôû mö ùc cao se õ la øm thieát bò baùo hieäu hoa ït ño äng. Ngöôïc laïi, thieát bò baùo hieäu seõ khoâng hoaït ño äng khi Q7 ô û mö ùc thaáp. D7 BDR Q7 0 1 0 1 0 KHOÂNG BAÙO BAÙO HI EÄU HIEÄU Hình 19: QUAÙ TRÌNH ÑIEÀU K HIEÅN BAÙO HIEÄU. Thoâng qua tín hieäu ñieàu khieån BDR keát hôïp vôùi döõ lieäu baùo hieäu. Chöông trình Heä Thoáng co ù the å thay ño åi ñö ôïc thôøi gian Q7 giöõ ô û möùc cao. MAÏCH CHOÁT 8 B IT THIEÁT BÒ BA ÙO HIEÄ U (chuoâng, coøi ) Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Nhö vaäy, chö ông trình pha àn me àm hoaøn toaøn coù theå kieåm soa ùt so á hoài chuo âng cuõng nhö ño ä daøi hoài chu oâng baùo hieäu. Ma ïch ñieàu khieån baùo hieäu coù caáu ta ïo nhö sau : Hình 20: SÔ ÑOÀ CHI TIEÁT MAÏCH BAÙO H IEÄU. IC 74LS373 ñöô ïc duøng la øm maïch choát 8 bit, ngoõ vaøo cuûa 74LS373 ñ öôïc noái vôùi Data bus. Baûng sö ï tha ät cuûa 74LS373 nhö sau: OC G DATA Q L H H H L H L L L L X QO Baûng 6: BAÛNG S ÖÏ TH AÄT CUÛA 74LS373 Tín hieäu ñie àu khieån BDR ñö ôïc cho qua maïch ña ûo ñeå phuø hôïp vôùi möùc taùc ñ oäng cuûa chaân G IC 74LS373. Ngo õ ra Q7 seõ ñieàu khieån 1 Opto triac (hoa ëc relay) ñ oùng maïch cho chuoâng ñie än. Vôùi caáu ta ïo nhö treân, Heä Thoáng seõ ñ öôïc ca ùch li veà ñ ieän vôùi thieát bò baùo h ieäu, ñeå ñaûm baûo an toa øn cho ngöôøi söû duïng. Ngoa øi ra , vôùi 8 ngoõ ra Q0…Q7 cu ûa IC 74LS373, chöô ng trình phaàn meàm coù theå ñie àu khieån caùc thieát bò baùo hieäu ñeå pha ùt ra aâm thanh baùo hieäu coù nhöõng taàn soá khaùc nhau, taên g tính ña daïng tron g caùch thöùc baùo hieäu. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 2.4.7_Maïch cung caáp ñieän: Khi heää thoáng bò maát ñie än, vieäc ñ eám thôøi gian thöïc seõ bò giaùn ñoa ïn, caùc thôøi ñ ieåm Hotti me vaø Skiptime trong boä nhôù seõ bò maát. Do ñ où, He ä Thoáng phaûi ñö ôïc caáp ñieän lieân tuïc ñeå vieäc ba ùo hieäu thöïc hieän chính xa ùc. Ñeå thoûûa maõn ye âu caàu tre ân, He ä Thoáng ñ öôïc trang bò 1 accu döï pho øng cho trö ôøng hôïp ma át ñieän löôùi. Caáu ta ïo cuûa maïch caáp ñieän se õ co ù ma ïch o ån aùp va ø ma ïch naïp accu. Vieäc naïp a ccu seõ baét ñaàu khi ñie än theá a ccu xuoáng thaáp hôn möùc qui ñ ònh vaø ngöng naïp accu khi accu ñöô ïc naïp ñuû ñ ieän. Maïch caáp ñieän coù caáu ta ïo nhö sau: Hình 21: S Ô ÑOÀ CH I TIEÁT MAÏCH CAÁP ÑIEÄN IC 7805 laøm nhieäm vuï o ån aùp cung caáp ñie än theá 5V o ån ñònh cho Heä Thoáng. Tra nsistor H1061 vaø ze ner coù Vz = 14v taïo thaønh maïch oån a ùp naïp ñ ieän cho accu 12v. Ñieän theá na ïp cho accu : VA = Vz – (0,7 +0,7)=12,6V Bình thöôøng, IC oån aùp 7805 nhaän ñ ieän töø maïch caàu naén ñ ieän bieán ñ oåi ra 5V cung ca áp cho Heä Tho áng. Khi ñoù, ñ ieän theá taïi ñ ieåm B lôùn hôn taïi ñieåm A (VB > VA) neân accu va ø ma ïch naïp accu ñöôïc taùch khoûi 7805. Khi ñie än theá accu thaáp hôn möùc qui ñònh (12,6V), transistor H1061 daãn ñ ieän vaø accu ñöôïc naïp ñ ieän, tro ng quaù trình naïp ñieän, ñieän theá accu ñöô cï naâng cao daàn. Khi accu ñaõ ñ öôïc naïp ña ày, ñ ieän theá accu coù khuyn h höôùng vöôït quaù 12,6 V. ñ ieàu naøy laøm cho transistor H1061 ngöng daãn, vieäc naïp a ccu seõ döøng la ïi tra ùnh hieän töôïng na ïp quaù no gaây h oûng accu. Ñieän theá accu duy trì ô û 12, 6V. Khi ñieän löôùi cu ng caáp bò giaùn ñ oaïn (VA > VB) a ccu seõ ca áp ñieän cho Heä Thoáng hoaït ñoäng, khi coù ñieän trôû la ïi, neáu ñ ieän theá accu xuoáng thaáp hôn 12,6V, maïch naïp a ccu seõ hoaït ñoäng vaø quaù trình naïp dieãn ra nhö trình baøy ôû tre ân. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng III- TH IEÁT KEÁ PH AÀN MEÀM. 3.1- Toång quaùt phaàn meàm heä thoáng. Pha àn me àm ñ öôïc thie át keá nhaèm taïo cho Heä Thoáng Ba ùo Giôø Töï Ñoäng coù 5 chöùc na êng nhö sau:  Chöùc naêng töï ñ oäng ba ùo hieäu.  Chöùc naêng taïo thôøi gian thöïc vaø hieån thò t hôøi gian thöïc.  Chöùc naêng ñie àu chænh thôøi gian t höïc.  Chöùc naêng veà Hottime go àm : Xe m, xoùa vaø ñ aët môùi.  Chöùc naêng veà Skiptime goàm : Xe m, xoùa vaø ñaët môùi. Moãi chö ùc naêng neâu tre ân ñö ôïc moät chö ông trình thöïc hieän. Do ño ù, phaàn meàm Heä Thoáng goà m 5 chö ông trình thöïc hieän 5 ch öùc naêng chính cuûa Heä Thoáng vaø 3 chöô ng trình con phuïc vu ï chung cho caùc chöông trình. 3.1.1- Chöùc naêng baùo hieäu töï ñoäng : Ñieàu kieän ñeå baùo hieäu: khi coù 1 Restime hay Hottime baèng vôùi thôøi gian thöïc vaø khoâng coù Skiptime naøo baèng vô ùi thô øi gia n thöïc thì tieán haønh vieäc baùo hieäu. Vieäc baùo hieäu phaûi ñö ôïc thöïc hieän töï ñ oäng. Do ñoù, chöô ng trình ña ûm nhaän vieäc baùo hieäu töï ñoäng se õ ñöô ïc ña ët ô û ñòa chæ 0000h tro ng vuøng nhôù. Teân chöô ng trình naøy ñöôïc ña ët laø MAIN. Ñaây laø chöô ng trình ñie àu khieån chính cuûa He ä Thoáng. Ngoaøi vieäc thöïc hieän chöùc na êng baùo hie äu tö ï ñoäng, chöông trình MAIN phaûi giuùp khôûi ñoäng He ä Thoáng. Khi Heä Thoáng vöøa ñöôïc caáp ñie än, chöông trình MAIN se õ khôûi ñoäng Heä Thoáng. Sau ñoù, 1 voøng laëp se õ thöïc hieän qua ù trình so sa ùnh thôøi gia n thöïc vôùi ca ùc thôøi ñie åm baùo hieäu (Re stime, Hottime ), ca ùc thôøi ñieåm caám baùo hieäu (Skiptime) vaø thöù trong tuaàn ñeå quye át ñònh vieäc baùo hieäu hay khoâng ño ái vôùi töøng thôøi ñ ieåm hieän taïi. Neáu ca àn ba ùo hieäu, chöông trính MAIN seõ ñie àu khieån ma ïch baùo hieäu … 3.1.2- Chöùc naêng taïo th ôøi gian thöïc : Tín hieäu ñ ònh thôøi goïi ngaét NMI co ù taàn soá 1Hz, neân thôøi gian thöïc ñö ôïc taïo ra bôûi chö ông trình phu ïc vuï nga ét NMI ña ët taïi ñòa chæ 0066h co ù teân la ø RTP (Real Time P ro gram). Khi ñö ôïc goïi, chöông trình RTP se õ taêng thôøi gian thöïc theâm 1 giaây va ø hieån thò thôøi gian thöïc. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 3.1.3- Chöùc naêng ñieàu ch ænh thôøi gian thöïc : Vieäc ñ ieàu chænh thôøi gia n thöïc do ngöôøi söû duïng quye át ñònh thöïc hie än thoâng qua thieát bò goïi ngaét INT . Chöông trình Settime ñ öôïc ña ët ôû ñòa chæ 08h seõ ñ aùp ö ùng ngaét INT mo de 0 ñeå phuïc vu ï chöùc naêng ñieàu chænh thôøi gian thöïc cho ngö ôøi söû duïng. Baèng baøn phím vaø ñeøn hieån thò, ngöôøi sö û duï ng deã daøng ñieàu chænh thôøi gian thöïc. 3.1.4- Chöùc naêng veà Hottime: ( Xem - Xoùa - Ñaët) Caùc chöùc naêng veà Hott ime ñöôïc thöïc hieän bôûi chöô ng trình Hott ime . Chöông trình Hottime se õ ñaùp öùng ngaét INT mode 0 ôû ñ òa chæ 18h. Khi ngöôøi söû duïng quyeát ñ ònh thöïc hieän chö ùc naêng veà Hot time nhôø thieát bò goïi nga ét, chöông trình seõ ñö ôïc thi haønh. Tho âng qua ba øn phím vaø ñ eøn hieån thò, ngöôøi söû duïng coù theå thöïc hieän moät tro ng ca ùc chöùc naêng xem, xoùa vaø ñaët Hottime. 3.1.5- Chöùc naêng veà Skiptime: (Xem - Xoùa - Ñaët) Töô ng t öï nhö chöùc na êng veà Hotti me, chöông trình Skiptime ñöô ïc ña ët ôû ñ òa chæ 28h se õ ñaùp öùng ngaét INT mode 0 . Chöông trình Skiptime ñö ôïc thi haønh theo yeâu caàu cuûa ngöôøi sö û duïng vaø nhaän söï ñ ieàu k hieån tö ø baøn phím. 3.1.6- Caùc chöông trình co n:  Chöông trì nh c on h ieån thò (teân laø DISPLAY): Thöïc hieän vieäc bieán ño åi döõ lieäu giôø vaø phuùt töø ma õ HEX sang BCD. Sau ñoù thöïc hieän vieäc so sa ùnh töø 0 - 9 roài vieát sa ng 8279 ñ eå hieån thò caùc thoâng tin ve à thôøi gian.  Chöông trì nh xöû lyù baøn ph ím (teân laø KEYPRO) Nhaän phím ñ öôïc aán ñeå phuïc vuï vie äc lö ïa cho ïn Thö ù - Giôø - Phuùt.  Chöông trì nh baùo loãi (teân laø ERROR): Gôûi thoâng baùo loãi ñeán ngöôøi söû duïng thoâng qua ñe øn hie ån thò. Pha àn meàm Heä Thoáng ñö ôïc vieát baèng ngo ân ngö õ ASSEMBLY cho Z80, hôïp dòch baèng M80 vaø L80. Pha àn me àm Heä Thoáng ñ öôïc na ïp vaøo 1 vi maïch ROM 2732 coù ñòa chæ töø 0000h ñeán 0FFFh. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Ba ûng sa u ñaây t rình baøy toùm taét teân vaø ñòa chæ caùc chöông trình phaàn meàm. TEÂN CHÖÔNGTRÌNH ÑÒA CHÆ NHIEÄM VUÏ MAIN 0000h Töï ñ oäng baùo hieäu RTP 0066h Taïo thôøi gian thö ïc vaø hieån thò thôøi gian thöïc SETTIME 0008h Ñieàu chænh thôøi gian thöïc HOTTIME 0018h Xem, xo ùa va ø ña ët Hottime SKIPTIME 0028h Xem, xoùa vaø ñaët Skiptime DISPLAY Khoâng xaùc ñònh Bieán ñoåi HEX BCD vaø xuaát ra ma ïch hieån thò KEYPRO Kho âng xaùc ñònh Ñoïc dö õ lieäu baøn phím vaø xöû lyù phím aán ERROR Khoâng xaùc ñònh Baùo loãi Baûng 7: TOÙM TAÉT CH ÖÔNG TRÌNH PHAÀN MEÀM 3.2- Toå chöùc döõ lieäu: Döõ lieäu laø moät thaønh phaàn raát qu an tro ïng cuûa phaàn meàm, caáu tru ùc cu ûa noù quye át ñònh giaûi thuaät xöû ly ù döõ li eäu, döõ lie äu coù caáu tru ùc phuø hôïp laøm cho giaûi thuaät ñ ôn giaûn vaø chaët cheõ hôn. Döõ lieäu cuûa phaàn meàm Heä Thoáng Ba ùo Giôø chu û y eáu la ø thôøi gian (Thöù-Giôø- Phuùt-Giaây) d öôùi daïng soá HEX co ù ca áu tru ùc nhö sau: 3.2.1- Thôøi gian thöïc : Goàm 4 by te cho Thöù, Giôø, Phuùt va ø Giaây ñöôïc ña ët trong vuøng nhô ù RAM coù ñ òa chæ laø: DATE EQU 1004H; By te cöùa thöù thöïc HOUR EQU 1005H; By te chöùa Giôø thöïc MIN EQU 1006H; By te chöùa Phuùt thöïc SEC EQU 1007H; By te chöùa Giaây thöïc Thôøi gia n thöïc ñöô ïc chöông trình RTP ha y chö ông trình Set time caäp nhaät. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 3.2.2- Restime: Caùc Re stime ñöô ïc ña ët lieân tieáp nha u tro ng moät vi maïch R OM 2732 ta ïo thaønh baûng Re stime. Do ñ où, baûng Restime co ù caáu truùc la ø moät danh sa ùch tuaàn töï (coøn goïi la ø danh saùch ñ aëc). Ñòa chæ ñ aàu baûng Restime laø 0FA0h. Cuoái baûng Restime la ø byte EORT (En d Of Restime). EORT coù gia ù trò la ø 0FFH duøng ñeå baùo keát thuùc baûng Restime . Moãi Restime chie ám 3 byte, moãi byte cho Giôø, Phu ùt vaø Ma õ chuoâng. Caáu tru ùc baûng Restime ve õ bôûi hình nhö sau : 0FFFh 0FA0h + 3(N -1)+4 0FA0h + 3(N -1)+3 EORT (0FFh) End Of Restime 0FA0h + 3(N -1)+2 Maõ chuo âng N 0FA0h + 3(N -1)+1 Phu ùt Restime N 0FA0h + 3(N -1) Giôø Re stime N . ......... 0FA5h Ma õ chuoâng 2 0FA4h Phu ùt Restime 2 0FA3h Giôø Re stime 2 0FA2h Ma õ chuoâng 1 0FA1h Phu ùt Restime 1 0FA0h Giôø Re stime 1 Hình 22: CAÁU TRUÙC BAÛNG RESTIME 3.2.3-H ottime Vôùi caáu tru ùc töông töï nhö baûng Restime, baûng Hottime goàm 32 byte ñö ôïc ñaët tro ng vuøng nhôù RAM töø ñ òa chæ 1008h ñeán ñòa chæ 1027h. Moãi Hotti me goàm 3 byte (Giôø, Phuùt va ø Maõ chuoâng ). Ba ûng Hottime chö ùa toái ñ a ñö ôïc 10 Hottime, 2 byte cu oái cuûa baûng Ho ttime luo ân co ù giaù trò la ø 0FEh. Byte EOHT (En d Of Hotti me) laø maõ keát thuùc baûng Hotti me. Ca áu truùc baûng Hott ime nhö sau: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 1027h 0FEh Duøn g cho xoùa Hott ime 1026h EOHT (0FEh) END Of Hottime 1025h Maõ chuo âng 1024h Phu ùt Hottime 1 0 1023h Giôø Hott ime 10 ............. 100Ah Maõ chuoâng 1 1009h Phuùt Hottime 1 1008h Giô ø Ho ttime 1 Hình23 : CAÁU TRUÙC BAÛNG HOTTIM E Hottime la ø loaïi döõ lieäu ñoäng. Khi khôûi ñoäng Heä Thoáng pha ûi taïo baûng Hotti me goàm 10 Hott ime roãng, Hottime roãng coù giaù trò l aø 0FEh. Hottime ñöô ïc thieát ke á cho muïc ñích baùo hieäu ñoät xuaát. Moãi Ho ttime chæ coù ta ùc duïng cho moät la àn baùo hieäu, do ñoù Hottime seõ bò xoùa sau khi baùo hieäu . 3.2.4- S kiptime: Caáu tru ùc baûng Hottime cuõng laø d anh saùch tuaàn töï goàm 22 byte trong vuøng nhôù RAM töø ñ òa chæ 1028h ñeán ñòa chæ 103Dh. Moãi Skiptime goàm 2 byte, moät byte cho Giôø vaø moät byte cho Phuùt. Ba ûng Skiptime chö ùa toái ñ a 10 Skiptime , 2 byte cuoái cuûa ba ûng Skiptime cuõng co ù giaù trò 0FEh duøng laøm EOST (En d Of Skiptime). EOST laø maõ baùo keát thuùc ba ûng Skiptime. Ca áu tru ùc baûng Skiptime nhö ô û hình sau : Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 103Dh 0FEh 103Ch EOST End Of Skiptime 103Bh Phuùt Skiptime 10 103Ah Giôø Skiptime 10 .. .......... 1029h Phuùt Skiptime 1 1028h Giô ø Skiptime 1 Hình 24: CAÁU TRUÙC BAÛNG SK IPTIME Cu õng nhö Hot time , Skiptime laø loaïi döõ lieäu ño äng. Vì vaäy, khi Heä Thoáng môùi khôûi ñoäng phaûi ta ïo ba ûng Skiptime go àm 10 Skiptime ro ãng bôûi giaù trò 0FEh. Moãi Skiptime chæ caám baùo hieäu moät thôøi ñ ieåm trong ngaøy , neân se õ bò xoùa ñi sau khi ña õ ñöô ïc söû duïng. 3.2.5-Maõ chuoâng: Maõ chu oâng laø soá nhò phaân 8 bit. Moãi bit seõ ta ùc ño äng leân maïch baùo hieäu tro ng moät giaây theo thöù töï töø bit cao ñeán bit thaáp. Möùc cao seõ l aøm cho maïch ñie àu khieån baùo hieäu hoa ït ño äng. Caùc Restime co ù theå co ù maõ chuoâng kha ùc nhau, tuøy muïc ñích baùo hieäu cuûa töøng t hôøi ñieåm. Maõ chu oâng cho caùc Hottime ñ eàu gioáng nhau vaø t heå hieän muïc ñích baùo hieäu ñoät xua át. Ngöôøi vie át taïm thôøi qui ñònh maõ chuo âng nhö sau: Maõ chuoâng Restime coù 2 kieåu:  Baét ñaàu tieát hoïc: 0ABh (1 0101011)  Keát thuùc tieát hoïc: 0CFh (11001111) Maõ chuoâng cho Hottime: 0B7h (10110111). 3.2.6- Caùc bieán : Ngoa øi caùc döõ lieäu tre ân, coøn söû duïng ca ùc bieán ñe å thuaän lôïi cho ca ùc chöô ng trình, teân vaø ñò a chæ nhö sa u: SPMASK EQU 1000h ; M aët naï che hieån thò thôøi gian thö ïc. ; (1 : che ) HTSTA EQU 1001h ; Tra ïng thaùi baûng Hottime. ; Soá Hottime coù tro ng baûng. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng SKTSTA EQU 1002h ; Tra ïng thaùi baûng Skiptime ; Soá Skiptime coù tro ng baûng 3.2.7- Phaân c hia vuøng nhôù : Trong khoâng gian 6KB goàm 4KB ROM vaø 2KB RAM boä nhôù cu ûa Heä Thoáng ñ öôïc phaân chia nhö sau : 17FEh 102Eh STACK 103Dh 1028h BAÛNG SK IPTIME 1027h 1008h BAÛNG HOTTIME 1007h 1005h THÔØI GIAN TH ÖÏC 1004h 1000h VUØNG ÑEÄM 0FFFh 0FA0h BAÛNG RESTIME 0F9Fh 0000h PHAÀN MEÀM Hình 25: BAÛNG PH AÂN CHIA BOÄ NHÔÙ 3.3- Caùc chöông trình. 3.3.1-Chöông tr ình MAIN:  Moâ taû chö ông tr ình: Chöông trình MAIN ñöô ïc ña ët vaøo vuøng nhôù baét ña àu töø ñ òa chæ 0000h. Noù ñ öôïc thöïc hieän ngay khi heä thoáng vöøa ñöô ïc caáp ñieän. Chöô ng trình MAIN seõ khôûi ñ oäng heä thoáng vaø thöïc hieän chöùc naêng töï ño äng baùo hieäu. Lö u ño à toång quaùt nhö sau : Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng BAÉT ÑAÀU CHÔØ 1 PH UÙT KH ÔÛI ÑOÄNG H EÄ TH OÁNG N THÔ ØI GIAN THÖ ÏC BAÈNG THÔ ØI Ñ IEÅM BAÙO HIEÄU ? Y COÙ B AÙO HIEÄU Y KH OÂ NG ? N XOÙ A SKIPTI ME BAÙO H IEÄ U N PHA ÛI HOTT I ME KH OÂ NG? Y XOÙ A HOTT IME Hì nh 26 : LÖU ÑOÀ TOÅNG QUAÙT C HÖÔNG TRÌNH MA IN Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Khôûi ñoäng heä th oáng nhö sa u:  Khô ûi ñoäng Stack ôû ñ òa chæ 27FFh  Reset ma ïch baùo hieäu : xuaát ra giaù trò 0h ô û ñòa chæ 3000h.  Xoùa vuøng nhôù töø 1000h ñe án 1007h ba èng gia ù trò 00h.  Ta ïo baûng Hottime vaø Skiptime roãng coù ñ òa chæ töø 1008h ñe án 103Dh baèng giaù trò 0FEh.  Choïn ngaét INT vaø cho pheùp ngaét.  Hieån thò thôøi gian thöïc ñ aàu t ieân 2 00 00 00. Töï ñoäng baùo hie äu. Quaù trình töï ño äng baùo hieäu ñöô ïc baét ña àu ngay sau khi khôûi ño äng heä thoáng, quaù trình naøy do moät voøng laëp thöïc hieän, mo ãi phuùt moät la àn. _ Chöông trình baét ña àu duyeät baûng Hottime vaø Restime ñe å tìm moät thôøi ñ ieåm baùo hieäu baèng vôùi thôøi gian thöïc, neáu khoân g coù chöông trình qua y veà chôø thöïc hieän qua ù trình môùi. _ Ne áu coù thôøi ñ ieåm truøng vôùi thôøi gian thöïc, chöô ng trình seõ du yeät ba ûng Skiptime. Neáu kho âng coù Skiptime baèng vôùi thôøi gian thöïc vaø thöù la ø thöù 2 – 6 thì chöô ng trình ra quye át ñònh baùo hieäu (n eáu thôøi ñ ieåm baùo hieäu ñoù laø Resti me). Neáu coù Skiptime baèng vôùi thôøi gian thöïc, nghóa la ø thôøi ñieåm ñ où bò ca ám baùo hieäu, chöô ng trình seõ khoâng ba ùo hieäu vaø xo ùa Skiptime ñoù. _ Sau khi baùo hieäu hay xoùa Skiptime xong chöô ng trình seõ xoùa Hott ime (neáu thôøi ñi eåm baùo hieäu laø (Hottime) ro ài trôû veà thöïc hieän quaù trình môùi. _ Khi nha än quy eát ñònh baùo hieäu, chöô ng trình se õ la áy maõ chuoâng cu ûa thôøi ñ ieåm caàn baùo hieäu. Moãi giaây 1 bit trong b yte maõ chuoâng se õ ñö ôïc tru yeàn cho maïch baùo hieäu theo thöù töï töø D7 ñeán D0, möùc ca o la øm chuo âng re o. Sau cuøng xuaát cho ma ïch möùc 0 ñeå re se t. Sau 9 gia ây chöông trình hoaøn ta át vieäc baùo hieäu . Ñeå pha ân bieät thôøi ñie åm baùo hieäu laø Restime hay Hott ime , ta duøng mo ät ma õ ñ ònh höôùng. Maõ ñ ònh höôùng naøy naèm tron g thanh ghi C: Khi C = 0 ; ñ ònh höô ùng Re stime , C = 1; ñò nh höô ùng Hotti me. Vaán ñeà xoùa Hottime vaø Skiptime: Ñeå baûng Hotti me (Skiptime) vaãn giöõ ñöô ïc ca áu truùc laø danh sa ùch tuaàn töï sau khi xoùa Hotti me (Skipti me), pha ûi thöïc hieän theo caùch sau : dôøi nhö õng byte co øn laïi tro ng baûng keå töø sa u khi Hott ime (Skiptime) ca àn xoùa ñ eán ñòa chæ cuûa Hotti me (Skiptime ) caàn xo ùa.  Löu ñoà chi tieát c höô ng tr ình MAIN Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng BAÉT ÑAÀU LA ÁY GIÔ Ø B AÙO HIE ÄU KEÁ LA ÁY GIÔ Ø, PHUÙT THÖÏC ÑÒ A CHÆ Ñ AÀU B AÛ NG HOTTIME TRÖØ 3 KHÔÛI ÑOÄ NG HEÄ TH OÁ NG P HAÛI EOF HT? LAÁY PHUÙT BAÙO HI EÄU PHAÛI EOFR T? BAÈNG GI ÔØ THÖÏC? BAÈN G PHUÙ T THÖÏ C ? CA ÁM NGAÉT IN T LAÁY ÑÒ A C HÆ Ñ AÀU BAÛ NG S KI P TI ME TR ÖØ 2 PHUÙT THAY ÑOÅI ? LA ÁY PHUÙT THÖÏC LAÁY ÑÒ A C HÆ ÑAÀU BAÛNG R ESTIME TRÖØ 3 Y MI NW T Y N Y N N Y N Y N Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng COØ N SKI P TI ME ? N N PHAÛI T7 HAY CN ? Y Y LAÁY GIÔ Ø S KIPTIME PHAÛI HOTTIM E / N Y N BAÈNG GIÔØ T HÖÏ C ? LAÁY MAÕ CHUOÂNG Y LAÁY P HUÙT S KI PTIM E LAÁY GI AÂY THÖÏC N B AÈNG PHUÙT T HÖÏC ? Y N COÙ TH AY ÑOÅI ? XOÙ A S KIP TIME Y CA ËP NHA ÄT SOÁ S KI PTIM E XUAÁT R A MAÏC H B AÙ O HIEÄ U DÒCH TRA ÙI MAÕ CHUO Â NG N DÒ CH ÑU Û 9 BIT C HÖA ? Y PHAÛI HOTTI ME ? N Y XOÙA HOT TI ME CAP N HAÄT SOÁ HOT TIME HÌnh 27 : LÖU Ñ OÀ CH I TIEÁT CH Ö ÔNG TRÌ NH M AI N Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 3.3.2- Chöô ng tr ình RTP (Realtime pr ogr am).  Moâ taû chö ông tr ình . Chöông trình ñöôïc ña ët ôû ñ òa chæ 0066h ñaùp ö ùng cho ngaét NMI. Ta àn soá goïi ngaét laø 1Hz. Khi ñ öôïc go ïi, chöông trình RTP thöïc hieän nhö sau: Taêng giaây theâm 1. Khi gia ây = 60 phaûi taên g phuùt theâm 1 vaø cho giaây baèng 0. Khi phuùt = 60 pha ûi taên g giôø theâm 1 vaø cho p hu ùt baèng 0. Khi giôø = 24 phaûi taêng thö ù theâm 1 vaø gaùn giôø baèng 0. Khi thöù = 8 phaûi gaùn t höù = 2 Khi giaây thöïc coù sö ï thay ñoåi, phaûi tham khaûo DPMASK ñ eå quyeát ñònh vieäc hieån thò thô øi gia n thöïc: Neáu DPMASK = 0 ; Hieån thò DPMASK = 1 ; Khoâng hieån thò.  Löu ñoà chi tieát c höô ng tr ình RTP BAÉT Ñ AÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT AF, BC, DE, HL V AØO ST ACK GIAÂ Y + 1 GIAÂY = 60 ? N Y GIAÂ Y = 0, PHUÙT + 1 PHUÙ T = 60 ? N Y P HUÙ T = 0, GI ÔØ + 1 GI ÔØ = 24 ? N Y GIÔ Ø = 0, THÖÙ + 1 THÖÙ = 9 ? N Y THÖÙ = 2 Y COÙ C HE HIEÅN THÒ ? N HI EÅ N T HÒ TH ÔØI GI A N THÖÏC HO ÀI PHUÏC AF, BC, DE, HL KE ÁT THUÙC Hì nh 28 : LÖU ÑOÀ CHÖÔNG TRÌNH RTP 3.3.3-Chöông tr ình Se ttime. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng  Moâ taû chö ông tr ình: Chöông trình Settime phuïc vuï ngöôøi söû duïng tro ng vieäc ñieàu chænh thôøi gian thöïc thoâng qua baøn phím nhaèm giuùp ngöôøi sö û duïng ñi eàu chænh thôøi gian thöïc ba èng baøn phím. Do ñoùù, chöô ng trình Settime ñöôïc ña ët ôû ñ òa chæ 08h trong vuøng nhôù. Chöông trình Settime seõ goïi chöông trình K ey pro ñe å xöû lyù baøn phím nhaè m giuùp ngöôøi sö û duïng ñie àu chænh thôøi gian thöïc baèng baøn phím. Tröôùc khi goïi Key pro, Settime caàn chuaån bò caùc döõ lieäu ca àn thieát cho Ke ypro nhö:  Thanh ghi B chöùa giô ø hieän taïi.  Thanh ghi C chöùa phu ùt hieän ta ïi  Thanh ghi D chöùa thöù hieän taïi. Tröôùc khi thoaùt, Settime p haûi hieån thò laïi t hôøi gian thöïc. Ngöô øi sö û duïng phaûi theo qui ñònh cuûa chö ông trình Ke ypro ñeå ñ ieàu chænh thôøi gian thöïc.  Löu ñoà chi tieát. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng BAÉT ÑAÀU C AÁT AF , BC ,DE, HL VAØO STACK LAÁY THÖÙ GIÔØ PHUÙT HIEÄN TAÏI ÑAËT GIAÂY THUÏC = 0 KEYPRO HIE ÅN THÒ THÖÙ GIÔØ P HUÙT THÖÏC P HUÏC HOÀI AF,BC,DE, HL TÖØ STAC K KEÁT THUÙC Hình 29 : LÖU ÑOÀ CHÖÔNG TRÌNH SETTIME 3.3.4-Chöô ng tr ình H ottime. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng  Moâ taû chö ông tr ình. Ñaây laø chöô ng trình phuïc vuï nga ét mode 0 ôû ñòa chæ 018h ñ aûm nhieäm chöùc naêng veà Ho ttime : Xe m nhöõng Hotti me ña õ coù trong baûng (goïi la ø preview), xoùa nhöõng Ho ttime ñ aõ co ù trong baûng (goïi la ø delete), ñaët moät Ho ttime môùi (goïi la ø Inse rt). Löu ñoà toång qua ùt nhö sau: BAÉT ÑAÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT AF,B C, DE,HL VA ØO ST ACK DPMASK =1 HIEÅN THÒ HOTTIME Y ÑÒA CH Æ PHA ÛI PHÍM “+” HO TTIME KEÁ SAU N Y Ñ ÒA CHÆ PH AÛI PHÍM “-“ HOTTIME KE Á TRÖÔ ÙC N Y PH AÛI PHÍM “DEL” XO ÙA HOTTIME N Y PHAÛI PH ÍM “OK” DP MA SK = 0 N Y ÑAËT 1 PHAÛI PHÍM “Ins” HOTTIME MÔÙI HIEÅN THÒ THÔ ØI GIAN THÖ ÏC N HOÀI PHU ÏC CAÙC TH ANH GHI KEÁT T HUÙC Hình 30 : LÖU ÑO À TOÅNG QU AÙT CHÖÔNG TRÌNH HOTT IME Chöông trình Hottime seõ xöû lí caùc phím: Ins, +, -, Del/Date va ø phím OK ñeå giuùp ngöôøi söû duïng ñieàu khieån ba chöùc naêng treân. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Khi chöông trình ñö ôïc goïi, maëc nhieân seõ laø che á ño ä thöïc hieän chöùc naêng Review vaø Delete , caùc phím a án nhö sau :  “+” : Hieån thò Hottime ke á sau (k hoâng hieån thò quay voøng).  “-“ : Hieån thò Ho ttime ke á tröôùc (khoâng hieån thò quay voøng)  “Del”: Xoùa Hottime h ieän haønh (ñang ñö ôïc hieån thò).  “Ins” : Ña ët 1 Ho ttime mô ùi.  “OK”: Thoaùt. Neáu trong baûng co ù Hot time thì Hotti me ñ aàu tieân seõ ñö ôïc hieån thò khi chöô ng trình ñö ôïc goïi. Coøn baûng Hottime roãng thì maïch hieån thò seõ ta ét (ca ùc Led 7 ño aïn hieån thò giôø, phuùt ô û traïng thaùi Bla nk) vaø khi a án phím “+” hay “-“ maïch hieån thò vaãn ta ét. Neáu khoâng coù Hotti me naøo tro ng baûng (caùc Led 7 ñoa ïn hieån thò giôø, phuùt ôû tra ïng thaùi Blank), khi aán phím “Del” thì xuaát hieän thoâng baùo loãi do chöông con Error thöïc hieän. Khi xoùa Ho ttime xong, chö ông trình se õ hieån thò laïi Hott ime ñ aàu tieân trong baûng. Khi ña ët 1 Ho ttime mô ùi: Neáu trong baûng ñ aõ ñuû 10 Hotti me chöông trình seõ duøng chöông trình con Error ñeå baùo lo ãi, aán “OK” ñeå boû loãi. Neáu trong ba ûng coøn Hott ime ro ãng, chö ông trình Ho ttime se õ goïi chöô ng trình con Key pro ñe å ngöôøi sö û duïng duøng baøn phím choïn giôø, phu ùt cho Ho ttime môùi. Tröô ùc khi goïi Keypro, chöô ng trình Ho ttime pha ûi xaùc ñ ònh ñ òa chæ ñaët Hottime môùi ñeå truye àn cho Ke ypro . Ngöôøi sö û duïng duøng baøn phím theo quy ñ ònh cuûa chöô ng trình Keypro ñe å ñaët Ho ttime mô ùi. Khi thoaùt khoûi Ke ypro chöô ng trình tieáp tuïc ghi maõ chuoâng cho Hotti me (0B7h) vaø trôû veà chö ùc naêng preview vaø hieån thò Hottime vöøa caøi ñaët. Ñeå traùnh vieäc hieån thò thôøi gian thöïc do c höông trình RTP thöïc hieän, phaûi ñaët maët naï DPMASK=1 ñe å che hieån thò ôû ñaàu chöông trình Hott ime vaø boû maët naï DPMASK = 0 ôû cu oái chöông trình Ho ttime ñeå cho pheùp RTP hieån thò thôøi gian thöïc trôû la ïi.  Löu ñoà chi tieát Löu ñoà tieát chöông trình Ho ttime ve õ ôû hình sau: BAÉT ÑAÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT AF, BC, DE, HL VAØO S TAC K DPMASK = 1 ÑÒA CHÆ ÑA ÀU BAÛNG HOTTIME HI EÅN THÒ HOTTIME (H T) READK EY ÑOÏC BAØN PH ÍM Y N Y ÑÒA CHÆ HT CUOÁI ? P HAÛI PHÍM “+”? HT SAU N N Y Ñ/C HT HT ÑAÀU ? PHA ÛI “- “ ? XOÙA HT TRÖÔÙC N Y Y Y N PH ÍM “D EL” ? COÙ H T ? BAÙO LOÃI N Y PHÍM “ OK” ? N READKEY N DPMASK = 0 PH ÍM “Ins ” ? Y Y BAÙO L OÃI Ñ UÛ 10 H T ? H IEÅN TH Ò THÔØI GIAN TH ÖÏC N PHUÏC HOÀI CAÙC THANH GHI ÑÒA CHÆ HT MÔÙI KEYPRO KEÁT THUÙC GHI MAÕ CHUOÂNG Hình 31 : LÖ U ÑOÀ CHI TIEÁT CH Ö Ô NG TRÌ NH HOT TI ME 3.3.5- Chöông trình SKIPTIME.  Moâ taû chö ông tr ình: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Chö ông trì nh Skiptime töông tö ï nhö Hottime phuïc vu ï 3 chöùc naêng ve à Skiptime : Xem S kiptime co ù trong baû ng, xoùa Skiptime vaø ñ aët Skiptime . Chö ông trì nh seõ ñ öô ïc ñ aët taïi ñòa chæ 0028h tro ng vuøng nhôù ñeå phuïc vu ï cho ngaét INT mode 0. Veà hoaït ño äng ho aø n toaøn gio áng chöông trình Ho ttime nhö ng Skiptime kho âng caà n ñ aët maõ chuoâng , ñ òa chæ ñ aàu baûng Skiptime laø 1028h vaø moãi S kiptime co ù 2 by te. Löu ñoà to ång quaùt ho aø n toaøn gioá ng nhö löu ñ oà to ång quaùt cuûa chöông trình Ho ttime.  Löu ñoà chi tieát: Löu ñoà chi tie át chö ông t rình Skiptime gioáng nhö cuûa Hotti me , ñöô ïc ve õ ôû hình s au: BAÉT ÑA ÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT AF, BC, DE, H L VAØO STACK DPMASK = 1 ÑÒA CH Æ ÑAÀU BAÛNG SKIPTIME (ST) HIEÅN THÒ SKIPTIME READK EY Y ÑOÏC BAØN PH ÍM N Y ÑÒA CHÆ ST CUOÁI ? PHAÛI PH ÍM “+”? ST SAU N N Y Ñ/C ST ST ÑAÀU ? PHA ÛI “- “ ? XOÙA ST TRÖÔÙC N Y Y Y N PHÍM “DEL ” ? CO Ù ST ? BA ÙO LOÃI N Y PHÍ M “O K” ? N READKEY N DPMASK = 0 PH ÍM “Ins ” ? Y Y BA ÙO LOÃI ÑU Û 10 ST ? H IEÅN THÒ GIÔ Ø PHUÙT THÖÏC N PHUÏC HOÀI CAÙC THANH GHI ÑÒA CHÆ ST MÔ ÙI KEYPR O KEÁ T THUÙC Hình 32 : LÖU ÑOÀ CHI TIEÁT CHÖÔNG T RÌNH SKIPTIME 3.3.6- Chöông trình co n DIPLAY:  Moâ taû chö ông tr ình: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Ñe å coù t heå hieån thò Thöù – Giôø – P huùt - Gia ây tre ân led 7 ñoa ïn ôû daïng soá thaäp phaân, ta caàn bieán ñoåi döõ lieäu thôøi gian ôû da ïng soá HEX sa ng BCD. Muïc ñích cuûa vieäc bieán ñ oåi naøy la ø ñ eå chæ ca àn thöïc hieän vieäc so sa ùnh thôøi gian thöïc taïo ra töø 0 ñ eán 9 tha y vì phaûi so saùnh t öø 0 ñeán 59. Döõ lieäu thôøi gian thöïc naèm trong 4 byte 1004h, 1005h, 1006h,1007h ñö ôïc vieát san g vuøng ñ eäm goà m 4 byte 1050h, 1051h,1052h,1053h töông öùng tröôùc khi bieán ñ oåi töø HEX sang BCD ñeå hieån thò. Qua kha ûo saùt cuï theå 60 giaù trò ñaàu cu ûa soá HEX töø 0h ñe án 3Bh, töô ng öùng vôùi soá BCD coù gia ù trò töø 0 ñe án 59 ngöô øi vie át tha áy coù qui lua ät bie án ñoåi nhö sau : HEX GIA SOÁ BCD H EX GIA S OÁ BCD 00 01 02 03 04 05 06 07 08 09 + 00h 00 01 02 03 04 05 06 07 08 09 1E 1F 20 21 22 23 24 25 26 27 + 12h 30 31 32 33 34 35 36 37 38 39 0A 0B 0C 0D 0E 0F 10 11 12 + 06h 10 11 12 13 14 15 16 17 18 28 29 2A 2B 2C 2D 2E 2F 30 + 18h 40 41 42 43 44 45 46 47 48 Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng 13 19 31 49 14 15 16 17 18 19 1A 1B 1C 1D + 0Ch 20 21 22 23 24 25 26 27 28 29 32 33 34 35 36 37 38 39 3A 3B + 1Eh 50 51 52 53 54 55 56 57 58 59 Caùch khôûi taïo 8279: LD HL,2001h LD (HL),00000000B ; Hieån thò 8 kí töï l oái va øo tra ùi LD (HL),00100101B ; Chia taàn so á xung clock ôû ngoõ va øo chaân soá 3 cho 5 Löu ñoà chöông trình hieån thò. BAÉT ÑAÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT AF, BC, DE, HL VAØO ST ACK ÑÒA CHÆ LED THÖÙ - 1 INC HL ÑÒ A CHÆ LE D GI AÂY +1 ? LD A,(HL) HOÀI PHUÏC AF, BC, DE,H L A < 0Ah ? KEÁT THUÙC A < 14h ? A A+06h A < 1Eh ? A A + 0Ch A < 28h ? A A + 12h A < 32h ? A A + 18h A < 3Ch ? A A + 1Eh HIE ÅN THÒ Hì nh 33 : LÖU ÑO À CHÖÔ NG TRÌ NH DISPL AY 3.3.7- Chöông trình co n KEYPRO:  Moâ taû chö ông tr ình : Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Caùc chöùc naêng Settime, ñaët Hott ime/Skip time caàn söû duïng baøn phím ñeå thay ñ oåi giôø, phuùt ñ eán giaù trò mong muoán vaø quan saùt Giôø Phu ùt ñang thay ñoåi t re ân maøn hình. Chöô ng trình co n KEYPRO nhaèm phuïc vuï y eâu caàu chung ño ù. KEYPRO seõ xöû lyù ca ùc toå hô ïp phím “Ins_+”, “Ins_ -“ ,“De l/Date _ + ”, “Del/Date _ -“ vaø caùc phím “+”, “-“,”OK”. Moãi phím khi a án seõ ta ïo ra 1 giaù trò vaø thöïc hieän 1 chö ùc naêng cho tro ng baûng sau: PH ÍM GIAÙ TRÒ CH ÖÙC NAÊNG Date_+ 0Edh Ta êng thöù Date_- 0EBh Gia ûm thöù Ins_+ 0FCh Ta êng giôø Ins_- 0FAh Gia ûm giôø + 0FDh Ta êng phuùt _ 0FBh Gia ûm phuùt OK 0F7h Lö u Giôø Phuùt vaø thoaùt Baûng 8: CH ÖÙC NAÊNG VAØ GIAÙ TRÒ CAÙC PHÍM Löu yù: Caùc toå hôïp phím: ”Date_+” vaø “Date_-“, “Ins_+” vaø “Ins_-“ ñö ôïc taïo ra do aán phím “+ ” hay ”-“ trong khi aán vaø giöõ phím “Ins”, “Dat e”. Vì baøn phí m ñ öôïc thieát keá nhö laø vuøng nhôù co ù ñ òa chæ töø 4000h ñe án 4FFFh neân khi ñ oïc baøn phím, chöông trình con KEYPRO thöïc hieän le änh ñ oïc boä nhôù taïi ñòa chæ 4000h hay lôùn hôn (giôùi haïn tro ng vuøng nhô ù cho phe ùp) vôùi chu kyø khoa ûng 175mS. Khoa ûng thôøi gian ño ù laø ñuû ñ eå choáng doäi cho phím ñ öôïc aán ñ oàng thôøi ñe å quan saùt ñö ôïc Giôø Phuùt ñang thay ñ oåi lieân tu ïc khi ngöôøi söû duïng a án vaø giöõ phím “+” hay “-“. Moãi khi coù phím ñöô ïc a án (ngo aïi trö ø phím” O K”) nghóa laø thöù, giôø, phuùt ña õ co ù sö ï thay ñ oåi, KEYPRO seõ nhôø chöông trình con DISPLAY hieån thò giôø phu ùt ñaõ thay ñ oåi. Chöông trình trieäu goïi KEYPRO phaûi tru yeàn cho KEYPRO ñòa chæ boä nhôù ñe å ghi giôø phuùt ñaõ thay ñoåi, ñòa chæ na øy phaûi ñ aët tro ng thanh ghi HL.  Löu ñoà chi tieát: BAÉT Ñ AÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT BC VAØO ST ACK HI EÅN THÒ THÔÙI G I A N Ñ ANG THAY ÑOÅI ÑOÏC B AØ N PHÍM LA ÁY BC TÖØ ST ACK Y Y TA Ê NG T HÖÙ ? TH ÖÙ + 1 THÖÙ = 9 ? TH ÖÙ = 2 N N Y Y GIAÛM T HÖÙ ? TH ÖÙ – 1 THÖÙ = 1 ? TH ÖÙ = 8 N N Y Y TA ÊNG GIÔ Ø ? GIÔ Ø + 1 GIÔ Ø = 24 ? GI ÔØ = 0 N N Y Y GIAÛM GIÔØ ? Giôø -1 GIÔ Ø = -1 ? GIÔ Ø = 23 N N Y Y TAÊN G P HUÙ T ? P HuùT ù + 1 PhùuùT = 60 ? PhuùT = 0 N N Y Y GIAÛM P HUÙT ? PhuùT – 1 PhuùT = -1 ? PhuùT = 59 N N N P HAÛI O K ? Y GHI T HÔØI GIAN THÖÏC V A ØO BOÄ N HÔÙÙ KEÁ T THUÙC Hì nh 34 : LÖU ÑOÀ CHI TEÁT C HÖÔ NG TRÌ NH KEY PRO 3.3.8- Chöông trình co n ERROR.  Moâ taû chö ông tr ình Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Nhaèm baùo loãi cho ngö ôøi söû duïng bieát nhö õn g loãi nhö: xoùa Hotti me/Skipti me roãng, t heâm Hottime/Skiptime thöù 11. Nhaán phím “OK” ñeå boû loãi (tho aùt khoûi ERROR) Thoâng baùo loãi baèng ca ùch chôùp ta ét chöõ ERROR treân ñeøn hieån thò.  Löu ñoà: Löu ñoà chöông trình ERROR n hö sa u: BAÉT ÑAÀU Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng CAÁT AF, BC, DE, HL VAØO STACK HIEÅN T HÒ “ERROR” T RÌ HOAÕN ÑOÏC PHÍM Y PHAÛI OK ? N TAÉT LED T RÌ HOAÕN PHUÏC HOÀI AF ,BC, DE, HL TÖØ STACK KEÁT THUÙC Hình 35 : LÖU ÑOÀ CHI TIEÁT CHÖÔNG TRÌNH ERROR Toùm laïi Toa øn boä phaàn meàm ñöô ïc thieát keá ñeå ña ùp öùng cho ye âu caàu va ø mu ïc ñích cuûa ñ eà taøi. He ä Thoáng baùo giôø t öï ño äng söû duïng caùc chöông trình: Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng  Chöông trình MAIN ñeå khôûi ño äng heä thoáng, so saùnh thôøi gian thöïc vôùi caùc Re stime, Ho time , Skiptime vaø thöù trong tuaàn ñ eå ra quy eát ñònh baùo hieäu vaø ñ ieàu khie ån baùo hieäu.  Chöông trình RTP (Rea l Time Program) ñe å taïo thôøi gian thöïc  Chöông trình SETTIME phuïc vuï cho chænh söûa thôøi gia n thöïc.  Chöông trình HOTTIME phu ïc vuï cho vieäc ña ët thôøi ñie åm baùo hieäu ñoät xua át.  Chöông trình SKIPTIME phuïc vu ï cho ñaët thôøi ñie åm caám baùo hieäu.  Chöông trình con KEYPRO xöû lí baøn ph ím ñ eå phuïc vuï cho Settime, Hott ime, Skiptime.  Chöông trình con DISPLAY phuïc vuï cho hieån thò thôøi gian thöïc.  Chöông trình con ERROR ñeå thoâng baùo lo ãi cho ngöôøi söû du ïng. IV- Thi coâng. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Goàm sô ñ oà ma ïch in lôùp t re ân, sô ño à maïch in lôùp döôùi vaø sô ñoà boá trí linh kieän. Vì caùc sô ñ oà naøy ñöô ïc veõ ô û Eagle neân kho âng mang ñöô ïc san g word (kích thöôùc lôùn) neân khoâng trình ba øy ôû ñaây. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng PHAÀN III KEÁT LUAÄN VAØ KIEÁN NGHÒ Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng I- KEÁT QUAÛ THÖÏC NGHIEÄM. Vôùi thie át keá nhö tre ân, phaàn meàm He ä Thoáng hoaït ñoäng toát vaø oån ñònh, ho aøn toaøn t öông thích vôùi pha àn cöùng. Qua thöïc nghieäm, Heä Thoáng hoaït ño äng toát, ca ùc tính naêng ña õ ñ eà ra ñe àu ñaït y eâu caàu. Heä Tho áng coù caùch söû duïng ñôn giaûn. Tuy nhieân Heä Thoáng cu õng coù moät so á haïn cheá: Heä Thoáng ñ oøi hoûi phaûi ñöôïc ca áp ñie än lieân tuïc ñe å hoa ït ñoäng ñ eám thôøi gian vaø baùo hieäu chính xaùc. Do ñoù, He ä Thoáng pha ûi duøng ñeán a ccu döï phoøng, ngöô øi söû duïng pha ûi toán chi phí cho accu. Heä Thoáng seõ khoâng baùo hieäu trong khi ngöô øi söû duïng ña ng thöïc hieän ca ùc chöùc na êng veà Hottime vaø Skiptime . II- MOÂ TAÛ HEÄ THOÁNG VAØ HÖÔÙNG DAÃN S ÖÛ DUÏNG: Baûng ñieàu khieån Heä Thoáng ñöôïc veõ nhö sau: 1 2 SET HOT SKIP SELE CT 3 ACCE PT INSERT DEL OK Chuù thích : 1 Hieån thò ( thöù, giôø, phuùt, giaây ). 2 Ba ñeøn chæ thò chöùc naêng SETTIME , HOTTIME va ø SKIPTIME 3 Ba øn phím. Khi Heä Thoáng vöøa ñ öôïc khô ûi ñoäng xong, ñeøn hieån thò coù daïng 2 00 00 00 ñ oàng thôøi ñ eøn Settime saùng leân ye âu caàu ngöôøi sö û duïng ca àn phaûi ñie àu chænh thôøi gian thöïc. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Ñeå löïa cho ïn caùc chöùc naêng: SETTIME, HOTTIME hay SKIPTIME ngöôøi söû duïng aán phím “select” cho ñe án khi ñeøn chæ thò chöùc naêng mo ng muoán saùng leân. Khi khoâng mu oán löïa choïn chö ùc naêng nöõa hay sau khi thöïc hieän xo ng chö ùc na êng naøo ño ù, ngöôøi söû duïng phaûi aán phím “sellect” cho ñe án khi ca û ba ñe øn chæ thò ñeàu ta ét ñe å He ä Thoáng trô û laïi hoa ït ñoäng bình thöôøng. Sau khi ña õ löïa choïn xong chöùc naêng mong mu oán, ngöôøi söû duïng aán phím “acce pt” ñeå baét ñaàu thöïc hieän caùc chöùc na êng cuûa chöùc naêng ñ où. Löu yù: Chöùc naêng HOTTIME hay SKIPTIME coù ba phuïc vuï : xem, xoùa vaø ñaët môùi. 2.1- Chöùc naêng ñieàu chænh thôøi gian thöïc (SETTIME ). Söû duïng caùc phím treân ba øn phím ñeå ñ ieàu chænh thôøi gian thöïc t heo q ui ñ ònh nhö sa u:  Phím “+ “ taêng phuùt.  Phím “-“ giaûm phu ùt.  Phím “Ins _+” ta êng giôø.  Phím “Ins_-“ giaûm giôø.  Phím “Del/Da te_ +” taêng thöù.  Phím “Del/Da te_-“ giaûm thöù. Phím “OK” chaáp nhaän giôø phuùt ñ aõ ñ ieàu chænh vaø thoaùt khoûi chöùc naêng SETTIME . Khi a án caùc phím “+” hay “-“ coù theå aán va ø giöõ ñeå thöù, giô,ø phuùt taêng lieân tuïc. Ghi chuù : Phím “I ns_+”, “In s_-“ hay “Del/ Date _+”, “Del/ Date _-“ ñö ôïc taïo ra do aá n phím “+ ” hay ”-“ trong khi aá n vaø giöõ phím “Ins”, “Del/Date”. 2.2- Chöùc naêng veà Hottime. Chöùc naêng HOTTIME goàm coù: Xem, xoùa vaø ñaët Hot time mô ùi. Caùch söû duïng baøn phím nhö sau:  Phím “+” Xem HOTTIME ke á sa u.  Phím “-“ Xem HOTTIME keá tröô ùc.  Phím “Del” Xoùa HOTTIME hieän ha ønh.  Phím “OK” thoaùt khoûi chöùc naêng HOTTIME. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Phím “Ins” ñ aët mo ät HOTT IME môùi. Sau ñoù söû duïng c aùc phím treân baøn phím gioáng nhö “ñie àu chænh thôøi gian thöïc “ ñe å choïn giôø, phu ùt cho HOT TIME môùi. Sau ñoù aán phím “OK” ñ eå trôû veà chöùc naê ng xem. Mo ãi laàn aá n phím “Ins” c hæ ñaët ñö ôïc moät HOTTIM E. Löu yù: Khi khoâng coù moät HOTTIME naøo trong boä nhôù ñ eøn hieån thò giôø, phuùt seõ ta ét. Caùc tröôøng hôïp x uaát hi eän thoâng baùo loãi.  Xo ùa HOTTIME trong khi khoâng coù mo ät HOTTIME naøo tron g boä nhôù.  Ña ët HOTTIME thöù 11. Thoâng baùo loãi la ø chöõ ERROR chô ùp taét treân ñ eøn hieån thò. Khi gaëp thoâng baùo loãi aán phím”OK” ñeå boû loãi. 2.3- Chöùc naêng veà Skiptime. Chöùc naêng Skiptime goàm co ù: Xe m (Review), Xoùa (Del), Ña ët Skipptime (Ins). Söû duïng baøn phím nhö sau :  Phí m “+” : Xe m S KIPTIME keá tieáp  Phí m “-“ : Xe m S KIPTIME keá trö ôùc  Phí m “Del”: Xoùa S KIPTIME hieän ha ønh (Ñang ñöôïc hieån thò)  Phí m “OK”: Thoaùt khoûi chöùc naêng SKIPTIME Phím “Ins” : ñ aët 1 SKI PTIME môùi. Khi ñoù, s öû duïng ca ùc phím tre ân baøn phím gioáng nhö “Ñieàu chænh thôøi gian thöïc” ñe å cho ïn Giôø Phu ùt cho SKIPTIME môùi. Sau khi duøng ca ùc phím: “Ins_+”, “Ins_-“, “+”, “-“ ñeå cho ïn Giôø, Phuùt SKIPTIME, a án phím “OK” ñe å trôû veà chöùc na êng xem. Moãi l aàn a án “Ins” chæ ñaët ñöô ïc moät SKIPTIME. Löu yù: Khi kho âng coù S kiptime trong boä nhôù, ñe øn hieån thò giôø, phuùt se õ taét. Caùc tröôøng hôïp x uaát hi eän thoâng baùo loãi:  Xo ùa Skiptime tro ng khi khoâng coù Skiptime na øo trong boä nhôù.  Ña ët Skiptime thöù 11 Thoâng baùo lo ãi laø chöõ ERROR chô ùp taét tre ân ñe øn hieån thò. Khi ga ëp thoâng baùo loãi aán phím “OK” ñeå boû lo ãi. III- KEÁT LUAÄN VAØ HÖÔÙNG PHAÙT TRIEÅN CUÛA ÑEÀ TA ØI Kyõ thuaät vi xöû lí ngaøy caøng ñoùng va i tro ø quan troïng tro ng töï ñoäng ñ ieàu khieån. No ù laø kyõ thua ät cu ûa töô ng lai, la ø chìa khoùa ñ i va øo co âng nghe ä hieän ñaïi. tuy nhieân ñoái vôùi sinh vieân nga ønh ñ ieän töû ñaây vaãn coøn laø mo ät lónh vöïc mô ùi meõ, höùa Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng heïn vaø mô û ra nhieàu trieån voïng. Chính vì vaäy , ñ eå goùp phaàn ta ïo neàn ta ûng ban ñ aàu cho vieäc hoïc ta äp, tìm hieåu kyõ thua ät vi xöû lí ngöô øi vieát ñaõ thöïc hieän ñ eà ta øi : ÖÙNG DUÏNG CPU-Z80 VAØO H EÄ THOÁNG BAÙO GIÔØ TÖÏ ÑOÄNG. Vôùi teân goïi Heä Tho áng Ba ùo Giôø Tö ï Ño äng, He ä Thoáng ñ aõ ña ït ñöô ïc nhöõng khaû naêng sau: _ Taïo ra thôøi gian thöïc go àm thöù, giôø, phu ùt, gia ây va ø hieån thò thöù, giôø, phuùt, giaây tre ân le d 7 ñoaïn. _ Töï ño äng baùo hieäu baùo hieäu taïi nhöõng thôøi ñ ieåm coá ñ ònh ha øng ngaøy (nhöõng thôøi ñ ieåm naøy ñö ôïc ña ët sa ün trong IC-ROM). Khoâng baùo hieäu vaøo ngaøy chuû nha ät. _ Cho phe ùp ngö ôøi söû duïng ñaët vaøo he ä thoáng 10 thôøi ñ ieåm baùo hieäu ñoät xuaát (10 Hottime) _ Cho pheùp ngöôøi söû duïng ñ aët vaøo heä thoáng 10 thôøi ñ ieåm caám baùo hieäu (10 Skiptime) _ Cho pheùp n göôøi sö û duïng ñieàu chænh thôøi gia n thöïc goàm ñie àu chænh thöù, giôø, phuùt. Caùch thöùc ñ ieàu chænh la ø ñieàu chæn h thöù, giôø, phuùt ñoäc laäp vôùi nhau vaø coù theå ñie àu chænh theo höô ùng ta êng hoa ëc giaûm. _ Cho pheùp ngö ôøi söû duïng xem laïi hay xoùa ñi caùc Ho ttime vaø Skiptime do ngöôøi söû du ïng ñaët vaøo heä thoáng _ Tieáng chuoâng baùo hieäu do phaàn meàm ñ ieàu khieån neân ña daïng nhaèm theå hieän muïc ñích cuûa töøng thôøi ñieå m baùo hieäu. Cuï theå se õ coù chuo âng cho vaøo tieát hoïc, chuoâng ra tieát hoïc vaø chuoâng ba ùo hieäu ñoät xuaát _ Coù chöô ng trình baùo loãi ñ eå ba ùo lo ãi cho n göôøi söû du ïng Vôùi keát qua û ña ït ñöô ïc nhö treân, Heä Thoáng co ù theå ñöô ïc caûi tieán vaø mô û roäng ñeå ñ aùp ö ùng sö ï ña daïng cuûa nhu ca àu söû duïng. Caûi tieán pha àn meàm ñeå heä thoáng coù kha û na êng phaân bieät ñö ôïc thaùng, naêm vaø hieån thò ñöôïc tha ùng, naêm khi coù ye âu caàu. Caûi tieán pha àn me àm ñeå cho pheùp ngöôøi söû duïng ña ët vaøo Heä Thoáng thôøi ñ ieåm caám baùo hieäu la ø mo ät thöù ba át kì tro ng tua àn, tro ng t haùng, tro ng naêm. Tu øy theo nhu caàu sö û duïng, chö ông trình pha àn meàm ñieàu khieån baùo hieäu seõ ñ öôïc caûi tieán ñeå coù t heå ñ ieàu khieån thieát bò baùo hieäu phaùt tie áng nha ïc, tieáng noùi taïo söï phong phuù t rong ba ùo hie äu. Ngo aøi ra, Heä Thoáng co øn coù theå ñ öôïc ca ûi tieán môû ro äng ñ eå lieân keát vôùi caùc thieát bò caûm bieán kho ùi, ca ûm bieán nhieät ñoä ñeå thöïc hieän chö ùc na êng baùo ñoäng khi coù hoûa hoaïn. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng IV- K IEÁN NGHÒ : Vô ùi caùc tính naêng ñ aõ ñöô ïc thöïc hieän, He ä Thoáng Baùo Giôø Tö ï Ñoäng hoaøn toaøn coù theå ña ùp öùng toát cho ca ùc nhu caàu baùo giôø tro ng thöïc teá. Ngö ôøi vieát xin ñeà nghò ñ öôïc ca ûi tieán va ø thöông maïi hoùa Heä Thoáng thaønh saûn pha åm ñ eå phuïc vuï cho nhu caàu ñô øi so áng. Ngaøy nay , do nhu ca àu phaùt trieån cuûa xaõ ho äi, töï ñ oäng hoùa ñaõ ñ i vaøo ñô øi so áng haøng nga øy cuõng nhö caùc qui trình sa ûn xuaát coâng ngheä. Vieäc ö ùng duïng ky õ thua ät vi xöû lí vaøo töï ñ oäng ñieàu khieån môû ra moät höôùng phaùt trieån ñaày trieån voïng. ÖÙng duïng töï ñoäng ho ùa va øo ñôøi soáng mang laïi nhöõng lôïi ích to lôùn ve à kinh teá xa õ hoäi. Ñeå ñ aït ñöôïc ñie àu na øy theo n gö ôøi vieát chuùng ta phaûi :  Ñaàu tö nghieân cöùu kyõ thua ät vi xöû lí vaø tö ï ño äng ñ ieàu khieån.  Tra ng bò caùc thie át bò phuïc vu ï nghieân cöùu va ø giaûng daïy, tieáp caän da àn vô ùi kyõ thua ät mô ùi.  ÖÙng duïng caùc tha ønh quaû ñaït ñöô ïc tro ng nghieân cöùu va øo ñô øi soáng. Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng PHUÏ LUÏC Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng Chö ông trình MAIN M uïc ñích : khô ûi ño äng heä thoáng, töï ñoäng baùo hieäu . Khi caà n, xoùa Hottime, Skiptime vaø ñie àu khieå n maïch baùo hie äu. Ngoõ vaøo : thôøi gia n thö ïc, baû ng Restime , Hot time, Skiptime Ngoõ ra : Ho ttime hay/vaø S kiptime bò xoùa. M aïch baùo hieäu ho aït ño äng Caùc tha nh ghi söû du ï ng : IX, AF, BC, DE, HL Chöô ng trình co n sö û du ïng : DISP LAY ORG 0000H DI L D SP, 17FFH L D A,00000000B L D (2001H ),A L D A,00100101B L D (2001H ),A XO R A L D (3000H ),A L D B,08h L D HL,0FFFH SE T0: IN C HL L D (H L), A DE C B JR NZ,SET0 L D A, 02H L D (1004H),A L D A, 0FEH L D B,36H SE TF: I NC HL L D (HL), A DE C B JR NZ,SET F L D HL,1050H L D A,(1004H) L D (HL), A L D A,(1005H) IN C HL L D (HL), A L D A,(1006H) IN C HL L D (HL), A L D A,(1007H) IN C HL L D (HL), A CALL DI SPLAY IM 0 E I L D HL,1005H L D D, (HL ) IN C HL Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng L D E,(HL ) JR FIRST MINWT: L D A,(1006H) CP E JR Z ,MINWT L D E,A L D A,(1005H) L D D, A FI RST: L D C,01H L D B,00H L D IX,1005H NEX T: IN C B IN C IX IN C IX IN C IX L D A,(IX+0) CP 0FFH JR Z ,MINWT CP 0FEH JR NZ,COMP L D C,00H L D B,00H L D IX,0F9DH JR NEX T COMP: CP D JR NZ,NEX T L D A,(IX+1) CP E JR NZ,NEX T DI PUSH DE PUSH BC L D B,00H L D HL,1026H NEX TS: IN C B IN C HL IN C HL L D A,(HL ) CP 0FEH JR Z ,CO MPD CP D JR NZ,NEX TS IN C HL L D A,(HL ) DE C HL CP E JR NZ,NEX TS L D A,(1002H) DE C A L D (1002H ),A IN C A SUB B ADD A,A Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng IN C A IN C A L D C,A L D B,00H L D D, H L D E,L IN C HL IN C HL L DIR EXITM: E I POP BC BIT 0,C JR Z ,RE ST ART L D HL,1001H L D A,(HL ) DE C (HL) SUB B L D B,A ADD A,A ADD A,B IN C A IN C A L D C,A L D B,00H PUSH IX POP HL L D D, H L D E,L IN C HL IN C HL IN C HL L DIR RE ST ART: POP DE JP MINWT COMPD: L D A,(1004H) SCF CCF CP 07H JR C,BELL BIT 0,C JR Z ,EX ITM BELL: L D D, (IX+2) L D B,09H L D HL,3000H L D A,(1007H) L D E,A RING: L D A,(1007H) CP E JR Z ,RING L D E,A L D (HL),D SLA D DE C B Luaän vaên toát nghieäp Heä thoáng baùo giôø töï ñoäng JP Z ,EX ITM JP RING Chö ông trình RTP (Real Time Prog ram)

Các file đính kèm theo tài liệu này:

  • pdfLuận văn tốt nghiệp - Ứng dụng CPU Z80 - Thiết kế và thi công hệ thống báo giờ tự động.pdf
Tài liệu liên quan