Xem mẫu

  1. Luaän vaên toát nghieäp DATA BUS MAÏCH THIEÁT BÒ BAÙO HIEÄU Q7 CHOÁT (chuoâng, coøi) 8 B IT BDR Hình 17: SÔ ÑOÀ KHOÁI MAÏCH ÑIEÀU KHIEÅN BAÙO HIEÄU. CLOCK A0-A15 VALID ADDRESS MERQ BDR D0-D7 DATA Hình 18: CHU KÌ P XUAÁT DÖÕ LIEÄU BAÙO HIEÄ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 HIEÄU HIEÄU Hình 19: QUAÙ TRÌNH ÑIEÀU KHIEÅN BAÙO HIEÄU. Heä thoáng baùo giôø töï ñoäng
  2. Luaän vaên toát nghieäp 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. 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 chuoâ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 HIEÄ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: G DATA Q OC L H H H L H L L L L X QO Baûng 6: BAÛNG SÖÏ THAÄ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 re lay) ñ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 hieä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êng tính ña daïng trong caùch thöùc baùo hieäu. Heä thoáng baùo giôø töï ñoäng
  3. Luaän vaên toát nghieäp 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 Hottime 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 accu seõ baét ñaàu khi ñieän theá accu 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À CHI 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. Transistor H1061 vaø zener 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, trong 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ù khuynh 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 accu seõ döøng laïi traùnh hieän töôïng naïp quaù no gaây hoûng accu. Ñieän theá accu duy trì ôû 12,6V. Khi ñieän löôùi cung caáp bò giaùn ñoaïn (VA > VB) accu 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 accu seõ hoaït ñoäng vaø quaù trình naïp dieãn ra nhö trình baøy ôû treân. Heä thoáng baùo giôø töï ñoäng
  4. Luaän vaên toát nghieäp III- THIEÁT KEÁ PHAÀ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ò thôøi gian thöïc.  Chöùc naêng ñieàu chænh thôøi gian thöïc.  Chöùc naêng veà Hottime goàm : Xem, xoùa vaø ñaët môùi.  Chöùc naêng veà Skiptime goàm : Xem, 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 gian 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 trong 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 gian thöïc vôùi caùc thôøi ñieåm baùo hieäu (Restime, 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 Program). Heä thoáng baùo giôø töï ñoäng
  5. Luaän vaên toát nghieäp 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. Heä thoáng baùo giôø töï ñoäng
  6. Luaän vaên toát nghieäp 3.1.3- Chöùc naêng ñieàu chænh thôøi gian thöïc: Vieäc ñieàu chænh thôøi gian 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 mode 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à Hottime ñöôïc thöïc hieän bôûi chöông trình Hottime. 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à Hottime 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 trong 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à Hottime, 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 khieån töø baøn phím. 3.1.6- Caùc chöông trình con:  Chöông trình con hieå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 sang 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. Heä thoáng baùo giôø töï ñoäng
  7. Luaän vaên toát nghieäp Baûng sau ñaây trì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 NHIEÄM VUÏ ÑÒA CHÆ MAIN 0000h Töï ñoäng baùo hieäu Taïo thôøi gian thöïc vaø hieån RTP 0066h 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 Khoâng xaùc Bieán ñoåi HEX BCD DISPLAY ñònh vaø xuaát ra maïch hieån thò Khoâng xaùc Ñoïc döõ lieäu baøn phím vaø KEYPRO ñònh xöû lyù phím aán Khoâng xaùc ERROR Baùo loãi ñònh 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 quan 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öõ lieä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û yeá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 byte cho Thöù, Giôø, Phuùt vaø Giaây ñöôïc ñaët trong vuøng nhôù RAM coù ñòa chæ laø: DATE EQU 1004H; Byte cöùa thöù thöïc HOUR EQU 1005H; Byte chöùa Giôø thöïc MIN EQU 1006H; Byte chöùa Phuùt thöïc SEC E QU 1007H; Byte chöùa Giaây thöïc Heä thoáng baùo giôø töï ñoäng
  8. Luaän vaên toát nghieäp Thôøi gian thöïc ñöôïc chöông trình RTP hay chöông trình Settime caäp nhaät. 3.2.2- Restime: Caùc Restime ñöôïc ñaët lieân tieáp nhau trong moät vi maïch ROM 2732 taïo thaønh baûng Restime. 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 (End 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ôø Restime N .......... 0FA5h Maõ chuoâng 2 0FA4h Phuùt Restime 2 0FA3h Giôø Restime 2 0FA2h Maõ chuoâng 1 0FA1h Phuùt Restime 1 0FA0h Giôø Restime 1 Hình 22: CAÁU TRUÙC BAÛNG RESTIME 3.2.3-Hottime Vôùi caáu truùc töông töï nhö baûng Restime, baûng Hottime goàm 32 byte ñöôïc ñaët trong vuøng nhôù RAM töø ñòa chæ 1008h ñeán ñòa chæ 1027h. Moãi Hottime goàm 3 byte (Giôø, Phuùt vaø Maõ chuoâng ). Baûng Hottime chöùa toái ña ñöôïc 10 Hottime, 2 byte cuoái cuûa baûng Hottime luoân coù giaù trò laø 0FEh. Byte EOHT (End Of Hottime) laø maõ keát thuùc baûng Hottime. Caáu truùc baûng Hottime nhö sau: Heä thoáng baùo giôø töï ñoäng
  9. Luaän vaên toát nghieäp Duøng cho xoùa 1027h 0FEh Hottime 1026h EOHT (0FEh) END Of Hottime 1025h Maõ chuoâng 1024h Phuùt Hottime 10 1023h Giôø Hottime 10 ............. 100Ah Maõ chuoâng 1 1009h Phuùt Hottime 1 1008h Giôø Hottime 1 Hình23 : CAÁU TRUÙC BAÛNG HOTTIME Hottime laø loaïi döõ lieäu ñoäng. Khi khôûi ñoäng Heä Thoáng phaûi taïo baûng Hottime goàm 10 Hottime roãng, Hottime roãng coù giaù trò laø 0FEh. Hottime ñöôïc thieát keá cho muïc ñích baùo hieäu ñoät xuaát. Moãi Hottime 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- Skiptime: Caáu truùc baûng Hottime cuõng laø danh 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 (End 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: Heä thoáng baùo giôø töï ñoäng
  10. Luaän vaên toát nghieäp 103Dh 0FEh End Of 103Ch EOST Skiptime 103Bh Phuùt Skiptime10 103Ah Giôø Skiptime 10 ............ 1029h Phuùt Skiptime 1 1028h Giôø Skiptime 1 Hình 24: CAÁU TRUÙC BAÛNG SKIPTIME Cuõng nhö Hottime, 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õ chuoâng laø soá nhò phaân 8 bit. Moãi bit seõ taùc ñoäng leân maïch baùo hieäu trong moät giaây theo thöù töï töø bit cao ñeán bit thaáp. Möùc cao seõ laø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 thôøi ñieåm. Maõ chuoâng cho caùc Hottime ñeàu gioáng nhau vaø theå 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 (10101011)  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ö sau: SPMASK EQU 1000h ; Maët naï che hieån thò thôøi gian thöïc. ; (1 : che ) HTSTA EQU 1001h ; Traïng thaùi baûng Hottime. Heä thoáng baùo giôø töï ñoäng
nguon tai.lieu . vn