... CHUNG CHƯƠNG I: SƠ LƯC VỀ HỆ THỐNG BÁO CHÁY VÀ ĐIỀU KHIỂN HỆ THỐNG BÁO CHÁY Cách nhận biết báo cháy Các phận SƠ LƯC VỀ HỆ THỐNG ĐIỀU KHIỂN CHƯƠNG II: GIỚI THIỆU VI ĐIỀU KHIỂN 8031 A I II B A TÓM... CHƯƠNG I: SƠ LƯC VỀ HỆ THỐNG BÁO CHÁY VÀ ĐIỀU KHIỂN A HỆ THỐNG BÁO CHÁY: I Cách nhận biết báo cháy: Khi đám cháy xảy ra, vùng cháy thường có dấu hiệu sau: Lửa, khói, vật liệu chỗ cháy bò phá hủy... phát tiếng nói để cảnh báo Trong hệ thống báo cháy, cảm biến thường đặt nơi dễ cháy nối với thiết bò báo động dây dẫn điện, số trường hợp làm dây bò đứt Vì hệ thống báo cháy trở nên hiệu sử dụng
Luaän aùn toát nghieäp trang1 Lôøi caûm taï Xin chaân thaønh caûm ôn taát caû Caùc Thaày Coâ Giaùo trong nhaø tröôøng, Nhaát laø quyù thaày coâ trong Khoa Ñieän Ñieän Töû Tröôøng Ñaïi Hoïc Sö Phaïm kyõ Thuaät ñaõ taän tình daïy doã em trong suoát 4 naêm qua. Xin baøy toû loøng bieát ôn saâu saéc Thaày Nguyeãn Ñình Phuù, Ngöôøi ñaõ nhieät tình höôùng daãn, taïo moïi ñieàu kieän thuaän lôïi ñeå em hoaøn thaønh quyeån luaän aùn naøy. Xin caûm ôn taát caû caùc baïn ñaõ goùp yù Giuùp ñôõ toâi trong luùc thöïc hieän luaän aùn naøy. LÔØI NOÙI ÑAÀU Trong cuoäc soáng cuûa chuùng ta luoân toàn taïi nhöõng khu vöïc deã chaùy, neân vieäc laép ñaët heä thoáng baùo chaùy coù taàm quan troïng heát söùc lôùn lao. Noù giuùp chuùng ta phaùt hieän nhanh choùng, chöõa chaùy kòp thôøi kyø ñaàu cuûa vuï chaùy ñem laïi söï bình yeân cho moïi ngöôøi, baûo veä taøi saûn cho nhaân daân, nhaø maùy xöôûng saûn xuaát… GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang2 Ngaøy nay, vieäc phoøng chaùy chöaõ chaùy trôû thaønh moái quan taâm haøng ñaàu cuûa nöôùc ta cuõng nhö nhieàu nöôùc treân theá giôùi. Noù trôû thaønh nghiaõ vuï cuûa moãi ngöôøi daân. Treân caùc phöông tieän thoâng tin ñaïi chuùng luoân tuyeân truyeàn giaùo duïc cho moãi ngöôøi daân yù thöùc phoøng chaùy chöûa chaùy, nhaèm muïc ñích haïn cheá nhöõng vuï chaùy ñaùng tieác xaûy ra. Cuøng vôùi söï phaùt trieån nhanh choùng cuûa heä thoáng thoâng tin ñieän thoaïi thì vieäc baùo chaùy qua ñieän thoaïi ngaøy caøng trôû neân phoå bieán, noù giuùp ta baùo kòp thôøi nhöõng thoâng tin veà vuï chaùy ñeán caùc cô quan chöùc naêng. Xuaát phaùt töø nhöõng yù töôûng treân, em choïn ñeà taøi “Thieát bò baùo chaùy töï ñoäng” cho luaän aùn toát nghieäp. Do thôøi gian vaø söï hieåu bieát coù haïn, chaéùc chaén trong quaù trình laøm em cuõng coù nhieàu thieáu soùt, mong caùc thaày coâ vaø caùc baïn chaân thaønh goùp yù. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang3 MUÏC LUÏC PHAÀN 1:GIÔÙI THIEÄU CHUNG CHÖÔNG I: SÔ LÖÔÏC VEÀ HEÄ THOÁNG BAÙO CHAÙY VAØ ÑIEÀU KHIEÅN HEÄ THOÁNG BAÙO CHAÙY Caùch nhaän bieát vaø baùo chaùy Caùc boä phaän chính SÔ LÖÔÏC VEÀ HEÄ THOÁNG ÑIEÀU KHIEÅN CHÖÔNG II: GIÔÙI THIEÄU VI ÑIEÀU KHIEÅN 8031 A. I. II. B. A. TOÙM TAÉT PHAÀN CÖÙNG I. Giôùi thieäu II. Sô löôïc caùc chaân 8031 III. Khaûo saùt caùc khoái beân trong 8031, toå chöùc boä nhôù B. HOAÏT ÑOÄNG CUÛA BOÄ ÑÒNH THÌ TIMER I. Giôùi thieäu II. Thanh ghi cheá ñoä timer III. Thanh ghi ñieàu khieån timer IV. Cheá ñoä timer C. HOAÏT ÑOÄNG CUÛA BOÄ NGAÉT I. Giôùi thieäu II. Toå chöùc ngaét cuûa 8031/8051 III. Xöû lyù ngaét IV. Thieát keá chöông trình duøng caùc ngaét CHÖÔNG III: KHAÛO SAÙT IC THU PHAÙT TONE MT8880 I. Moâ taû chöùc naêng II. Caáu hình ngoõ vaøo III. YÙ nghiaõ caùc chaân cuûa IC MT8880 CHÖÔNG IV:GIÔÙI THIEÄU PHÖÔNG THÖÙC LAØM VIEÄC CUÛA TOÅNG ÑAØI VAØ CAÙC THUEÂ BAO PHAÀN2: THIEÁT KEÁ PHAÀN CÖÙNG CHÖÔNG I: SÔ ÑOÀ KHOÁI CHÖÔNG II:KHOÁI BAÙO CHAÙY A . THIEÁT KEÁ MAÏCH CAÛM BIEÁN I. Boä Caûm Bieán Nhieät GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp II. Boä Caûm Bieán Khoùi III. Xöû Lyù Tín Hieäu Vaøo trang4 B.MAÏCH BAÙO ÑOÄNG TAÏI CHOÃ C.MAÏCH PHAÙT TIEÁNG NOÙI D.KHOÁI GIAO TIEÁP PHAÀN3: THIEÁT KEÁ CHÖÔNG TRÌNH CHÖÔNG 1: NGUYEÂN LYÙ HOAÏT ÑOÄNG VAØ GIAÛI THUAÄT A. B. C. D. E. F. G. H. Chöông trình chính Chöông trình naïp soá ñieän thoaïi Chöông trình queùt phím Chöông trình hieån thò Chöông trình baùo ñoäng Chöông trình xeùt diatone Chöông trình xeùt bò goïi nhaác maùy Chöông trình quay soá CHÖÔNGII: CHÖÔNG TRÌNH GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang5 CHÖÔNG DAÃN NHAÄP I. Ñaët Vaán Ñeà: Ngaønh coâng ngheä thoâng tin lieân laïc ñaõ phaùt trieån nhanh choùng cuøng vôùi caùc ngaønh coâng ngheä khaùc, nhaèm ñaùp öùng nhu caàu ngaøy caøng cao cuûa xaõ hoäi. Coâng ngheä thoâng tin ñoùng vai troø coát loõi trong vieäc caäp nhaät thoâng tin cho moïi ngöôøi. Vôùi nhöõng nhu caàu veà thoâng tin lieân laïc qua maùy ñieän thoaïi ngaøy caøng cao ngöôøi ta coøn söû duïng ñieän thoïai trong vieäc ñieàu khieån tö ïñoäng chaúng haïn nhö: töï ñoäng baùo chaùy qua ñieän thoaïi, ñieàu khieån thieát bò qua ñieän thoaïi vv… Vôùi suy nghó laø öùng duïng kieán thöùc ñaõ hoïc ôû tröôøng vaø tìm hieåu theâm ôû saùch vôû, em quyeát ñònh choïn ñeà taøi “Thieát bò baùo chaùy töï ñoäng qua ñieän thoaïi” vôùi mong muoán sau khi thöïc hieän xong ñeà taøi coù theå ñem ra öùng duïng trong thöïc teá. II. Muïc Ñích Yeâu Caàu Cuaû Ñeà Taøi: Nhaèm phuïc vuï cho vieäc baùo chaùy töï ñoäng qua ñieän thoaïi ñaët taïi caùc nhaø cao taàng, caùc coâng ty xí nghieäp, nhöõng nôi caàn thieát khaùc vv… Töø muïc ñích treân neân thieát bò baùo chaùy phaûi ñaûm baûo caùc yeâu caàu: - Söû duïng tieän lôïi vaø söû duïng treân khaép caû nöôùc maø khoâng caàn thay ñoåi phaàn cöùng. - Baùo ñoäng kòp thôøi caùc vuï chaùy nhaèm giaûm nheï thieät haïi do chaùy gaây ra. - Coù theå baùo ñoäng ñeán nhieàu soá ñieän thoaïi khaùc nhau. III. Giôùi Haïn Ñeà Taøi: Ñieän thoaïi noùi chung thuoäc phaïm vi chuyeân moân vieãn thoâng hieän ñaïi, cho neân ñoøi hoûi phaûi coù moät khoaûng thôøi gian daøi tìm hieåu. Coù raát nhieàu khoù khaên trong luùc thöïc hieän ñeà taøi. Vôùi thôøi gian ngaén (7 tuaàn) nhöng laïi coù nhieàu vaán ñeà caàn giaûi quyeát, hôn nöõa kieán thöùc ngöôøi tìm hieåu ñeà taøi coù haïn, sinh vieân thöïc hieän ñeà taøi chæ taäp trung giaûi quyeát vaán ñeà sau: -Baùo ñoäng taïi choã baèng tieáng coøi -Baùo ñoäâng ñeán 2 soá ñieän thoaïi khaùc nhau baèng tieáng noùi. IV. Choïn Phöông Aùn Thöïc Hieän Ñeà Taøi: Vôùi nhöõng yeâu caàu ñaët ra ôû treân, em ñaõ xem xeùt vaø ñöa ra 3 phöông aùn nhö sau: - Söû duïng kyõ thuaät soá. - Söû duïng kyõ thuaät vi xöû lyù. - Söû duïng kyõ thuaät vi ñieàu khieån. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang6 Vôùi nhöõng ñoøi hoûi cuûa maùy ta coù theå ñôn giaûn nhöõng hoaït ñoäng baèng kyõ thuaät soá. Nhöng toán keùm linh kieän vaø kích thöôùc coàng keành, hôn nöõa khoù thay ñoåi phaàn meàm vaø khoâng coù khaû naêng môû roäng cho caùc hoaït ñoäng khaùc. Vôùi kyõ thuaät vi xöû lyù, coù theå khaéc phuïc nhöõng yeáu ñieåm cuûa maïch soá nhöng laïi phöùc taïp trong vieäc thieát keá phaàn cöùng. Neáu söû duïng kyõ thuaät vi ñieàu khieån, coù theå khaéc phuïc nhöõng yeáu ñieåm cuûa kyõ thuaät soá vaø vi xöû lyù vì boä nhôù coù theå ñöôïc môû roäng vaø phaàn meàm linh hoaït hôn. Hôn nöõa laïi raát phoå bieán treân thò tröôøng hieän nay, giaù caû chaáp nhaän ñöôïc thieát keá phaàn cöùng ñôn giaûn coäng vôùi toác ñoä xöû lyù cao. Coù raát nhieàu hoï vi ñieàu khieån, nhöng ñeå ñaùp öùng ñöôïc veà giaù caû hôïp lyù vaø tính phoå bieán, em quyeát ñònh choïn vi maïch vi ñieàu khieån 8031 cuûa haõng Intel cuøng vôùi caùc IC chuyeân duøng ñeå thöïc hieän nhaèm ñaùp öùng ñaày ñuû caùc yeâu caàu cuûa ñeà taøi ñaët ra. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang7 PHAÀN I: GIÔÙI THIEÄU CHUNG CHÖÔNG I: SÔ LÖÔÏC VEÀ HEÄ THOÁNG BAÙO CHAÙY VAØ ÑIEÀU KHIEÅN A. HEÄ THOÁNG BAÙO CHAÙY: I. Caùch nhaän bieát vaø baùo chaùy: Khi moät ñaùm chaùy xaûy ra, ôû nhöõng vuøng chaùy thöôøng coù nhöõng daáu hieäu sau: Löûa, khoùi, vaät lieäu choã chaùy bò phaù huûy. Nhieät ñoä vuøng chaùy taêng leân cao. Khoâng khí bò Oxy hoùa maïnh. Coù muøi chaùy, muøi kheùt. Ñeå ñeà phoøng chaùy chuùng ta coù theå döïa vaøo nhöõng daáu hieäu treân ñeå ñaët caùc heä thoáng caûm bieán laøm caùc thieát bò baùo chaùy. Kòp thôøi khoáng cheá ñaùm chaùy ôû giai ñoaïn ñaàu. Thieát bò baùo chaùy ñieän töû giuùp chuùng ta lieân tuïc theo doõi ñeå haïn cheá caùc vuï chaùy tai haïi, taêng cöôøng ñoä an toaøn, bình yeân cho moïi ngöôøi. II. Caùc boä phaän chính: 1. Caûm bieán: Caûm bieán laø boä phaän heát söùc quan troïng, noù quyeát ñònh ñoä nhaïy vaø söï chính xaùc cuûa heä thoáng. Caûm bieán hoaït ñoäng döïa vaøo caùc ñaët tính vaät lyù cuûa vaät lieäu caáu taïo neân chuùng. Caûm bieán ñöôïc duøng ñeå chuyeån ñoåi caùc tín hieäu vaät lyù sang tín hieäu ñieän. Caùc ñaëc tính cuûa caûm bieán: ñoä nhaïy, ñoä oån ñònh, ñoä tuyeán tính. a. Caûm bieán nhieät: Laø loaïi caûm bieán duøng ñeå chuyeån tín hieäu vaät lyù (nhieät ñoä) thaønh tín hieäu ñieän, ñaây laø loaïi caûm bieán coù ñoä nhaïy töông ñoái cao vaø tuyeán tính. Nguyeân taéc laøm vieäc cuûa noù laø doøng ñieän hay ñieän aùp thay ñoåi khi nhieät ñoä taïi nôi ñaët noù thay ñoåi. Tuy nhieân noù cuõng deã baùo ñoäng nhaàm khi nguoàn ñieän beân ngoaøi taùc ñoäng khoâng theo yù muoán. Caùc loaïi caûm bieán nhieät: IC caûm bieán: Laø loaïi caûm bieán baùn daãn ñöôïc cheá taïo thaønh caùc IC chuyeân duïng vôùi ñoä nhaïy cao, ñieän aùp ra thay ñoåi tæ leä thuaän vôùi nhieät ñoä, moät soá loaïi IC ñöôïc baùn beân ngoaøi thò tröôøng laø: LM355, LM334, … GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang8 Thermistor: Thermistor laø loaïi ñieän trôû coù ñoä nhaïy nhieät raát cao nhöng khoâng tuyeán tính vaø vôùi heä soá nhieät aâm. Ñieän trôû giaûm phi tuyeán vôùi söï taêng cuûa nhieät ñoä. Vì baûn thaân laø ñieän trôû neân trong quaù trình hoaït ñoäng Thermistor taïo ra nhieät ñoä vì vaäy gaây sai soá lôùn. Thermo Couples: Thermo Couple bieán ñoåi ñaïi löôïng nhieät ñoä thaønh doøng ñieän hay ñieän aùp DC nhoû. Noù goàm hai daây kim loaïi khaùc nhau noái vôùi nhau taïi hai moái noái. Khi caùc daây noái ñaëc ôû caùc vò trí khaùc nhau, trong daây xuaát hieän suaát ñieän ñoäng. Suaát ñieän ñoäng tæ leä thuaän vôùi söï cheânh leäch nhieät ñoä giöõa hai moái noái. Thermo couple coù heä soá nhieät döông. b. Caûm bieán löûa: Khi löûa chaùy thì phaùt ra aùnh saùng hoàng ngoaïi, do ñoù ta söû duïng caùc linh kieän phaùt hieän tia hoàng ngoaïi ñeå phaùt hieän löûa. Nguyeân lyù hoaït ñoäng laø ñieän trôû cuûa caùc linh kieän thu soùng hoàng ngoaïi taêng, noù chuyeån tín hieäu aùnh saùng thu ñöôïc thaønh tín hieäu ñieän ñeå baùo ñoäng. Loaïi naøy raát nhaïy ñoái vôùi löûa. Tuy nhieân cuõng deã baùo ñoäng nhaàm neáu ta ñeå caûm bieán ngoaøi trôøi hoaëc gaàn aùnh saùng boùng ñeøn troøn. c. Caûm bieán khoùi: Thöôøng caûm bieán khoùi laø boä phaân rieâng bieät chaïy baèng PIN ñöôïc thieát keá ñeå laép ñaët treân traàn nhaø, treân töôøng. Ngoaøi yeâu caàu kyõ thuaät (chính xaùc, an toaøn) coøn ñoøi hoûi phaûi ñaûm baûo veà maët thaåm myõ. Coù hai caùch cô baûn ñeå thieát keá boä caûm bieán khoùi. Caùch thöù nhaát söû duïng nguyeân taéc Ion hoùa. Ngöôøi ta söû duïng moät löôïng nhoû chaát phoùng xaï ñeå Ion hoùa trong boä caûm bieán. Khoâng khí bò Ion hoùa seõ daãn ñieän vaø taïo thaønh moät doøng ñieän chaïy giöõa chaïy giöõa hai cöïc ñaõ ñôïc naïp ñieään. Khi caùc phaàn töû khoùi loït vaøo khu vöïc caûm nhaän ñöôïc Ion hoùa seõ laøm taêng ñieän trôû trong buoàng caûm nhaän vaø laøm giaûm luoàng ñieän giöõa hai cöïc. Khi luoàng ñieän giaûm xuoáng tôùi moät giaù trò naøo ñoù thì boä caûm bieán seõ phaùt hieän vaø phaùt tín hieäu baùo ñoäng. Caùch thöù hai söû duïng caùc linh kieän thu phaùt quang. Ngöôøi ta duøng linh kieän phaùt quang (Led, Led hoàng ngoaïi…) chieáu moät tia aùnh saùng qua vuøng baûo veä vaøo moät linh kieän thu quang (photo diode, photo transistor, quang trôû…). Khi coù chaùy, khoùi ñi ngang qua vuøng baûo veä seõ che chaén hoaëc laøm giaûm cöôøng ñoä aùnh saùng chieáu vaøo linh kieän thu. Khi cöôøng ñoä giaûm xuoáng tôùi moät giaù trò naøo ñoù thì boä caûm bieán seõ phaùt hieän vaø phaùt tín hieäu baùo ñoäng. Trong hai caùch naøy thì phöông phaùp thöù nhaát nhaïy hôn vaø hieäu quaû hôn phöông phaùp thöù hai, nhöng khoù thöïc thi, khoù laép ñaët. Coøn caùch thöù hai tuy ít nhaïy hôn nhöng linh kieän deã kieám vaø deã thöïc thi cuõng nhö deã laép ñaët. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang9 Moät nhöôïc ñieåm cuûa caùc loaïi caûm bieán naøy laø: maïch baùo ñoäng coù theå sai neáu vuøng baûo veä bò xaâm nhaäp bôûi caùc lôùp buïi… 2.Thieát bò baùo ñoäng: Thieát bò baùo ñoäng goàm coù hai loaïi: Baùo ñoäng taïi choã. Baùo ñoäng qua ñieän thoaïi. Baùo ñoäng taïi choã ta coù theå söû duïng caùc chuoâng ñieän, maïch taïo coøi huï hay phaùt ra tieáng noùi ñeå caûnh baùo. Trong caùc heä thoáng baùo chaùy, boä caûm bieán thöôøng ñaët ôû nhöõng nôi deã chaùy vaø noái vôùi caùc thieát bò baùo ñoäng baèng daây daãn ñieän, do ñoù trong moät soá tröôøng hôïp coù theå laøm daây bò ñöùt. Vì vaäy moät heä thoáng baùo chaùy seõ trôû neân hieäu quaû khi söû duïng caùc boä phaùt voâ tuyeán. Trong ñoù boä phaän thu gaén vôùi maïch baùo ñoäng, coøn maïch phaùt gaén vôùi boä caûm bieán. Tuy nhieân vieäc laép ñaët gaëp nhieàu khoù khaên vaø giaù thaønh cao. Baùo ñoäng qua ñieän thoaïi giuùp ta ñaùp öùng nhanh caùc thoâng tin veà söï coá ñeán caùc cô quan chöùc naêng. Khi coù tín hieäu baùo ñoäng seõ töï ñoäng quay soá ñeán caùc cô quan nhö: nhaø rieâng, coâng an, phoøng chaùy chöõa chaùy… GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang10 CHÖÔNG II: GIÔÙI THIEÄU VI ÑIEÀU KHIEÅN 8031 A. TOÙM TAÉT PHAÀN CÖÙNG: I. GIÔÙI THIEÄU MCS-51: (MCS-51: Family Overview) MCS-51 laø moät hoï IC ñieàu khieån (micro controller), ñöôïc cheá taïo vaø baùn treân thò tröôøng bôûi haõng Intel cuûa Myõ. Hoï IC naøy ñöôïc cung caáp caùc thieát bò bôûi nhieàu haõng saûn xuaát IC khaùc treân theá giôùi chaúng haïn: nhaø saûn xuaát IC SIEMENS cuûa Ñöùc, FUJITSU cuûa Nhaät vaø PHILIPS cuûa Haø Lan. Moãi IC trong hoï ñeàu coù söï hoaøn thieän rieâng vaø coù söï haõnh dieän rieâng cuûa noù, phuø hôïp vôùi nhu caàu cuûa ngöôøi söû duïng vaø yeâu caàu ñaët ra cuûa nhaø saûn xuaát. IC 8031 laø IC tieâu bieåu trong hoï MCS-51 ñöôïc baùn treân thò tröôøng. Taát caû caùc IC trong hoï ñeàu coù söï töông thích vôùi nhau vaø coù söï khaùc bieät laø saûn xuaát sau coù caùi môùi maø caùi saûn xuaát tröôùc khoâng coù, ñeå taêng theâm khaû naêng öùng duïng cuûa IC ñoù. Chuùng coù ñaëc ñieåm nhö sau: INT1\ INT0\ SERIAL PORT TEMER0 TEMER1 TEMER2 8032\8052 128 byte RAM 8032\8052 INTERRUPT CONTROL OTHER REGISTER128 byte RAM ROM 0K: 8031\8032 4K: 8031 8K:8052 TEMER2 8032\8052 TEMER1 TEMER1 CPU BUS CONTROL SERIAL PORT I/O PORT OSCILATOR 4k byte ROMEA\ (ñöôï c laäp trìnhALE\ bôûi nhaø saûn xuaát, chæ coù trong 8051). PSEN\ RST 128 byte RAM. 4 Port I/O 8 bit. 2 boä ñònh thôøi 16 bit. Giao tieáp noái tieáp. GVHD: NGUYEÃN ÑÌNH PHUÙ P0 P1 P2 P3 Address\Data TXD RXD SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp 64k khoâng gian boä nhôù chöông trình môû roäng. 64k khoâng gian boä nhôù döõ lieäu môû roäng. Moät boä xöû lyù luaän ly ù(thao taùc treân caùc bit ñôn). 210 bit ñöôïc ñòa chæ hoùa. Boä nhaân /chia 4 bit. trang11 II. SÔ LÖÔÏC VEÀ CAÙC CHAÂN CUÛA µC 8031: 8031 laø IC vi ñieàu khieån (Microcontroller) do haõng intel saûn xuaát. µC 8031 coù taát caû 40 chaân coù chöùc naêng nhö caùc ñöôøng xuaát nhaäp. Trong ñoù coù 24 chaân coù taùc duïng keùp, moãi ñöôøng coù theå hoaït ñoäng nhö caùc ñöôøng xuaát nhaäp hoaëc nhö caùc ñöôøng ñieàu khieån hoaëc laø thaønh phaàn cuûa bus döõ lieäu. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang12 1 2 3 4 5 6 7 8 9 10 11 12 1340 14P1.0 3938 15 16 37 17 36 18 35 19 20 34 VCC 33 3231 30 29 28 27 26 25 24 23 22 21 P1.1 P0.0 P1.2 P0.1 P1.3 P0.2 P1.4 P0.3 P1.5 P0.4 P1.6 P0.5 P1.7 P0.6 RST P0.7 P3.0 EA\ P3.1 ALE P3.2 PSEN\ PSEN\ P3.3 P2.7 ALE P3.4 P2.6 EA\ P3.5 P2.5 RST P3.6 P2.4 P3.7 P2.3 XTAL1 P2.2 XTAL2 P2.1 GDN P2.0 8051 Sô Ñoà Chaân Cuûa 8031 1. Chöùc naêng caùc chaân cuûa 8031: Port 0: RXD TXD INT0\ INT1\ T0 T1 WR\ RD\ P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 Port 0 laø port coù hai chöùc naêng ôû caùc chaân töø 32÷39 cuûa 8031. Trong caùc thieát keá côõ nhoû khoâng duøng boä nhôù môû roä g noùlogic coù cuûa chöùc8031 naêng nhö caùc ñöôøng vaøo Sônñoà ra. Port 1: Port 1 laø port I\O ôû caùc chaân töø 1-8. Caùc chaân ñöôïc kyù hieäu laø P0.0, P0.1, P0.2,…P1.7, coù theå duøng cho giao tieáp vôùi caùc thieát bò beân ngoaøi neáu caàn. Port 1 khoâng coù chöùc naêng khaùc vì vaäy noù chæ duøng cho giao tieáp vôùi caùc thieát bò beân ngoaøi (chaúng haïn ROM, RAM, 8255, 8279, …). Port 2: Port2 laø moät port coù taùc duïng keùp ôû caùc chaân töø 21-28 ñöôïc duøng nhö caùc ñöôøng xuaát nhaäp hoaëc laø caùc byte cao cuûa Bus ñòa chæ ñoái vôùi caùc thieát keá côõ lôùn. Port3: Port3 laø moät port coù taùc duïng keùp töø chaân 10 –17. Caùc chaân cuûa port naøy coù nhieàu chöùc naêng, caùc coâng duïng chuyeån ñoåi coù lieân heä vôùi ñaëc tính ñaëc bieät cuûa 8031 nhö baûng sau: Bit P3.0 P3.1 P3.2 Teân RXD TXD INT0\ GVHD: NGUYEÃN ÑÌNH PHUÙ Chöùc naêng chuyeån ñoåi Ngoõ vaøo döõ lieäu noái tieáp Ngoõ ra döõ lieäu noái tieáp Ngoõ vaøo ngaét cöùng thöù 0 SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp P3.3 P3.4 P3.5 P3.6 P3.7 trang13 INT1\ T0 T1 WR\ RD\ Ngoõ vaøo ngaét cöùng thöù 1 Ngoõ vaøo cuûa temer\counter thöù 0 Ngoõ vaøo cuûa temer\counter thöù 1 Tín hieäu ghi döõ lieäu leân boä nhôù ngoaøi Tín hieäu ñoïc boä nhôù döõ lieäu ngoaøi Baûng: Chöùc naêng cuûa caùc chaân port 3 Ngoõ tín hieäu PSEN\ (Progam store enable): PSEN\ laø tín hieäu ngoõ ra ôû chaân 29 coù taùc duïng cho pheùp ñoïc boä nhôù chöông trình môû roäng vaø thöôøng ñöôïc noái vôùi chaân OE\ (output enable) cuûa EPROM cho pheùp ñoïc caùc byte maõ leänh. PSEN ôû möùc thaáp trong thôøi gian laáy leänh. Caùc maõ nhò phaân cuûa chöông trình ñöôïc ñoïc töø EPROM qua bus döõ lieäu vaø ñöôïc choát vaøo thanh ghi beân trong 8031 ñeå giaûi maõ leänh. Khi thi haønh chöông trình trong ROM noäi (µC 8051) thì PSEN\ seõ ôû möùc 1. Ngoõ tín hieäu ñieàu khieån ALE (Address latch enable): Khi 8031 truy xuaát boä nhôù beân ngoaøi, port0 coù chöùc naêng laø ñòa chæ vaø döõ lieäu do ñoù phaûi taùch ñöôøng ñòa chæ vaø döõ lieäu. Tín hieäu ra ALE ôû chaân thöù 30 duøng laøm tín hieäu ñieàu khieån ñeå giaûi ña hôïp caùc ñöôøng ñòa chæ vaø döõ lieäu khi keát noái vôùi IC choát. Tín hieäu ra ôû ALE laø moät xung trong khoaûng thôøi gian port 0 ñoùng vai troø laø ñòa chæ thaáp neân neân choát ñòa chæ hoaøn toaøn töï ñoäng. Caùc xung tín hieäu ALE coù toác ñoä baèng 1/6 taàn soá dao ñoäng treân vi ñieàu kkieån vaø coù theå ñöôïc duøng laøm tín hieäu clock cho caùc phaàn khaùc cuûa heä thoáng. Chaân ALE ñöôïc duøng laøm ngoõ vaøo xung laäp trình cho EPROM trong 8051. Ngoõ tín hieäu EA\ (External Access: truy xuaát döõ lieäu beân ngoaøi): Tín hieäu vaøo EA\ ôû chaân 31 thöôøng ñöôïc maéc leân möùc 1 hoaëc möùc 0. Neáu ôû möùc 1 thì µC8051 thi haønh chöông trình trong ROM noäi trong khoaûng ñòa chæ thaáp 4k. Neáu ôû möùc 0 thì 8031 thi haønh chöông trình töø boä nhôù môû roäng (vì µC8031 khoâng coù boä nhôù chöông trình treân chip). Chaân EA\ ñöôïc laáy laøm chaân caáp nguoàn 21v laäp trình cho EPROM trong 8051. Ngoõ tín hieäu RST (Reset): Ngoõ tín hieäu RST ôû chaân 9 vaø ngoõ vaøo Reset cuûa 8031. Khi ngoõ vaøo tín hieäu ñöa leân möùc cao ít nhaát laø 2 chu kyø maùy, caùc thanh ghi beân trong ñöôïc naïp nhöõng giaù trò thích hôïp ñeå khôûi ñoäng heä thoáng. Khi caáp ñieän maïch töï ñoäng Reset. Ngoõ vaøo boä dao ñoäng X1, X2: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang14 Boä taïo dao ñoäng ñöôïc tích hôïp beân trong 8031, khi söû duïng 8031 ngöôøi thieát keá caàn gheùp noái theâm tuï, thaïch anh. Taàn soá thaïch anh ñöôïc söû duïng cho 8031 laø 12MHz. Nguoàn cho 8031: Nguoàn cho 8031 ñöôïc cung caáp ôû 2 chaân laø 20 vaø 40 caáp GND vaø Vcc. Nguoàn cung caáp ôû ñaây laø +5v. Khaû naêng cuûa taûi port 0 laø LS –TTL cuûa port 1,2,3 laø 4LS –TTL. Caáu truùc cuûa port ñöôïc xaây döïng töø FET laøm cho port coù theå xuaát nhaäp deã daøng. Khi FET taét thì port deã daøng duøng chöùc naêng xuaát. Khi FET hoaït ñoäng thì port laøm chöùc naêng nhaäp thì khi ñoù ngoõ nhaäp möùc cao seõ laøm hoûng port. Byte address Bit address III. KHAÛO SAÙT CAÙC KHOÁI BEÂFF N TRONG 8031 − TOÅ CHÖÙC BOÄ NHÔÙ: F0 FF B Boä nhôù trong 8031 ba goàm ROM vaø RAM. RAM trong 8031 bao goàm E0 ACC nhieà 7Fu thaønh phaàn: phaàn löu tröõ ña duïng, phaàn löu tröõ ñòa chæ hoùa töøng bit, caùc bank thanh ghi vaø caùc thanh ghi chöùc naêng ñaë u D0 c bieät. 8031 coù caáu truùc boä nhôù theo kieåPSW Harvard: coù nhöõng vuøng nhôù rieâng bieät cho chöông trình vaø döõ lieäu. Chöông trình B8 IP vaø 30 döõ lieäu coù theå chöùa beân trong 8051, nhöng 8051 vaãn coù theå keát noái vôùi 64k byte 2F B0 P3 chöông 3E trình vaø 64k byte döõ lieäu. 2D 2C Hai ñaëc tính caàn chuù yù khi duønA8 g µC8031/8051 laø: 2B Caùc thanh ghi vaø caùc port xuaát nhaäA0 p ñaõ ñöôïc ñònh vò (ñöôïc ñònh vò coù nghóa laøP2 2A 29 xaùc ñònh) trong boä nhôù vaø coù theå truy 99 xuaát tröïc tieáp gioáng nhö caùc boä nhôù ñòa SBUF 28 98 SCON chæ khaùc. 27 26 90 Ngaên xeáp beân trong RAM noäi nhoû hôn so vôùi ROM ngoaïi nhö caùc boä vi xöû lyùP1 25 24 8D khaùc. 23 8C 22 RAM beân trong 8031 ñöôïc phaâ8B n chia nhö 21 8A 20 Caùc Bank thanh ghi coù ñòa chæ 00H ÷891FH. IE 1F 18 RAM 17 10 RAM 0F TH1 TH0 TL1 TL0 TMOD sau: 88 TCON ñòa chæ hoùa töøng bit coù ñòa chæ87 20H ÷ 2FH. PCON ña duïng coù ñòa chæ 30H ÷ 7FH.83 82 DPH DPL 80 SP P0 Caùc thanh ghi coù chöùc naêng ñaëc bieä81 t 80H ÷ FFH. 08 07 Byte address Bit address 00 Hình II.2.1: Sô ñoà toå chöùc boä nhôù GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang15 a.RAM ña duïng: Maëc duø treân hình veõ cho thaáy 80 byte ña duïng chieám caùc ñòa chæ töø 30H÷7FH, 32 ñòa chæ döôùi töø 00H÷1FH cuõng coù theå ñöôïc duøng vôùi muïc ñích töông töï (maëc duø caùc ñòa chæ naøy cuõng ñaõ ñònh vôùi muïc ñích khaùc). Moïi ñòa chæ trong vuøng RAM ña duïng ñeàu coù theå truy xuaát töï do duøng kieåu ñòa chæ giaùn tieáp hoaëc tröïc tieáp. Ví duï: ñeå ñoïc noäi dung ôû ñòc chæ 5FH cuûa RAM noäi vaøo thanh ghi tích luõy A, coù theå duøng moät trong hai caùch sau: - Caùch 1: MOV A, #5FH - Caùch 2: Ngoaøi caùch treân RAM beân trong cuõng coù theå ñöôïc truy xuaát baèng caùch duøng ñòa chæ giaùn tieáp hoaëc tröïc tieáp qua R0 hay R1: MOV R0, #5FH MOV A, @R0 Leänh ñaàu tieân duøng ñeå naïp ñòa chæ töùc thôøi #5FH vaøo thanh ghi R0, leänh thöù 2 duøng ñeå chuyeån noäi dung cuûa oâ nhôù coù ñòa chæ maø R0 ñang chæ tôùi vaøo thanh ghi tích luõy A. b. RAM ñòa chæ hoùa töøng bit: 8031 chöùa 210 bit ñöôïc ñòa chæ hoùa, trong ñoù coù 128bit chöùa caùc byte coù ñòa chæ töø 20H÷2FH vaø caùc bit coøn laïi chöùc trong nhoùm thanh ghi coù chöùa naêng ñaëc bieät. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang16 YÙ töôûng truy xuaát töøng bit baèng phaàn meàm laø moät ñaëc tính maïnh cuûa vi ñieàu khieån noùi chung. Caùc bit coù theå ñöôïc ñaët, xoùa, And, OR…, vôùi moät leänh ñôn. Maø ñieàu naøy ñoái vôùi vi xöû lyù ñoøi hoûi phaûi coù moät chuoãi leänh ñoïc – söûa - ghi ñeå ñaït ñöôïc muïc ñích töông töï nhö vi ñieàu khieån. Ngoaøi ra caùc port cuõng coù theå truy xuaát ñöôïc töøng bit laøm ñôn giaûn ñi phaàn meàm xuaát nhaäp töøng bit. 128 bit truy xuaát töøng bit naøy cuõng coù theå truy xuaát nhö caùc byte hoaëc caùc bit phuï thuoäc vaøo leänh ñöôïc duøng. Ví duï: ñeå ñaët bit thöù 57 ta duøng leänh sau: SETB 67H c.Caùc Bank thanh ghi: 32 byte thaáp cuûa boä nhôù RAM noäi ñöôïc duøng cho caùc bank thanh ghi. Boä leänh 8031 hoã trôï 8 thanh ghi noùi treân coù teân laø R0 ÷ R7 vaaø theo maëc ñònh khi reset heä thoáng, caùc thanh ghi naøy coù ñòa chæ töø 00H ÷ 07H. Ví duï: leänh sau ñaây seõ ñoïc noäi dung cuûa oâ nhôù coù ñòa chæ 05H vaøo thanh ghi A. MOV A, R5 Ñaây laø leänh 1 byte duøng ñòa chæ thanh ghi. Tuy nhieân yeâu caàu treân coù theå thi haønh baèng leänh 2 byte duøng ñòa chæ tröïc tieáp naèm trong byte thöù hai: MOV A,05H Caùc leänh duøng caùc thanh ghi R0 ÷ R7 seõ ngaén hôn vaø nhanh hôn so vôùi caùc leänh coù chöùc naêng töông töï duøng kieåu ñòa chæ tröïc tieáp. Caùc döõ lieäu ñöôïc duøng thöôøng xuyeân neân duøng moät trong caùc thanh ghi naøy. Do coù 4 bank thanh ghi neân taïi moät thôøi ñieåm chæ coù moät bank thanh ghi ñöôïc truy xuaát bôûi caùc thanh ghi R0 ÷ R7. Ñeå chuyeån ñoåi vieäc truy xuaát caùc bank thanh ghi ta phaûi thay ñoåi caùc bit choïn bank trong thanh ghi trong thanh ghi traïng thaùi. Giaû söû bank thanh ghi thöù 3 ñang ñöôïc truy xuaát leänh sau ñaây seõ chuyeån noäi dung cuûa thanh ghi A vaøo oâ nhôù RAM coù ñòa chæ 18H: MOV R0, A Toùm laïi yù töôûng duøng caùc bank thanh ghi cho pheùp ta chuyeån höôùng chöông trình nhanh vaø hieäu quaû hôn. B. HOAÏT ÑOÄNG CUÛA BOÄ ÑÒNH THÌ TIMER: I. GIÔÙI THIEÄU: Moät ñònh nghóa ñôn giaûn cuûa timer laø moät chuoãi caùc flip-flop chia ñoâi taàn soà noái tieáp vôùi nhau, chuùng nhaän tín hieäu vaøo laøm nguoàn xung nhòp. Ngoõ ra cuûa taàng cuoái laøm xung nhòp cho flip - flop baùo traøn cuûa timer (flip - flop côø). Giaù trò nhò phaân trong caùc flip - flop cuûa timer coù teå xem nhö ñeám soá xung nhòp (hoaëc caùc söï GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang17 kieän) töø khôûi ñoäng timer. Ví duï timer 16 bit seõ ñeám töø 0000H ñeán FFFFH. Côø baùo traøn seõ leân 1 khi soá ñeám traøn töø FFFFH ñeán 0000H. µC8031/8051 coù hai timer 16 bit, moãi timer coù 4 caùch laøm vieäc. Ngöôøi ta söû duïng caùc timer ñeå: a. Ñònh khoaûng thôøi gian. b. Ñeám söï kieän. c. Taïo toác ñoä baud cho port noái tieáp trong µC8051/8031. Trong caùc öùng duïng ñònh nghóa khoaûng thôøi gian, ngöôøi ta söû duïng laäp trình timer ôû moät khoaûng ñeàu ñaën vaø ñaët côø traøn timer. Côø ñöôïc söû duïng ñeå ñoàng boä hoùa chöông trình ñeå thöïc hieän moät taùc ñoäng nhö kieåm tra traïng thaùi cuûa caùc ngoõ vaøo hoaëc gôûi söï kieän ra caùc ngoõ ra. Caùc öùng duïng khaùc coù theå söû duïng vieäc taïo xung nhòp ñeàu ñaën cuûa timer ñeå ño thôøi gian troâi qua giöõa hai söï kieän (Ví duï: ño ñoä roäng xung). Ñeám söï kieän duøng ñeå xaùc ñònh soá laàn xaûy ra cuûa moät soá söï kieän. Moät “söï kieän” laø baát cöù taùc ñoäng ngoaøi naøo coù theå cung caáp moät chuyeån traïng thaùi treân moät chaân cuûa 8051/8031. II. THANH GHI CHEÁ ÑOÄ TIMER (TMOD): Thanh ghi TMOD chöùa hai nhoùm 4 bit duøng ñeå ñaët cheá ñoä laøm vieäc cho timer0 vaø timer1. Bit 7 Teân GATE Timer 1 6 C/ T 1 5 4 M1 M0 1 1 3 2 1 0 GATE C/ T M1 M0 0 0 0 0 GVHD: NGUYEÃN ÑÌNH PHUÙ Moâ taû Bit (môû coång), khi leân, timer chæ chaïy khi INT1 ôû möùc cao Bit choïn cheá ñoä counter/ timer 1 = Boä ñeám söï kieän 0 = Boä ñònh khoaûng thôøi gian Bit1 cuûa cheá ñoä ( mode) Bit 0 cuûa cheá ñoä 00: Cheá ñoä 0: timer 13 bit 01: Cheá ñoä 1: timer 16 bit 10: Cheá ñoä 2: töï ñoäng naïp laïi 8 bit 11: Cheá ñoä 3: taùch timer Bit (môû) coång Bit choïn counter/ timer Bit 1 cuûa cheá ñoä Bit 0 cuûa cheá ñoä SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang18 Toùm taét thanh ghi TMOD. III. THANH GHI ÑIEÀU KHIEÅN TIMER (TCON) Thanh ghi TCON chöùa caùc bit traïng thaùi vaø caùc bit ñieàu khieån cho timer0 vaø timer1. Bit TCON. 7 Kyù hieäu TF1 Ñòa chæ 8FH TCON. 6 TCON. 5 TCON. 4 TCON. 3 TR1 8EH TF0 8DH Moâ taû Côø baùo traøn timer. Ñaët bôûi phaàn cöùng khi traøn, ñöôïc xoùa bôûi phaàn meàm hoaëc phaàn cöùng khi boä xöû lí chæ ñeán chöông trình phuïc vuï ngaét. Bit ñieàu khieån timer1 chaïy. Ñaët/ xoùa baèng timer ñeå cho phaàn meàm chaïy/ ngöng Côø baùo traøn timer 0. TR0 8CH Bit ñieàu khieån timer chaïy. IE1 8BH TCON. 2 IT1 8AH TCON. 1 TCON. 0 IE0 89H Côø caïnh ngaét caïnh beân ngoaøi. Ñaët bôûi phaàn cöùng khi phaùt hieän moät caïnh xuoáng ôû INT1:xoùa baèng phaàn meàm hoaëc phaàn cöùng khi CPU chæ ñeán chöông trình phuïc vuï ngaét. Côø kieåu ngaét moät beân ngoaøi. Ñaët/xoùa baèng phaàn meàm ñeå ngaét ngoaøi tích cöïc caïnh xuoáng/möùc thaáp. Côø caïnh ngaét 0 beân ngoaøi ITO 88H Côø kieåu ngaét 0 beân ngoaøi Toùm taét thanh ghi TCON. IV. CHEÁ ÑOÄ TIMER: 1. Cheá ñoä 1 – Cheá ñoä TIMER 16 BIT: - Hoaït ñoäng nhö timer 16 bit ñaày ñuû. - Côø baùo traøn laø bit TFx trong TCON coù theå ñoïc hoaëc ghi baèng phaàn meàm. - MSB cuûa giaù trò trong thanh ghi timer laø bit 7 cuûa THx vaø LSB laø bit 0 cuûa TLx. Caùc thanh ghi timer (TLx/THx) coù theå ñoïc hoaëc ghi baát cöù luùc naøo baèng phaàn meàm. Xung nhòp timer TLx (8 bit) THx (8 bit) TFx Côø baùo traøn GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang19 2. Nguoàn taïo xung nhòp: Coù hai nguoàn taïo xung nhòp coù theå coù, ñöôïc choïn baèng caùch ghi vaøo C/T (counter/timer) trong TMOD khi khôûi ñoäng timer. Moät nguoàn taïo xung nhòp duøng cho ñònh khoaûng thôøi gian, caùi khaùc cho ñeám söï kieän. Thaïch anh Chaân T0 hoaëc T1 Boä dao ñoäng trong 12 Xung nhòp timer 0: (leân) ñònh khoaûng thôøi gian C/T ♦ Ñònh khoaûng thôøi gian (interval timing): Neáu C/T=0 hoaït ñoäng timer lieân tuïc ñöôïc choïn vaøo timer ñöôïc duøng cho vieäc ñònh khoaûng thôøi gian. Luùc ñoù, timer laáy xung nhòp töø boä dao ñoäng treân chip. Boä chia 12 ñöôïc theâm vaøo ñeå giaûm taàn soá xung nhòp ñeán giaù trò thích hôïp cho caùc öùng duïng. Nhö vaäy, thaïch anh 12 MHz seõ cho toác ñoä xung nhòp timer 1 MHz. Baùo traøn timer xaûy ra sau moät soá (coá ñònh) xung nhòp, phuï thuoäc vaøo giaù trò ban ñaàu ñöôïc naïp vaøo caùc thanh ghi timer TLx/THx. ♦ Ñeám söï kieän (Event Counting): Neáu C/T=1, timer laáy nguoàn xung nhòp töø beân ngoaøi. Trong haàu heát caùc öùng duïng, nguoàn beân ngoaøi naøy cung caáp cho timer moät xung khi xaûy ra moät söï kieän – timer duøng ñeám söï kieän. Soá söï kieän ñöôïc xaùc ñònh baèng phaàn meàm baèng caùch ñoïc caùc thanh ghi TLx/THx vì giaù trò 16 bit trong thanh ghi naøy taêng theâm moät cho moãi söï kieän. Nguoàn xung nhòp ngoaøi coù töø thay ñoåi chöùc naêng cuûa caùc port 3, bit 4 cuûa port 3 (P3.4) duøng laøm ngoõ vaøo taïo xung nhòp beân ngoaøi cho timer 0 vaø ñöôïc goïi laø “T0”. Vaø P3.5 hay “T1” laø ngoõ vaøo taïo xung nhòp cho timer 1. Trong caùc öùng duïng boä ñeám, caùc thanh ghi Timer ñöôïc taêng theâm 1 töông öùng vôùi chuyeån töø 1 xuoáng 0 ôû ngoõ vaøo beân ngoaøi: Tx, ngoõ vaøo beân ngoaøi ñöôïc laáy maãu trong S5P2 cuûa moïi chu kyø maùy. Nhö vaäy, khi ngoõ vaøo cao trong moät chu kyø vaø thaáp trong moät chu kyø keá thì soá ñeám ñöôïc taêng theâm moät. Gía trò môùi ñöôïc xuaát hieän trong caùc thanh ghi trong S3P1 cuûa chu kyø theo sau chu kyø trong ñoù phaùt heän söï chuyeån tieáp. Do ñoù, maát 2 chu kyø maùy (2µs) ñeå ghi nhaän söï chuyeån 1 sang 0, taàn soá ngoaøi toái ña laø 500KHz (giaû söû hoaït ñoäng ôû 12 MHz). 3. Baét ñaàu, döøng vaø ñieàu khieån caùc Timer: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang20 Phöông phaùp ñôn giaûn nhaát ñeå baét ñaàu (cho chaïy) vaø döøng caùc timer laø duøng caùc bit ñieàu khieån chaïy: TRx trong TCON. TRx bò xoùa sau khi Reset heä thoáng. Nhö vaäy, caùc timer theo maëc nhieân laø bò caám (bò döøng). TRx ñöôïc ñaët leân 1 baèng phaàn meàm ñeå cho caùc timer chaïy. Xung nhòp timer C/T Caùc thanh ghi timer 0 = leân: timer döøng 1 = xuoáng: timer chaïy TRx Vì TRx ôû trong thanh ghi TCON coù ñòa chæ bit, neân deã daøng cho vieäc ñieàu khieån caùc timer trong chöông trình. Ví duï, cho timer 0 chaïy baèng leänh: SETB TR0 0: leân Vaø döøng baèng leänh: CLR TRO 1: xuoáng Trình bieân dòch seõ thöïc hieän vieäc chuyeån ñoåi kyù hieäu caàn thieát töø “TR0” sang ñòa chæ bit ñuùng. SETB TR0 chính xaùc gioáng nhö SETB 8CH. Moät phöông phaùp khaùc ñeå ñieàu khieån caùc timer laø duøng bit GATE trong TMOD vaø ngoõ vaøo beân ngoaøi INTx. Ñaët GATE =1 cho pheùp timer seõ ñöôïc ñieàu khieån baèng INTx. Vieäc naøy raát hieäu duïng cho vieäc ño ñoä roäng xung nhö sau: Giaû söû INT0 ôû möùc thaáp nhöng caùc xung ôû möùc cao trong khoaûng thôøi gian ño. Khôûi ñoäng timer 0 ôû cheá ñoä 2 (cheá ñoä timer 16 bit), vôùi TL0/TH0=0000H, Gate = 1 vaø TR0 = 1. Khi INT0 ôû möùc cao, timer ñöôïc môû coång vaø ñöôïc caáp xung nhòp 1 MHz (neáu µC8031/8051 hoaït ñoäng ôû taàn soá 12 MHz). Khi INT0 xuoáng thaáp, timer bò ‘ñoùng coång’ vaø thôøi khoaûng cuûa xung tính baèng µs laø soá ñeám trong TL0/TH0. (Coù theå laäp trình INT0 ñeå taïo ra moät ngaét khi noù xuoáng thaáp). Hình sau minh hoïa Timer 1 hoaït ñoäng ôû cheá ñoä 1 nhö moät timer 16 bit. Caùc thanh ghi timer TL1/TH1 vaø côø baùo traøn TF1 trong sô ñoà chæ caùc khaû naêng coù theå coù cuûa nguoàn taïo xung nhòp vaø deã cho chaïy, döøng vaø ñieàu khieån timer. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG INT1 Luaän aùn toát nghieäp trang21 4. Khôûi ñoäng vaø truy xuaát caùc thanh ghi: Thoâng thöôøng caùc thanh ghi ñöôïc khôûi ñoäng moät laàn ôû ñaàu chöông trình ñeå ñaët cheá ñoä laøm vieäc ñuùng. Sau ñoù, trong thaân chöông trình, caùc timer ñöôïc cho chaïy, döøng, caùc bit côø ñöôïc kieåm tra vaø xoùa, caùc thanh ghi timer ñöôïc ñoïc vaø caäp nhaät v,v… theo ñoøi hoûi cuûa caùc öùng duïng. TMOD laø thanh ghi thöù nhaát ñöôïc khôûi ñoäng vì noù ñaët cheá ñoâï hoaït ñoäng. Ví duï caùc leänh sau khôûi ñoäng timer1 nhö timer 16 bit (cheá ñoä 1) coù xung nhòp töø boä dao ñoäng treân chip cho vieäc ñònh khoaûng thôøi gian: MOV TMOD = 00010000B Neáu caàn soá ñeám ban ñaàu, caùc thanh ghi timer TL1/TH1 cuõng phaûi ñöôïc khôûi ñoäng. Nhôù laïi caùc timer ñeám leân vaø ñaët côø baùo traøn khi coù söï chuyeån tieáp FFFFH sang 0000H. moät khoaûng 100µs coù theå ñöôïc ñònh thôøi baèng caùch khôûi ñoäng trò cho TL1/TH1 laøFF9C: MOV TL1, # 9CH MOV TH1, # OFFH Roài timer ñöôïc cho chaïy baèng caùch ñieàu khieån bit nhö sau: SETB TR1 Côø baùo traøn ñöôïc töï ñoäng ñaït leân sau 100µ s. Phaàn meàm coù theå ñôïi trong 100µ s baèng caùch duøng leänh reõ nhaùnh coù ñieàu kieän nhaûy ñeán chính noù trong khi côø baùo traøn chöa ñöôïc ñaët leân 1: WAIT: JMB TF1, WAIT Khi timer traøn, caàn döøng timer vaø xoùa côø baùo traøn trong phaàn meàm: CLR TR1 CLR * TF1 Ñoïc timer ñang chaïy: Trong moät soá öùng duïng caàn ñoïc giaù trò trong caùc thanh ghi timer ñang chaïy. Vì phaûi ñoïc 2 thanh ghi timer, “sai pha” neáu byte thaáp traøn vaøo byte cao giöõa hai laàn ñoïc. Giaù trò coù theå ñoïc ñöôïc khoâng ñuùng. Giaûi phaùp laø ñoïc byte cao tröôùc, keá ñoù ñoïc byte thaáp roài ñoïc byte cao moät laàn nöõa. Neáu byte cao ñaõ thay ñoåi thì laëp laïi caùc GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang22 hoaït ñoäng ñoïc. Caùc leänh döôùi ñaây ñoïc caùc leänh thanh ghi timer TL1/TH1 vaøo caùc thanh ghi R6/R7: AGAIN: MOV A,TH1 MOV R6, TL1 CJNE R7, A C. HOAÏT ÑOÄNG CUÛA BOÄ NGAÉT (INTERRUPT): I. GIÔÙI THIEÄU: Moät interrupt (ngaét) laø söï xaûy ra moät ñieàu kieän – moät söï kieän, maø noù gaây treo taïm thôøi chöông trình trong ñieàu kieän coù ñöôïc phuïc vuï bôûi moät chöông trình khaùc. Caùc interrupt ñoùng vai troø quan troïng trong vieäc thieát keá vaø caøi ñaët caùc öùng duïng vi ñieàu khieån. Chuùng cho pheùp heä thoáng baát ñoàng boä vôùi moät söï kieän vaø giaûi quyeát moät söï kieän trong khi ñoù moät chöông trình khaùc ñang thöïc thi. Moät heä thoáng ñöôïc ñieàu khieån baèng interrupt cho ta aûo giaùc laø laøm nhieàu vieäc ñoàng thôøi. Dó nhieân laø CPU ñoàng thôøi khoâng theå thöïc thi hôn moät leänh. Nhöng noù coù theå taïm treo vieäc thöïc thi moät chöông trình ñeå thöïc thi moät chöông trình khaùc, roài quay veà chöông trình thöù nhaát. Theo caùch naøy, interrupt gioáng nhö moät chöông trình con, nhöng coù moät khaùc bieät trong heä thoáng ñöôïc ñieàu khieån laø söï ngaét quaõng khoâng xaûy ra nhö keát quaû cuûa moät leänh, maø ñaùp öùng moät söï kieän xaûy ra baát ñoàng boä vôùi chöông trình chính. Ngöôøi ta khoâng bieát luùc naøo vaø ôû ñaâu chöông trình chính bò ngaét quaõng. Chöông trình giaûi quyeát ngaét goïi laø chöông trình phuïc vuï ngaét (ISR: Interrupt Service Routine) hoaëc boä xöû lyù ngaét. ISR thöïc thi ñaùp öùng ngaét vaø thoâng thöôøng thöïc hieän taùc vuï nhaäp hay xuaát vôùi moät thieát bò. Khi ngaét xaûy ra, chöông trình chính taïm thôøi bò treo vaø reõ nhaùnh ñeán ISR: ISR thi haønh vaø keát thuùc baèng leänh trôû veà ngaét. Chöông trình tieáp tuïc thöïc thi taïi choã maø noù taïm döøng. Thöôøng ngöôøi ta xem chöông trình chính thöïc thi ôû möùc neàn (cô sôû) vaø caùc ISR thöïc thi ngaét (Interrupt Level). Ngöôøi ta duøng thuaät ngöõ Foreground (phía tröôùc) (Base – Level) chæ möùc neàn vaø Background (phía sau) (Interrupt – level) chæ möùc ngaét. Hình aûnh caùc ngaét ñöôïc moâ taû trong hình sau: CHÖÔNG TRÌNH CHÍNH Thöïc thi chöông trình khoâng coù ngaét ISR * C/tr chính ISR ** C/tr chính GVHD: NGUYEÃN ÑÌNH PHUÙ * ISR ** C/tr chính * ** C/tr chính SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang23 Thöïc thi chöông trình coù ngaét * : goïi ngaét ** : quay veà töø ngaét II. TOÅ CHÖÙC NGAÉT CUÛA µC8031/8051: Thaät söï taát caû caùc nguoàn ngaét ôû µC8031/8051: 2 ngaét ngoaøi, 2 töø timer vaø moät ngaét Port noái tieáp. Taát caû caùc ngaét theo maëc nhieân ñeàu bò caám sau khi Reset heä thoáng vaø ñöôïc cho pheùp baèng phaàn meàm. Khi coù 2 hoaëc nhieàu ngaét ñoàng thôøi, 1 ngaét xaûy ra trong khi 1 ngaét khaùc ñang ñöôïc phuïc vuï, coù caû 2 söï tuaàn töï hoûi voøng vaø sô ñoà öu tieân 2 möùc duøng ñeå xaùc ñònh thöïc hieän ngaét. Vieäc hoûi voøng tuaàn töï thì coá ñònh nhöng öu tieân ngaét thì coù theå laäp trình ñöôïc. *. Cho pheùp vaø caám caùc ngaét: (Enabling and Disnabling Interrupt) Moãi nguoàn Interrupt ñöôïc cho pheùp hoaëc caám töøng ngaét qua moät thanh ghi chöùc naêng ñaëc bieät coù ñòa chæ bit IE (Interrupt Enable) ôû ñòa chæ A8H. Cuõng nhö xaùc ñònh bit cho pheùp rieâng bieät cho moãi nguoàn ngaét, coù moät bit cho pheùp/caám toaøn boä ñöôïc xoùa ñeå caám hoaøn toaøn caùc ngaét ñöôïc xeùt (ñaët leân 1) ñeå cho pheùp taát caû caùc ngaét. Bit IE.7 IE.6 IE.5 IE.4 IE.3 IE.2 IE.1 IE.0 Kyù hieäu EA _ ET2 ES ET1 EX1 ET0 EX0 Ñòa chæ bit AFH AEH ADH ACH ABH AAH A8H A8H Moâ taû (1 = cho pheùp, 0=caám) Cho pheùp / caám toaøn boä Khoâng ñöôïc ñònh nghóa Cho pheùp ngaét töø timer 2(8052) Cho pheùp ngaét Port noái tieáp Cho pheùp ngaét töø timer 1 Cho pheùp ngaét ngoaøi Cho pheùp ngaét töø timer 0 Cho pheùp ngaét ngoaøi 0 Baûng 1.10: Toùm taét thanh ghi IE Hai bit phaûi ñöôïc ñaët leân moät ñeå cho pheùp baát kyø ngaét naøo: bit cho pheùp rieâng vaø bit cho pheùp toaøn boä.Ví duï caùc ngaét töø timer ñöôïc cho pheùp nhö sau: SETB ET1 ; Cho pheùp ngaét töø timer 1. SETB EA Hoaëc : MOV ; Ñaët bit cho pheùp toaøn boä. IE, #10001000B. Maëc duø hai caùch naøy coù cuøng moät hieäu quaû sau khi reset heä thoáng nhöng hieäu quaû seõ khaùc neáu IE ñöôïc ghi giöõa chöông trình. Caùch thöù nhaát khoâng aûnh höôûng tôùi 5 bit trong thanh ghi IE, traùi laïi caùch thöù hai seõ xoùa caùc bit khaùc. Neân khôûi trò IE theo caùch thöù hai ôû ñaàu chöông trình (nghóa laø sau khi môû maùy hoaëc GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang24 reset heä thoáng), nhöng cho pheùp vaø caám caùc ngaét ngay trong chöông trình neân duøng caùch thöù nhaát ñeå traùnh aûnh höôûng ñeán caùc bit khaùc trong thanh ghi IE. Ngaét Port noái tieáp coù töø Logic OR cuûa ngaét thu (RI) vaø phaùt (TI). Caùc bit côø taïo caùc ngaét ñöôïc toùm taéc trong baûng sau: Ngaét Beân ngoaøi 0 Beân ngoaøi 1 Timer 0 Timer 1 Port noái tieáp Port noái tieáp Côø IE0 IE1 TF0 TF1 TI RI GVHD: NGUYEÃN ÑÌNH PHUÙ Thanh ghi SER vaø vò trí bit TCON.1 TCON.3 TCON.5 TCON.7 SCON.1 SCON.0 SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang25 III. Xöû lyù ngaét (Processing Interrupt): Khi ngaét xaûy ra vaø CPU chaáp thuaän, chöông trình chính ngaét quaõng nhöõng hoaït ñoäng sau ñaây xaûy ra: + Leänh hieän haønh hoaøn taát vieäc thöïc thi. + Caát PC vaøo ngaên xeáp. + Traïng thaùi ngaét hieän haønh ñöôïc caát vaøo beân trong. + Caùc ngaét bò chaën ôû möùc ngaét. + Naïp vaøo PC ñòa chæ vector cuûa ISR. + ISR thöïc thi. ISR thöïc thi vaø ñaùp öùng ngaét. ISR hoaøn taát baèng leänh RETI (quay veà töø ngaét). Ñieàu naøy laøm laáy laïi giaù trò cuõ PC töø ngaên xeáp vaø laáp laïi traïng thaùi ngaét cuõ. Thöïc thi chöông trình chính ôû choã maø noù bò döøng. Caùc vector ngaét (Interrupt Vectors): Khi chaáp nhaän ngaét, giaù trò ñöôïc naïp vaøo PC ñöôïc goïi laø vector ngaét. Noù laø ñòa chæ baét ñaàu cuûa ISR cho nguoàn taïo ngaét. Caùc vector ngaét ñöôïc cho baûng sau: Ngaét Reset heä thoáng Beân ngoaøi 0 Timer 0 Beân ngoaøi 1 Timer 1 Port noái tieáp Côø RST IE0 TF 0 IE 1 TF 1 T1 hoaëc R1 Ñòa chæ vector 0000H 0003H 000BH 0013H 001BH 0023H Baûng : Caùc vector ngaét Vector Reset heä thoáng (RST ôû ñòa chæ 0000H) ñöôïc ñeå trong baûng naøy vì theo nghóa naøy noù gioáng Interrupt: noù ngaét chöông trình chính vaø naïp giaù trò môùi cho PC. Khi “chæ ñeán moät ngaét”, côø gaây ra ngaét töï ñoäng bò xoùa bôûi phaàn cöùng. Caùc ngoaïi leä laø RI vaø TI vôùi caùc ngaét port noái tieáp vaø TF2, EXF2 vôùi caùc Interrupt Timer. Vì coù hai nguoàn coù theå cho moãi ngaét naøy, khoâng thöïc teá ñeå CPU xoùa côø ngaét. Caùc bit naøy phaûi ñöôïc kieåm tra trong ISR ñeå xaùc ñònh nguoàn ngaét vaø côø taïo ngaét seõ ñöôïc xoùa baèng phaàn meàm. Thoâng thöôøng moät reõ nhaùnh xaûy ra vôùi moät phaûn öùng thích hôïp, phuï thuoäc vaøo nguoàn ngaét. Vì caùc vector ngaét ôû phaàn ñaàu cuûa boä nhôù chöông trình, neân leänh thöù nhaát cuûa chöông trình chính thöôøng laø leänh nhaûy qua chöông trình chính naøy. Ví duï nhö leänh LJMP 0030H. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang26 IV. THIEÁT KEÁ CHÖÔNG TRÌNH DUØNG CAÙC NGAÉT: Caùc ví duï trong caùc muïc tröoùc ñaõ khoâng söû duïng caùc ngaét nhöng ñaõ coù voøng laëp ñôïi ñeå kieåm tra caùc côø baùo traøn (TF0 hoaëc TF1) hoaëc caùc côø thu vaø côø phaùt Port noái tieáp (TI vaø RI). Vaán ñeà trong phöông phaùp naøy laø thôøi gian thöïc thi coù gía trò cuûa CPU hoaøn toaøn khoâng bò tieâu toán trong vieäc ñôïi caùc côø. Ñieàu naøy hoaøn toaøn khoâng thích hôïp vôùi caùc öùng duïng cuûa vi ñieàu khieån, trong ñoù boä vi ñieàu khieån phaûi töông taùc vôùi nhieàu thieát bò xuaát nhaäp ñoàng thôøi. Trong phaàn naøy ta seõ khaûo saùt caùch phaùt trieån chöông trình duøng vi ñieàu khieån. Khung ñeà nghò cho moät chöông trình phuïc vuï ngaét nhö sau: ORS 0000H ; ñieåm vaøo Reset. Ljmp main; caùc ñieåm vaøo ISR. Org 0030H; ñieåm vaøo chöông trình chính. Main: chöông trình chính baét ñaàu. Leänh thöù nhaát nhaûy tôùi ñòa chæ 0030H, vöøa treân caùc vò trí maø caùc ISR baét ñaàu. Nhö ñöôïc veõ hình sau, chöông trình chính baét ñaàu ôû ñòa chæ 0030H. FFFFH Chöông trình chính 0030H 002fH vaøo 1.Chöông trình phuï c vuï ngaét coù kích Caùc thöôùñieåm c nhoû : Reset LJMP main vaø ngaét 0000H Caùc chöông trình phuïc vuï ngaét phaûi baét ñaàu ôû gaàn phaàn ñaàu cuûa boä nhôù chöông trình ôû caùc ñòa chæ trong baûng caùc vectôr ngaét. Maët duø coù 8 byte ôû caùc ñieåm chöùc duøng vaøo ngaét, thöôøHình ng ñuû: Toå boä nhôù ñeåboä thöïnhôù c hieäkhi n caù c hoaïcaùc t ñoänngaét g mong muoán vaø quay veà chöông trình chính töø IRS. Neáu chæ coù moät nguoàn ngaét ñöôïc söû duïng, ví duï timer 0, thì coù theå söû duïng khung sau: ORS 000H; Reset LJMP MAIN ORG 000BH; ñieåm vaøo time 0 GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp TOIRS: trang27 ; ISR cho time 0 baét ñaàu. RETI; quay veà chöông trình chính. MAIN: Chöông trình chính. Neáu söû duïng nhieàu ngaét phaûi ñaûm baûo laø chuùng phaûi baét ñaàu töø vò trí ñuùng vaø khoâng chaïy qua ISR keá. Vì chæ coù moät ngaét ñöôïc söû duïng trong ví duï treân, chöông trình chính coù theå baét ngay sau leänh RETI. 2. Caùc chöông trình phuïc vuï ngaét coù kích thöôùc lôùn: Neáu ISR daøi hôn 8 byte, coù theå caàn chuyeån noù tôùi moät nôi naøo ñoù trong boä nhôù chöông trình hoaëc coù theå ñeå noù ñi loá qua ñieåm vaøo cuûa ngaét keá. Tieâu bieåu laø ISR baét ñaàu vôùi leänh nhaûy ñeán vuøng nhôù khaùc ôû ñoù coù theå môû roäng chieàu daøi caùc ISR. Ví duï luùc naøy chæ xeùt timer 0, coù theå söû duïng khung sau: ORS 000H; Reset LJMP MAIN ORG 000BH; caùc vector ngaét tieáp theo. MAIN: TOISR: RETI: ; ISR cho time 0. ; quay veà chöông trình chính. Ñeå ñôn giaûn chöông trình chæ laøm vieäc moät luùc ban ñaàu. Chöông trình khôûi ñoäng Timer, Port noái tieáp vaø caùc thanh ghi ngaét cho thích hôïp vaø roài khoâng laøm gì caû. Coâng vieäc ñöôïc hoaøn toaøn laøm trong ISR. Sau caùc khôûi ñoäng, chöông trình chöùa caùc leänh sau: HERE: SJMP HERE Hay daïng vieát gaén goïn: SJMP Khi ngaét xaûy ra, chöông trình chính bò ngaét quaõng taïm thôøi trong khi ISR thöïc thi. Leänh RETI ôû cuoái ISR traû ñieàu khieån veà chöông trình chính vaø noù tieáp tuïc khoâng laøm gì caû. Trong nhieàu öùng duïng ñieàu khieån, nhieàu coâng vieäc thaät ra ñöôïc thöïc hieän hoaøn toaøn trong ISR. Vì söû duïng ngaét, neân leänh SJMP (HERE:SJMP HERE) coù theå ñöôïc thay theá baèng caùc leänh thöïc hieän coâng vieäc khaùc trong öùng duïng. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang28 CHÖÔNG III: KHAÛO SAÙT IC THU PHAÙT TONE MT8880: MT8880 laø moät IC thu phaùt DTMF troïn boä keøm theo moät boä loïc thoaïi (Call Progress Filter). Boä thu DTMF döïa treân kyõ thuaät chuaån cuûa IC MT8870, coøn goïi laø boä phaùt DTMF söû duïng phöông phaùp bieán ñoåi D/A bieán dung (Switched Capacitor) cho ra tín heäu DTMF chính xaùc, ít nhieãu. Caùc boä ñeám beân trong giuùp hình thaønh cheá ñoä Brust Mode nhôø vaäy caùc caëp tone xuaát ra vôùi thôøi haèng chính xaùc. Boä loïc Call Progress cho pheùp boä vi xöû lyù phaân tích caùc tone traïng thaùi ñöôøng daây. Bus chuaån cuûa noù keát hôïp MPU vaø ñaëc bieät thích hôïp hoï 6800 cuûa Motorola. MT8880 coù 5 thanh ghi beân trong eå giao tieáp vôùi µP, coù theå chia laøm 3 loaïi: Nhaän phaùt data: 2 thanh ghi. Thanh ghi traïng thaùi. Nhaän töø ñieàu khieån: 2 thanh ghi. I. MOÂ TAÛ CHÖÙC NAÊNG: IC phaùt tone MT8880 bao goàm boä thu DTMF chaát löôïng cao (keøm boä khueách ñaïi) vaø moät boä taïo DTMF söû duïng BUST COUNTER giuùp cho vieäc toång hôïp ñoùng ngaét tone ñöôïc chính xaùc. Ngoaøi ra ta coù theå choïn cheá ñoä CALL PROGRESS ñeå giuùp phaùt hieän caùc taàn soá naèm trong giaûi thoâng thoaïi. Ñoù laø caùc tín hieäu traïng thaùi ñöôøng daây. II. CAÁU HÌNH NGOÕ VAØO: Thieát keá ñaàu vaøo cuûa MT8880 cung caáp moät boä khueách ñaïi OP-AMP ngoõ vaøo vi sai cuõng nhö moät ngoõ vaøo VREF ñeå ñieàu chænh thieân aùp cho ñaàu vaøo taïi VDD/2. Chaân GS giuùp noái ngoõ ra boä khueách ñaïi vôùi ngoõ vaøo qua moät ñieän trôû ngoaøi ñeå ñieàu chænh ñoä lôïi. Boä thu: Hai boä loïc baêng thoâng baäc 6 giuùp taùch caùc tone trong caùc nhoùm tone LOW vaø HIGH. Ñaàu ra moãi boä loïc ñieän dung giuùp naén daïng tín hieäu tröôùc khi qua boä haïn bieân. Vieäc haïn bieân ñöôïc ñaûm nhieäm bôûi boä so saùnh (Comparator) coù keøm theo boä treã ñeå traùnh choïn laàm tín hieäu möùc thaáp khoâng mong muoán. Ñaàu ra cuûa boä so saùnh cho ta caùc dao ñoäng coù möùc logic taïi taàn soá DTMF thu ñöôïc. Tieáp theo phaàn loïc laø boä giaûi maõ söû duïng kyõ thuaät ñeám soá ñeå kieåm tra taàn soá cuûa caùc tone thu ñöôïc vaø baûo ñaûm chuùng töông öùng vôùi caùc taàn soá DTMF chuaån. Moät kyõ thuaät laáy trung bình phöùc giuùp loaïi tröø caùc tone giaû taïo thaønh do tieáng noùi trong khi vaãn ñaûm baûo moät khoaûng bieán ñoäng cho tone thu do bò leäch. Khi boä kieåm tra nhaän daïng ñöôïc hai tone ñuùng thì ñaàu ra “early steering” (Est) seõ leân möùc Active. Luùc khoâng nhaän ñöôïc tín hieäu tone thì Est seõ leân möùc Inactive. 1. Maïch STEERING: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG VDD n aùn Hình 5.2: Maïch Luaä steering toát nghieäp trang29 C1 vc R1 VDD St/GT Est thu MT8880 nhaän moät Tröôùc khi caëp tone ñaõ giaûi maõ, boä thu phaûi kieåm tra xem thôøi haèng cuûa tín hieäu coù ñuùng khoâng. Vieäc kieåm tra naøy ñöôïc thöïc hieän bôûi moät boä RC maéc ngoaøi. Khi Est leân HIGH laøm cho Vc taêng leân khi tuï xaû. Khi maø Est vaãn coøn HIGH trong moät thôøi ñoaïn hôïp leä (tone) thì Vc tieán tôùi möùc ngöôõng Vtst cuûa logic Steering ñeå nhaän moät caëp tone vaø choát 4 bit maõ töông öùng vôùi noù vaøo thanh ghi Receive Data Register. Luùc naøy, ñaàu ra GT ñöôïc kích hoaït vaø ñaåy Vc leân tôùi VDD. Cuoái cuøng sau moät thôøi gian delay ngaén cho pheùp vieäc choát Data thöïc hieän xong thì côø cuûa maïch Steering leân HIGH baùo hieäu raèng caëp tone thu ñöôïc ñaõ ñöôïc löu vaøo thanh ghi. Ta coù theå kieåm tra bit töông öùng trong thanh ghi traïng thaùi. Neáu ta cho Mode Interrupt thì chaân IRQ/CP seõ xuoáng LOW khi côø naøy ñöôïc kích hoaït. Döõ lieäu thu ñöôïc seõ ñi ra Databus (2 chieàu) khi thanh ghi Receive Data ñöôïc ñoïc. Maïch steering laïi hoaït ñoäng nhöng theo chieàu ngöôïc laïi ñeå kieåm tra khoaûng döøng giöõa hai soá ñöôïc quay. Vì vaäy boä thu vöøa boû qua tín hieäu quaù ngaén khoâng hôïp leä vöøa khoâng chaáp nhaän caùc khoaûng ngaét quaù nhoû khoâng theå coi laø khoaûng döøng giöõa caùc soá. Chöùc naêng naøy, cuõng nhö khaû naêng choïn thôøi haèng Steering baèng maïch ngoaøi cho pheùp ngöôøi thieát keá ñieàu chænh hoaït ñoäng cho phuø hôïp vôùi caùc ñoøi hoûi khaùc nhau cuûa töøng öùng duïng. 2. BOÄ LOÏC THOAÏI: Mode CALL PROGRESS khi ñöôïc choïn thì cho pheùp kieåm tra caùc tone khaùc nhau theå hieän traïng thaùi ñöôøng daây. Ñaàu vaøo cuûa Call Progress vaø mode tone DTMF laø chung nhöng tone Call Progress chæ coù theå kieåm tra neáu ta choïn mode CP. DTMF tone laïi khoâng theå nhaän daïng ñöôïc neáu ta choïn mode CP. Caùc taàn soá ñöa ñeán ñaàu vaøo (+IN vaø –IN) naèm trong giôùi haïn baêng thoâng chaáp nhaän cuûa boä loïc (280-550 Hz) seõ ñöa qua boä so saùnh coù ñoä lôïi cao vaø ñeán chaân IRQ/CP. Daïng soùng ôû ñaàu ra taïo bôûi maïch trigger coù theå phaân tích bôûi vi xöû lyù ñeå xaùc ñònh tính chaát cuûa caùc tone traïng thaùi ñöôøng daây. Caùc taàn soá trong vuøng loaïi boû seõ khoâng ñöôïc kieåm tra vaø nhö vaäy seõ khoâng coù tín hieäu naøo ôû chaân IRQ/CP khi gaëp caùc taàn soá naøy. Boä phaùt DTMF trong MT8880 coù khaû naêng taïo taát caû 16 caëp tone DTMF chuaån vôùi nhieãu toái thieåu vaø ñoä chính xaùc cao. Taát caû taàn soá naøy ñeàu laáy töø dao ñoäng thaïch anh 3.579545 Mhz maéc ngoaøi. Daïng soùng sin cuûa töøng tone ñöôïc toång hôïp soá baèng caùch söû duïng boä phaän chia haøng vaø coät toång hôïp ñöôïc, vaø boä bieán ñoåi GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang30 D/A bieán dung. Caùc tone haøng vaø coät ñöôïc troän laïi vaø loïc ñeå cho ra tín hieäu DTMF vôùi ít haøi vaø ñoä chính xaùc cao. Ñeå phaùt moät tín hieäu DTMF thì döõ lieäu töông öùng vôùi daïng maõ ôû baûng (.1) seõ phaûi ñöôïc vieát vaøo thanh ghi Transmit Data. Chuù yù raèng maõ phaùt naøy töông öùng vôùi maõ nhaän. Caùc tone rieâng leû ñöôïc phaân thaønh hai nhoùm laø: nhoùm thaáp vaø nhoùm cao (flow vaø high). Nhö baûng sau, caùc soá trong nhoùm thaáp laø 697, 770, 852 vaø 941 Hz. Theo tieâu chuaån thì tyû soá bieân ñoä cuûa nhoùm cao vôùi nhoùm thaáp laø 2dB ñeå traùnh suy hao taàn soá cao treân ñöôøng truyeàn. Baûng maõ hoùa caùc tín hieäu quay soá DTMF: flow 697 697 697 770 770 770 852 852 852 941 941 941 697 770 852 941 fhigh 1209 1336 1477 1209 1336 1477 1209 1336 1477 1029 1336 1477 1663 1663 1663 1663 Digit 1 2 3 4 5 6 7 8 9 0 * # A B C D D0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 D1 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 D2 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 D3 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 Thôøi haèng cuûa moãi tone bao goàm 32 thôøi ñoïan gioáng nhau. Thôøi haèng cuûa moät tone ñöôïc ñieàu khieån baèng caùch thay ñoåi ñoä daøi cuûa caùc thôøi ñoaïn treân. Trong hoaït ñoäng ghi vaøo thanh ghi Transmith Data thì 4 bit data treân bus ñöôïc choát vaø bieán ñoåi thaønh 2 trong 8 maõ ñeå söû duïng cho maïch chia haøng coät. Maõ naøy ñöôïc söû duïng ñeå quyeát ñònh thôøi ñoaïn taàn soá cuûa moät tone. 3. BURST MODE: Moät öùng duïng ñieän thoaïi baát kyø ñeàu ñoøi hoûi tín hieäu DTMF ñöôïc taïo ra vôùi moät thôøi haèng hoaëc ñöôïc quy ñònh bôûi öùng duïng ñoù hoaëc bôûi heä thoáng chuyeån maïch hieän coù. Thôøi haèng DTMF chuaån coù theå ñöôïc taïo ra baèng caùch söû duïng Burst Mode. Boä phaùt coù khaû naêng toång hôïp caùc tone coù khoaûng taét/môû trong thôøi gian ñònh tröôùc. Thôøi gian naøy laø 51 ms ± 1ms vaø laø chuaån cho boä quay soá töï ñoäng vaø GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang31 toång ñaøi. Sau khi khoaûng taét/môû tone ñaõ ñöôïc phaùt ñi, 1 bit töông öùng seõ ñöôïc laäp trong thanh ghi traïng thaùi ñeå bieåu thò raèng boä phaùt ñaõ saün saøng cho data keá. Thôøi haèng 51 ms ± 1ms ñoùng /môû tone coù ñöôïc khi ta choïn mode DTMF. Tuy nhieân khi CP mode (Call Progress Mode) ñöôïc choïn thì moät thôøi haèng ñoùng ngaét thöù hai laø 102ms ± 2ms seõ ñöôïc söû duïng. Khoaûng thôøi haèng daøi hôn naøy seõ höõu ích khi thôøi gian xuaát hieän tone laø 51 ms. Chuù yù raèng khi CP mode vaø burst mode cuøng ñöôïc choïn thì MT8880 chæ hoaït ñoäng ôû cheá ñoä phaùt maø thoâi. Trong moät öùng duïng naøo ñoù khi ta caàn moät khoaûng thôøi gian ñoùng ngaét khaùc (khoâng theo chuaån) thì phaûi duøng voøng laëp phaàn meàm hay moät boä ñònh beân ngoaøi vaø taét cheá ñoä Busrt Mode ñi. IC MT8880 khi ñöôïc khôûi ñoäng seõ maëc nhieân choïn cheá ñoä DTMF mode vaø Burst mode ñoàng thôøi. 4. Taïo Tone Ñôn: (Single Tone) Cheá ñoä taïo tone ñôn ñöôïc duøng khi ta chæ muoán taïo moät tone naøo ñoù trong nhoùm thaáp hoaëc cao. Cheá ñoä naøy duøng ñeå kieåm tra thieát bò DTMF vaø ñeå tính toaùn nhieãu, vaø ñöôïc choïn thanh ghi Control Register B. 5. Maïch Clock DTMF: Maïch clock ñöoïc söû duïng keát hôïp vôùi taàn soá maøu chuaån tivi coù taàn soá coäng höôûng laø 3.579545 Mhz. Moät nhoùm IC MT 8880 coù theå noái vôùi nhau duøng chung moät dao ñoäng thaïch anh. 6. Boä giao tieáp vôùi vi xöû lyù: MT8880 söû duïng moät boä giao tieáp vi xöû lyù cho pheùp ñieàu khieån moät caùch chính xaùc vôùi chöùc naêng thu vaø phaùt. Coù toång coäng 5 thanh ghi chia laøm ba loaïi: Thanh ghi döõ lieäu thu /phaùt, thanh ghi ñieàu khieån thu /phaùt vaø thanh ghi traïng thaùi. Coù hai thanh ghi döõ lieäu: thanh ghi Receive data chöùa maõ xuaát ra cuûa caëp tone DTMF hôïp leä gaàn nhaát vaø laø thanh ghi chæ ñoïc. Data ñöa vaøo thanh ghi Transmith Data seõ qui ñònh caëp tone naøo ñöôïc phaùt ñi, Data chæ coù theå ñöôïc vaøo thanh ghi naøy. Ñieàu khieån thu phaùt tone ñöôïc ñaûm nhaän bôûi 2 thanh ghi Control Register A vaø Control Register B (CRA vaø CRB) coù cuøng moät ñòa chæ. Muoán ghi vaøo thanh ghi CRB thì tröôùc ñoù phaûi coù set moät bit töông öùng ôû CRA. Chu kyø ghi keá tieáp vaøo cuøng ñòa chæ vôùi CRA seõ cho pheùp truy caäp tôùi CRB. Vaø chu kyø ghi keá tieáp nöõa seõ trôû laïi CRA. Khi caáp ñieän maïch ñieän reset noäi seõ xoùa caùc thanh ghi ñieàu khieån. Tuy vaäy, ñeå ngaên ngöøa thì chöông trình phaàn meàm neân coù moät doøng leänh ñeå kích khôûi caùc thanh ghi naøy. Giaû söû raèng thanh ghi phaùt roãng sau khi reset, ta xem qua caùc baûng (3, 4, 5 vaø 6) ñeå thaáy roõ chi tieát veà caùc thanh ghi ñieàu khieån. Chaân IRQ/CP coù theå ñöôïc laäp trình sao cho noù coù theå cung caáp tín hieäu yeâu caàu ngaét sau khi nhaän xung DTMF hôïp leä hay khi boä phaùt ñaõ saün saøng cho data keá tieáp (chæ GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang32 trong Burst mode). Chaân IRQ/CP laø ngoõ ra cöïc maùng hôû vaø vì theá caàn coù moät ñieän trôû keùo leân. Thanh ghi nhaän data chöùa maõ leänh xuaát cuûa giaù trò cuoái cuøng caëp tone DTMF ñöôïc giaûi maõ vaø chæ laø thanh ghi ñoïc data vaøo. Tín hieäu data vaøo trong thanh ghi phaùt seõ ñöôïc ñònh roõ vôùi caëp tone naøo maø ñöôïc phaùt sinh ra. Data chæ coù theå ñöôïc vieát vôùi thanh ghi phaùt. Hai thanh ghi ñieàu khieån CRA vaø CRB chæ chieám choã trong moät khoaûng ñòa chæ töông öùng gheùp ghi vôùi CRB coù theå ñöôïc thöïc hieän baèng caùch ñaët daønh rieâng bit trong CRA pheùp ghi tieáp theo tôùi ñòa chæ töông töï seõ ñöôïc tröïc tieáp ñöa tôùi CRB vaø tieáp theo sau cho chu kyø ghi seõ ñöôïc tröïc tieáp trôû laïi CRA. Caùch truy caäp thanh ghi: RSO 0 0 1 1 R/W 0 1 0 1 CHÖÙC NAÊNG Ghi vaøo thanh ghi Data phaùt Ñoïc töø thanh ghi data thu Ghi vaøo thanh ghi ñieàu khieàn Ñoïc töø thanh ghi traïng thaùi Traïng thaùi thanh ghi CRA: b3 REGISTER SELECT b2 b1 INTERRUPT CP/ DTMF ENABLE MODE b0 TONE OUT CRA (Control Register A): BIT B0 TEÂN TONE OUTPUT B1 CP/ DTMF MODE CONTROL CAÙCH SÖÛ DUÏNG Möùc logic 1 cho pheùp tone ñöôïc phaùt ra. Chöùc naêng naøy coù theå ñöôïc thöïc hieän trong Busrt mode hoaëc None- Busrt mode Choïn mode DTMF (möùc 0) cho pheùp thu vaø phaùt tone ñoàng thôøi. Khi choïn mode CP (möùc1 boä loïc daõi baäc 6) ñöôïc kích hoaït cho pheùp kieåm tra caùc tone traïng thaùi ñöôøng daây (call progress tone). Caùc tone naøy neáu naèm trong daõi thoâng qui ñònh thì ñöôïc theå hieän ôû chaân IRQ/CP ôû daïng soùng hình chöõ nhaät neáu bit IRQ ñöôïc choïn (B=1). Ngoaøi ra khi caû hai CP mode vaø busrt mode ñöôïc choïn, boä phaùt seõ phaùt tín hieäu DTMF vôùi khoaûng taét môû laø 102 ms, gaáp ñoâi khi ta choïn mode DTMF. Chuù yù raèng tone DTMF seõ ñöôïc thu khi mode GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp B2 INTERRUP ENABLE B3 REGISTER E SELECT trang33 CP ñöôïc choïn. Logic 1 cho pheùp mode Interrup. Khi mode naøy möùc tích cöïc vaø mode DTMF ñöôïc (B1=0), chaân IRQ/CP seõ bò keùo xuoáng möùc 0 khi: + Moät tín hieäu DTMF hôïp leä ñöôïc nhaän vaø ñaõ hieän höõu ñöôïc trong khoaûng thôøi gian an toaøn. + Boä phaùt saün saøng cho data keá tieáp ( chæ trong Busrt mode). Logic 1 cho pheùp CRB trong chu kyø ghi keá tieáp treân cuøng ñòa chæ naøy. Chu kyø ghi keá sau nöõa seõ trôû laïi ghi vaøo CRA. Traïng thaùi thanh ghi CRB: b3 COLUMN /ROW TONE b2 SINGLE /DUAL TONE b1 TEST MODE b0 BUSRT MODE CRB (control register B): BIT B0 B1 B2 TEÂN CAÙCH SÖÛ DUÏNG BUSRT MODE Möùc 0 cho pheùp choïn Busrt mode khi mode naøy ñöôïc choïn. Data töông öùng vôùi caëp tone DTMF coù theå ñöôïc vieát vaøo thanh ghi phaùt ñeå taïo ra khoaûng môû tone vôùi thôøi haèng chuaån (51ms hay 102ms). Keá tieáp sau laø khoaûng ngaét tone vôùi thôøi haèng töông töï. Ngay sau khoaûng ngaét tone thì thanh ghi traïng thaùi seõ ñöôïc caäp nhaät bieåu thò raèng thanh ghi phaùt ñaõ saün saøng cho caùc leäng môùi vaø moät ngaét ñöôïc taïo ra caùc mode Interrupt ñaõ ñöôïc choïn tröôùc ñoù. Khi Burst Mode khoâng ñöôïc choïn tröôùc ñoùthì tone phaùt ra seõ ñöôïc taét môû theo baát kyø thôøi haèng naøo do ngöôøi duøng laäp trình. TEST MODE Cho pheùp choïn Test Mode (logic 1). Khi ñoù chaân IRQ/CB seõ xuaát hieän tín hieäu Steering ñöôïc laøm treã töø boä thu DTMF. DTMF Mode phaûi ñöôïc choïn (CRA B1=0) tröôùc khi Test Mode ñöôïc kích hoaït. SINGLE/ Möùc logic 0 cho phaùp tín hieäu Dual Tone Multi DUAL TONE Frequency. Logic 1 choïn cheá ñoä tone ñôn (single GENERATION tone) cho pheùp taïo ra moät tone nhoùm thaáp hoaêïc nhoùm cao döïa vaøo traïng thaùi cuûa bit B3 trong thanh GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang34 ghi CRB. Söû duïng vôùi bit B2 ôû treân. Boä phaùt coù theå ñöôïc choïn ñeå phaùt taàn soá naèm treân haøng hay coät vaø möùc logic 1 seõ choïn taàn soá haøng. B3 Thanh ghi traïng thaùi: BIT TEÂN B0 IQR B1 THANH GHI DÖÕ LIEÄU PHAÙT ROÃNG (CHÆ TRONG BURST MODE) THANH GHI DÖÕ LIEÄU THU ÑAÀY DELAY STEERING B2 B3 CÔØ TRAÏNG THAÙI CÔØ TRAÏNG THAÙI LAÄP XOAÙ Ngaét xuaát hieän. B1 hoaëc Ngaét chöa kích hoaït. Bò B2 ñaõ ñöôïc laäp. xoùa sau khi thanh ghi traïng thaùi ñaõ ñöôïc ñoïc. Thôøi haèng ngaét tone ñaõ Bò xoùa sau khi thanh ghi keát thuùc vaø boä phaùt ñang traïng thaùi ñöôïc ñoïc hay chôø döõ lieäu keá tieáp. khi choïn None_Burst Mode. Döõ lieäu hôïp leä ñang naèm trong thanh ghi döõ lieäu thu. Ñöôïc laäp khi phaùt hieän thaáy söï khoâng xuaát hieän khoâng hôïp leä cuûa tín hieäu DTMF. Bò xoùa sau khi thanh traïng thaùi ñöôïc ñoïc. Bò xoùa sau khi phaùt hieän moät tín hieäu DTMF hôïp leä. III. YÙ NGHÓA CAÙC CHAÂN: Sô ñoà chaân IC MT8880 PIN TEÂN GVHD: NGUYEÃN ÑÌNH PHUÙ MOÂ TAÛ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ÷ 17 18 trang35 IN+ INGS VREF Chaân vaøo khoâng ñaûo cuûa OP.AMP Chaân vaøo ñaûo cuûa OP.AMP. Choïn ñoä lôïi cho boä khueách ñaïi OP.AMP. Ñaàu ra ñieän aùp tónh VDD/2 ñöôïc duøng ñeå caân baèng tónh ôû ñaàu vaøo. VSS Ñieän aùp aâm cung caáp. OSC1 Ñaàu vaøo boä dao ñoäng thaïch anh. OSC2 Dao ñoäng thaïch anh 3.579545 MHz ñöôïc noái giöõa OSC1 vaø OSC2 taïo thaønh dao ñoäng doøng ñieän ôû beân trong vi maïch. TONE Ngoõ ra tone DTMF. R/W Chaân ñeå CPU ñieàu khieån tröïc tieáp ñoïc vieát data. CS Chip Select. RSO Chaân choïn Register. Φ 2 Xung ñoàng hoà heä thoáng. IRQ Yeâu caàu ngaét gôûi tôùi MPU (Chaân cöïc maùng hôû). Khi Mode /CP Call Progress (CP) cheá ñoä ngaét interrupt cuøng ñöôïc choïn, chaân IRQ/CP seõ ñöa ra daïng soùng hình chöõ nhaät ñaëc tröng cho tín hieäu ñaàu vaøo OP.AMP vôùi ñieàu kieän tín hieäu ñaàu vaøo naøy phaûi naèm trong daûi thoâng cuûa boä loïc thoâng daûi. D0-D3 Data Bus Est 19 St/GT 20 VDD (Early Steering Output). Cho ra möùc logic 1 khi phaùt hieän ñöôïc moät caët tone hôïp leä. Baát kì traïng thaùi naøo khoâng coù tín hieäu hôïp leä ñeàu cho ra logic 0. (Sreering Output/ Guard Time Output 2 chieàu). Moät caëp ñieän aùp lôùn hôn VESt khi xuaát hieän taïi ST laøm cho thieát bò ghi nhaän caëp tone vaø caäp nhaát boä choát ngoõ ra. Moät ñieän aùp nhoû hôn VESt giaûi phoùng thieát bò ñeå thu nhaän caëp tone môùi. Ngoõ ra GT laøm nhieäm vuï reset maïch ñònh thì beân ngoaøi. Traïng thaùi cuõa noù laø moät haøm cuûa Est vaø ñieän aùp taïi chaân St. Nguoàn cung caáp döông. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang36 CHÖÔNG IV: GIÔÙI THIEÄU PHÖÔNG THÖÙC LAØM VIEÄC CUÛA TOÅNG ÑAØI VAØ CAÙC THUEÂ BAO Nhaèm hieåu roõ, aùp duïng toát vaøo vieäc thieát keá maïch töï ñoäng quay soá ñieän thoaïi, ta ñi vaøo tìm hieåu moät vaøi ñaët tính cuûa ñieän thoaïi vaø hoaït ñoäng giöõa toång ñaøi vaø caùc thueâ bao. - Ñaëc tính cuûa ñieän thoaïi: Baêng thoâng laøm vieäc 300Hz ÷ 3400 Hz Tæ soá S/N ≥ 29,5 dB Toång trôû ñieän thoaïi 600Ω Doøng ñieän qua ñieän thoaïi 5÷ 30 mA Ñieän aùp khi gaùc maùy 48V DC, khi nhaác maùy 10V DC. - Heä thoáng aâm hieäu giao tieáp giöõa toång ñaøi vaø thueâ bao: Tín hieäu môøi quay soá (Dialtone): laø tín hieäu sin taàn soá f=425± 25Hz, bieân ñoä 2VRMS treân neàn DC, phaùt lieân tuïc: Tín hieäu Dial tone - Tín hieäu baùo baän (Busy tone): laø tín hieäu Sin taàn soá f=425± 25Hz, bieân ñoä 2VRMS treân neàn DC, phaùt ngaét quaõng 0,5s coù 0,5 khoâng. 0,5s 0,5s Tín hieäu hoài aâm chuoâng (RINGBACK TONE):laø Tín hieäu sin taàn soá f=425± 25Hz, bieân ñoä 2VRMS treân neàn DC 10v, phaùt ngaét quaõng 2s coù 4s khoâng 2s 4s 10V GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG 48v 0v Luaän aùn toát nghieäp trang37 Tín hieäu Ringback tone - Tín hieäu chuoâng (ring tone)laø tín hieäu sin taàn soá f=25 Hz, bieân ñoä V PP=75V treân neàn DC 48v, phaùt ngaét quaõng 2s coù 4s khoâng 2s 4s 48V Tín hieäu chuoâng Phöông thöùc quay soá tone DTMF vaø PULSE: ÔÛ baûng 1 khi coù moät phím ñöôïc aán thì treân ñöôøng daây seõ xuaát hieän 2 taán soá khaùc nhau thuoäc nhoùm f thaáp vaø fcao. Phöông phaùp taàn gheùp naøy choáng nhieãu toát hôn, ngoaøi ra duøng daïng tone DTMF seõ taêng ñöôïc toác ñoä quay nhanh gaáp 10 laàn so vôùi vieäc thöïc hieän quay soá PULSE. Maët khaùc phöông phaùp seõ söû duïng ñöôïc moät soá dòch vuï coäng theâm toång ñaøi. Phöông phaùp quay soá pulse: tín hieäu quay soá laø chuoãi xung vuoâng, taàn soá chuoãi döï aùn = 10Hz,soá ñieän thoaïi baèng soá xung ra, rieâng soá 0 seõ laø 10 xung, bieân ñoä ôû möùc cao laø 48v, ôû möùc thaáp laø 10v, daïng soùng ñöôïc cho ôû hình döôùi: Daïng soùng quay soá kieåu PULSE a: chu kyø laøm vieäc (thôøi gian 48v) b: thôøi gian ôû 10v, ta coù a/b = 66/33 = 2 c: khoaûng thôøi gian giöõa 2 laàn quay soá trong moät cuoäc goïi Soá xung treân moät giaây 10 – 20 pulse/s Quay soá kieåu Pulse chaäm neân hieän nay ít ñöôïc söû duïng Phím soá 1 2 3 4 5 6 7 GVHD: NGUYEÃN ÑÌNH PHUÙ Nhoùm fthaáp 697Hz±1,5% 697Hz±1,5% 697Hz±1,5% 770Hz±1,5% 770Hz±1,5% 770Hz±1,5% 852Hz±1,5% Nhoùm fcao 1209Hz±1,5% 1336Hz±1,5% 1447Hz±1,5% 1209Hz±1,5% 1336Hz±1,5% 1447Hz±1,5% 1209Hz±1,5% SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp 8 9 * 0 # A B C D trang38 852Hz±1,5% 852Hz±1,5% 941Hz±1,5% 941Hz±1,5% 941Hz±1,5% 697Hz±1,5% 770Hz±1,5% 852Hz±1,5% 941Hz±1,5% 1336Hz±1,5% 1447Hz±1,5% 1029Hz±1,5% 1336Hz±1,5% 1447Hz±1,5% 1336Hz±1,5% 1663Hz±1,5% 1663Hz±1,5% 1663Hz±1,5% Baûng : caùc caëp taàn soá DTMF - Phöông thöùc laøm vieäc giöõa caùc toång ñaøi vaø caùc thueâ bao: + Nhaän daïng thueâ bao maùy goïi nhaác maùy: toång ñaøi nhaän daïng traïng thaùi cuûa thueâ bao thoâng qua söï bieán ñoåi toång trôû maïch voøng cuûa ñöôøng daây. Bình thöôøng khi thueâ bao ôû traïng thaùi gaùc maùy thì toång trôû ñöôøng daây thì voâ cuøng lôùn (hôû maïch). Khi thueâ bao nhaác maùy (offhook) ñieän trôû maïch voøng coøn 150Ω-1500Ω (thöôøng laø 600Ω) ñoù laø toång trôû vaøo cuûa ñieän thoaïi. Toång ñaøi nhaän bieát ñöôïc söï thay ñoåi naøy thoâng qua boä caûm bieán traïng thaùi ñöôøng daây thueâ bao. + Khi thueâ bao nhaác maùy thì toång ñaøi seõ caáp tín hieäu Dial Tone treân ñöôøng daây ñeán thueâ bao, chæ khi nhaän ñöôïc tín hieäu naøy thì thueâ bao môùi ñöôïc quay soá, coù theå quay soá döôùi daïng DTMF vaø PULSE. + Toång ñaøi nhaän caùc soá do thueâ bao gôûi ñeán vaø kieåm tra, neáu soá ñaàu naèm trong taäp theå soá thueâ bao cuûa toång ñaøi thì toång ñaøi seõ phuïc vuï cuoäc goïi noäi ñaøi. Ngöôïc laïi noù phuïc vuï cuoäc goïi lieân ñaøi thoâng qua trung keá giöõ toaøn boä phaàn ñònh vò quay soá toång ñaøi coù thueâ bao bò goïi, neáu soá ñaàu laø maõ thì chöùc naêng ñaëc bieät cuûa toång ñaøi seõ thöïc hieän caùc chöùc naêng coù theå phuïc vuï thueâ bao. + Neáu thueâ bao bò goïi thoâng thoaïi hoaëc caùc ñöôøng daây keát noái bò baän thì toång ñaøi caáp tín hieäu BUSY TONE ngöôïc veà cho thueâ bao goïi. + Khi thueâ bao bò goïi nhaác maùy thì toång ñaøi bieán tín hieäu naøy vaø caét doøng chuoâng kòp thôøi ñeå traùnh hö hao cho cho thueâ bao, ñoàng thôøi caét Ring Back Tone ñeán thueâ bao bò goïi vaø keát noái thoâng thoaïi cho 2 thueâ bao. + Khi thueâ bao ñang thoâng thoaïi coù moät thueâ bao gaùc maùy, toång ñaøi ngaét thoâng thoaïi 2 thueâ bao vaø caáp Busy Tone cho thueâ bao coøn laïi, giaûi toûa caùc thieát bò phuïc vuï thoâng thoaïi. Khi thueâ bao coøn laïi gaùc maùy toång ñaøi ngaét Busy Tone vaø keát thuùc chöông trình phuïc vuï thueâ bao. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang39 PHAÀN II: THIEÁT KEÁ PHAÀN CÖÙNG CHÖÔNG I: SÔ ÑOÀ KHOÁI KHOÁI DOØ CAÛM BIEÁN BAÙO ÑOÄNG TAÏI CHOÅ KHOÁI TIEÁNG NOÙI KHOÁI XÖÛ LYÙ TRUNG TAÂM KHOÁI GIAO TIEÁP ÑÖÔØNG DAÂY ÑÖÔØNG DAÂY LINE CPU Chöùc naêng caùc khoái: Heä thoáng caûm bieán: laø thieát bò ñaàu vaøo cuûa heä thoáng, noù quyeát ñònh söï chính xaùc cuûa maïch, goàm caùc caûm bieán nhieät vaø khoùi ñeå phaùt hieän söï coá. Khoái baùo ñoäng taïi choã: taïo tieáng coøi ñeå baùo ñoäng. Khoái tieáng noùi: duøng ñeå xöû lyù caùc tín hieäu vaø ñieàu khieån toaøn boä hoaït ñoäng cuûa heä thoáng. Khoái giao tieáp ñöôøng daây: laø boä phaän giao tieáp giöõa maïch vaø maïng ñieän thoaïi. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang40 CHÖÔNG II: KHOÁI BAÙO CHAÙY A. THIEÁT KEÁ MAÏCH CAÛM BIEÁN: I. BOÄ CAÛM BIEÁN NHIEÄT: Khi moät vuï chaùy xaûy ra thì ôû vuøng chaùy nhieät ñoä taêng leân raát cao. Lôïi duïng ñaëc tính naøy ta duøng boä caûm bieán nhieät ñeå nhaän bieát vaø baùo chaùy, ôû ñaây ta duøng vi maïch caûm bieán LM335. LM335 laø moät sensor thích hôïp ñeå caûm nhaän söï thay ñoåi cuøa nhieät ñoä, LM335 hoaït ñoäng nhö moät zener coù ñieän aùp ñaùnh thuûng tæ leä thuaän vôùi nhieät ñoä tuyeät ñoái vôùi ñoä gia taêng 10mV/ oK, LM335 hoaït ñoäng trong phaïm vi doøng töø 400µA cho tôùi 5mA maø khoâng thay ñoåi ñaëc tính, LM335 coù sai soá nhoû hôn 1 0C treân taàm 1000C, ñaëc bieät coù ñieän aùp ngoõ ra bieán thieân tuyeán tính theo nhieät ñoä. 1. Sô ñoà khoái: CAÛM BIEÁN NHIEÄT KHEÁCH ÑAÏI VI SAI SO SAÙNH T/HXLL 2. Thieát keá maïch: a. Caûm bieán LM335: 0 Ñieän aùp ra LM335 laø: V1 = 0,01 × T ( k ) (1) 0 0 Suy ra: V1 = 0,01 × ( 273 + T ( C ) = 2,73 + 0,01T ( C ) Choïn doøng laøm vieäc cho LM335 laø 1mA. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp Vaäy: R1 = trang41 5 − 2,73 = 2,7 kΩ → R1 = 2,2kΩ 0,001 Bieán trôû VR1 duøng ñeå chænh giaù trò offset cho LM335 vaø VR2 duøng ñeå ñieàu chænh ñieän aùp ra sao cho thoûa coâng thöùc (1): Choïn VR1 =VR2= 20kΩ Tuï C1 duøng ñeå loïc gai xung nhieãu, choïn C1 = 100uF ÔÛ ñaây ta duøng maïch ñeäm TL082 ñeå ngaên caùch khoâng cho taûi aûnh höôûng ñeán ñaàu ra cuûa maïch caûm bieán. b. Maïch taïo aùp chuaån: Vì ñieän aùp cuûa maïch caûm bieán tyû leä vôùi nhieät ñoä k do ñoù ñeå tính theo ñoä C ta phaûi tröø ñi moät löôïng laø 2,73V, vieäc naøy nhôø vaøo maïch taïo aùp chuaån. Choïn DZ1 laø Zenner oån aùp 3v vaø I=25mA Suy ra R1: R1 = (5-3)/0,01 = 200Ω Choïn R1 = 220Ω DZ1 oå aùp ôû giaù trò 3V, ñeå taïo ñöôïc ñieän aùp 2,73V ta chænh bieán trôû VR3: Choïn VR3 = 20KΩ Tuï C2 duøng ñeå loïc xung chænh nhieãu, choïn C2 = 10µF. Ta duøng maïch ñeäm khoâng ñaûo eå ngaên aûnh höôûng cuûa taûi. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang42 d. Maïch khueách ñaïi vi sai: Ta coù: − ( R5 + VR4 )V 1 ( khiV 2 = 0) R3 R 6 + VR5 R3 + R5 + VR 4 V 01 = × × V 2( khiV1 = 0 ) R 4 + R 6 + VR5 R3 V 01 = Choïn heä soá khueách ñaïi cuûa maïch laø AV = 5. Choïn R3 = R4 = R5 = R6 = 2.2kΩ Neáu ta chænh VR4 = VR5 thì: V01 = R5 + VR 4 (V2 − V1 ) = 5(V2 − V1 ) R3 Vaäy ñeå heä soá khueách ñaïi AV = 5 thì: R5 + VR 4 =5 R3 Luùc ñoù: V01 = 5(2,73 +0,01T-2,73) V01 = 0,05T; vôùi T laø nhieät ñoä moâi tröôøng. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang43 d. Maïch so saùnh: ÔÛ nhieät ñoä bình thöôøng khoaûng 25oC thì ñieän aùp ra V0 laø: V01 = 0,05 x 25 = 1,25V Luùc coù chaùy nhieät ñoä taêng leân khoaûng 50oC thì: V01 = 0,05 x 50 = 2,5V Ñeå taïo ra moät tín hieäu baùo chaùy ta cho qua moät boä so saùnh vôùi möùc ngöôõng ñieän aùp so saùnh laø 2,5V noái vao ngoõ tröø cuûa Opamp. Zenner DZ2 duøng ñeå taïo möùc ngöôõng ñieän aùp 2,5v Choïn DZ2 oån aùp ôû 3v, coù doøng Imax = 10mA R9 = (5-3)/0,01 = 200Ω Choïn R9 = 220Ω Bieán trôû VR6 ñeå chænh möùc ñieän aùp so saùnh, choïn VR6 = 10kΩ Ñieän trôû R7 vaø R8 ñeå haïn doøng cho transistor Q1, choïn R7 = R8 = 5,1kΩ. Khi khoâng coù chaùy V01 < Vref, opamp baûo hoøa aâm transistor Q 1 daãn, luùc ñoù: Vbñ = 0. Khi coù chaùy V01 > Vref, opamp baõo hoøa döông transistor Q1 taét, Vbñ = 1. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp II. trang44 BOÄ CAÛM BIEÁN KHOÙI: 1. Sô ñoà khoái: 2.Thieát keá maïch: lux Boä1Kcaûm bieán khoùi coù nhieäm vuï bieán ñoåi tín heäu khoùi thaønh tín hieäu ñieän, trong phaàn thieát keá naøy ta duøng quang trôû. Nhö ta ñaõ bieát hoaït ñoäng cuûa quang trôû laø: khi coù aùnh saùng chieáu vaøo ñeän trôû cuû10K a noù giaûm ñi ñaùng keå so vôùi khi khoâng ñöôïc chieáu saùng. YÙ töôûng duøng quang trôû ñeå laáy tín hieäu khoùi naøy laø bình thôøng quang trôû ñöôïc chieáu saùng bôûi aùnh saùng phaùt ra töø Led. Khi coù chaùy noàng ñoä khoùi100K taêng leân laøm cöôøng ñoä saùng giaûm ñi laøm cho ñieän trôû cuûa quang trôû taêng leân. Choïn LED coù doøng 20mA vaø phaùt saùng coù cöôøng ñoä 10 lux vaø quang trôû laø LDR03 coù ñaëc tuyeán laøm vieäc nhö hình veõ. Ta coù: R10 = 5(V ) = 2,5K 20mA Choïn R10 =2,7K Döôùi cöôøng ñoä saùng cuûa LED laø 10lux thì giaù trò ñieän trôû cuûa quang trôû laø 20K. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp ⇒V + = trang45 5 × 20 K 20 K + R Choïn V+=1v luùc chöa coù chaùy. Vaäy R11=100K –20K =80K Khi coù khoùi 20% luùc ñoù ñoäsaùng giaûm coøn 10lux × 20% baèng 2lux vaø giaù trò quang trôû taêng leân 100 K. ⇒V + = 5 × 100 K = 2,747v 100 K + 8 K Ta choïn giaù trò ñieän aùp chuaån so saùnh taïi ngoõ tröø cuûa opamp laø 2,5V. Töùc khi khoùi ñaït 20% thì caûm bieán cho tín hieäu baùo ñoäng. Choïn DZ3 laø zener 3v coù doøng Imax=25 mA ⇒V + = 5−3 = 80 25 × 10 −3 Choïn R12 =220 ChoïnVR7 =10K Ñieän trôû R13vaø R14 ñeå haïn doøng cho Q2 Choïn R13= R14= 4,7k III. XÖÛ LYÙ TÍN HIEÄU VAØO: Caùc tín hieäu ra töø boä caûm bieán qua maïch 7432, khi coù baát kyø tín hieäu baùo ñoäng naøo töø boä caûm bieán seõ coù caïnh leân ôû chaân Clk cuûa 7474, bình thöôøng BD ôû möùc thaáp vaø INT0 ôû möùc cao, khi coù xung Clk thì BD ôû möùc cao vaø luùc naøy INT0 ôû möùc thaáp. Ta duøng maïch nhôù 7474 ñeå traùnh tröôøng hôïp söï coá cuûa boä caûm bieán do chaùy gaây ra. B. MAÏCH BAÙO ÑOÄNG TAÏI CHOÃ: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang46 Khi moät ñaùm chaùy xaûy ra, ngoaøi vieäc baùo ñoäng baèng tieáng noùi “coù chaùy, coù chaùy” ñöôïc löu tröõ trong IC chuyeân duøng, ta coøn baùo ñoäng baèng coùi huï hay chuoâng ñieän nhaèm taäp trung söï chuù yù cuûa moïi ngöôøi. 1. Maïch taïo tieáng coøi huï: Trong maïch naøy ta söû duïng IC LM555 ñeå taïo aâm thanh phaùt ra coù caùc aâm saéc khaùc nhau. Tieáng coùi huï naøy taïo aâm thanh nghe raát kích thích vaø thöôøng ñöôïc nhieàu ngöôøi söû duïng laøm tín hieäu caûnh baùo. IC LM555 thöù 2 taïo thaønh maïch dao ñoäng aâm cao, choïn taàn soá ra cuûa LOA laø 1KHz. Ta coù: f = 1 0,693( R2 + VR2 + 2 R3 ) C 2 Choïn tuï C2 = 0,01µF R3 = 56kΩ R2 = 4,7kΩ VR2 = 20kΩ Taàn soá ra ôû LOA ta coù theå thay ñoåi nhôø bieán trôû VR2. IC LM555 thöù 1 cuõng laép thaønh maïch dao ñoäng coù taàn soá nhoû ñöôïc xaùc ñònh bôûi coâng thöùc: f = 1 0,693( R1 + VR1 ) C1 Choïn C1 = 220µF R1 = 1kΩ VR1 = 20kΩ GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang47 Taàn soá naøy coù theå thay ñoåi nhôø bieán trôû VR 1. Xung laáy ra treân tuï C1 coù daïng soùng raêng cöa, chuùng ta cho tín hieäu naøy taùc ñoäng vaøo chaân 5 cuûa IC LM555 thöù 2, ñieàu naøy laøm ñieàu cheá taàn soá leân tín hieäu ra loa laøm cho aâm thanh ra coù nhieàu daïng aâm saéc khaùc nhau. D. KHOÁI GIAO TIEÁP: Relay 1 duøng ñeå taïo tín hieäu nhaác maùy, khi coù tín hieäu baùo ñoäng thì µC seõ xuaát moät tín hieäu laäp traïng thaùi nhaác maùy giaû ñeå baùo cho toång ñaøi bieát maïch caàn phuïc vuï. Ñieän trôû R1 duøng ñeå haïn doøng cho transistor C1815. Choïn R1 = 2,7kΩ Relay 2: khi maùy bò goïi nhaác maùy thì µC seõ nhaän bieát vaø xuaát tín hieäu ñieàu khieån vaø ñoùng Relay 2. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang48 Ñieän trôû R2 duøng ñeå haïn doøng cho transstor C1815. Choïn doøng cho IB = 1mA RA = 4,7kΩ Caàu Diode coù taùc duïng choáng ñaûo cöïc laøm hö maïch. Diode Zener DZ1 vaø DZ2 duøng ñeå baûo veä cuoän daây bieán aùp vaø oån aùp ñaàu vaøo cuûa maïch. Vì tín hieäu thoaïi coù giaù trò bieân ñoä khoaûng 2,5 RMS neân ta choïn DZ1 vaø DZ2 oån aùp 3v. Khi Relay 1 ñoùng, toång ñaøi caáp ñieän khoaûng 10v DC vaøo maïch, transistor C828 qua ñieän trôû haïn doøng R 2 seõ daãn vaø taïo ñieän trôû DC cho maïch chính baèng R3. Choïn R2 = 4,7kΩ R3 = 470Ω Tuï C2 coù taùc duïng ngaên ñeän aùp DC cho maïch Choïn C2 = 10µF Khi toång ñaøi caáp caùc tín hieäu traïng thaùi ñöôøng daây thì tuï C 1 seõ noái mass cöïc B cuûa transistor C828, luùc naøy trôû khaùng AC cuûa maïch chính baèng trôû khaùng vaøo bieán aùp. 1. Maïch khueách ñaïi aâm thanh ra: Tín hieäu aâm thanh tröôùc khi ñöa leân ñöôøng daây ñeán maùy bò goïi ta cho qua maïch khueách ñaïi. Choïn heä soá khueách ñaïi cuûa maïch laø: AV0 = 5 GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp Ta coù: trang49 AV0 = R 6 + VR1 R5 R6 + VR1 = 5R5 Choïn R6 = 10kΩ R5 = 4,7kΩ VR1 = 20kΩ Tuï C3 duøng ñeå ngaên tín hieäu DC, choïn C3 = 10µF. 2. Maïch khueách ñaïi Tone vaøo: Tín hieäu treân ñöôøng daây ñeán maïch nhaän Tone ñaõ bò suy hao. Vì vaäy ta phaûi cho qua moät maïch khueách ñaïi. Choïn heä soá khueách ñaïi cuûa maïch laø: AV0 = 2 Ta coù: AV0 = R14 + VR3 =2 R13 Choïn R13 = 4,7kΩ R14 = 4,7kΩ VR3 = 10kΩ GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang50 Tuï C3 duøng ñeå ngaên tín hieäu DC, choïn C5 = 10µF. 3. Maïch khueách ñaïi TONE ra: Choïn heä soá khueách ñaïi cuûa maïch laø: AV0 = 5 Ta coù: AV0 = R15 + VR 2 =5 R16 R15 + VR2 = 5R16 Choïn R16 = 2,2kΩ R15 = 4,7kΩ VR2 = 20kΩ 4.Maïch khöû traéc aâm: Ñeå tín hieäu ra khoâng laãn tín hieäu ñaàu vaøo ta duøng maïch khöû traéc aâm nhaèm muïc ñích chæ cho tín hieäu ñi theo ñöôøng moät chieàu. Choïn R7 = R8 = R10 = R11 = R12 = 10kΩ R9 = 100Ω Ta coù: V2 = -R8/R7 x V1 = -V1 V3 = V2 = -V1 Maëc khaùc V4 = -R12/R11 x V3 – R11/R10 x V1 = -(V3 + V1) maø V3 = - V1 GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang51 Vaäy V4 = -(V1 – V1) = 0 *. MAÏCH THU PHAÙT TONE DTMF: Ñeå thu phaùt Tone DTMF ta söû duïng vi maïch MT8880. Ñeå giao tieáp toát vôùi maïch vi xöû lyù ta theâm caùc coång 7432 va 7437. Sô ñoà keát noái ñöôïc cho nhö hình veõ: Caáu hình ngoõ vaøo cuûa MT8880 laø moät maïch khueách ñaïi ñaûo vôùi hai ñieän trôû laø R18 vaø R19. Ta choïn AV0 = 1 AV0 = R18/R19 Suy ra R18 = R19 Choïn R18 = R19 = 100kΩ GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang52 Khi MT8880 hoaït ñoäng ôû cheá ñoä loïc thoaïi thì tín hieäu ñaàu ra treân chaân IRQ/CP coù daïng xung vuoâng. Tín hieäu môøi quay soá Dialtone coù chu kyø 2ms. Tín hieäu Ring Back Tone coù chu kyø 2 ms nhöng coù 2s vaø 4s khoâng. Tín hieäu Busy Tone coù 0.5s coù vaø 0.5s khoâng. Ñeå Timer cuûa vi xöû lyù coù theå phaân bieät ñöôïc deã daøng giöõa caùc tín hieäu baèng caùch ñeám soá xung, ta cho tín hieäu naøy qua moät maïch monostable taïo thaønh ñöôøng bao tín hieäu, ôû ñaây ta söû duïng vi maïch 74123. Choïn thôøi gian Mono T = 4 ms. Ta coù T = 0,28 x R21 x C8 0,005 = 0,28 x R21 x C8 Choïn C8 = 1µF Suy ra R21 = 17kΩ, choïn R21 = 22kΩ. Nhö vaäy tín hieäu thu ñöôïc sau khi qua maïch monotable laø: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang53 KHOÁI GIAO TIEÁP ÑÖÔØNG DAÂY GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang54 SÔ ÑOÀ KHOÁI HIEÅN THÒ SÔ ÑOÀ KEÁT NOÁI BOÄ NHÔÙ GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp GVHD: NGUYEÃN ÑÌNH PHUÙ trang55 SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang56 MAÏCH ÑIEÀU KHIEÅN GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang57 MAÏCH BAÙO ÑOÄNG, MAÏCH CAÛM BIEÁN, MAÏCH PHAÙT TIEÁNG NOÙI GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang58 PHAÀN3: THIEÁT KEÁ CHÖÔNG TRÌNH CHÖÔNG 1: NGUYEÂN LYÙ HOAÏT ÑOÄNG VAØ GIAÛI THUAÄT A. Chöông Trình Chính -Trong caùch thieát keá naøy ta söû duïng INTERRUPT0 vaø tín hieäu duøng ñeå gaây ra ngaét ngoaøi 0 laø tín hieäu baùo chaùy, khi coù chaùy thì chaân INT0 ñöôïc taùc ñoäng, luùc ñoù chöông trình chính ngöng taát caû ñeå phuïc vuï cho tín hieäu baùo ñoäng. -Khi khoâng coù ngaét chöông trình phuïc vuï cho vieäc naïp soá ñieän thoaïi. TIMER0 hoaït ñoäng ôû cheá ñoä ñeám söï kieän ñeå xaùc ñònh tín hieäu traïng traùi ñöôøng daây TIMER1 duøng cho TIMER. B. Chöông trình naïp soá ñieän thoaïi: -Chöông trình naøy coù nhieäm vuï nhaäp soá ñieän thoaïi töø baøn phím vaøo ram coù ñiaï chæ 2000h. -Soá ñieän thoïai naïp töø baøn phím coù toái ña 10 soá. Neáu phím nhaän ñöôïc coù giaù trò 00h seõ keát thuùc vieäc naïp soá ñieän thoaïi töø baøn phím vaø khi naïp song 1 soá ñieän thoaïi ta nhaán 0eh. C. Chöông trình queùt phím: Chöông trình queùt phím duøng xaùc ñònh coù phím naøo nhaán hay khoâng, chöông trình queùt töøng coät moät, ñaàu tieân laø coät soá 0, xem coù haøng naøo tích cöïc hay khoâng neáu khoâng thì qua coät keá, ngöôïc laïi thì löu giaù trò vaøo ACC. D. Chöông trình hieån thò: Ta söû duïng phöông phaùp queùt töøng led, tín hieäu xuaát ra coù 8 bít, trong doù 4 bit thaáp duøng ñeå choïn led, 4 bit cao laø maõ hex cuûa soá ñieän thoaïi. Ñaàu tieân xaùc ñònh ñòa chæ cuûa soá ñieän thoaïi, xaùc ñònh soá choïn led vaø xuaát ra port hieån thò, sau ñoù goïi chöông trình ñelay. Neáu trong quaù trình hieån thò maø khoâng coù phím naøo nhaán thì vaãn hieån thò soá ñieän thoaïi vöø môùi naïp vaøo, ngöôïc laïi thì quay veà chöông trình naïp soá ñieän thoaïi. E.Chöông trình baùo ñoäng Khi coù tín hieäu baùo ñoäng tín hieäu int ñöôïc thöïc thi. Chuông trình thöïc hieän vieäc quay soá ñieän thoaïi cuûa maùy bò goïi ñaõ ñöôïc naïp vaøo ram (goïi toái ña 2 soá moãi soá goïi 3 laàn), neáu maùy bò goïi khoâng baän thì phaùt tín hieäu baùo ñoäng. - Ñònh soá cuoäc goïi vaø soá laàn goïi, xuaát tín hieäu ñoùng relay1 taïo tín hieäu nhaác maùy giaû GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang59 - Xeùt tín hieäu môøi quay soá neáu coù thì quay soá ñieän thoaïi thöù nhaát, coøn khoâng laëp laïi traïng thaùi gaùc maùy chôø 2s goïi laïi. - Sau khi quay soá ta xeùt traïng thaùi nhaác maùy cuûa maùy bò goïi, neáu coù nhaác thì xuaát tín hieäu ñoùng relay 2 noái maïch phaùt tieáng noùi baùo ñoäng 40s, ngöôïc laïi thì laäp traïng thaùi gaùc maùy sau ñoù goïi laïi. Neáu goïi 3 laàn maø vaãn baän thì chuyeån sang maùy khaùc. F. Chöông trình xeùt dialtone: Tín hieäu môøi quay soá do toång ñaøi caáp coù taàn soá 425hz. Khi MT8880 hoaït ñoäng ôû CP mode thì tín hieäu ñaàu ra ôû chaân IRQ/CP laø tín hieäu traïng thaùi ñöôøng daây nhöng ñaõ qua maïch trigger ñeå söûa daïng xung thaønh xung vuoâng. Sau khi qua maïch monostable vôùi khoaûng ñònh thôøi 4ms thì soá xung ñeám ñöôïc trong khoang thôøi gian 6s cuûa tín hieäu dialtone laø 0, ring back tone laø 1 busytone laø 5 xung.vì vaäy ta duøng timer 0 ñeå ñeám soá xung naøy ñeå xaùc ñònh tín hieäu traïng thaùi ñöôøng daây. - Tröôùc tieân khôûi taïo MT8880 ôû cheá ñoä CP mode, timer0 ñeå ñeám xung. - Goïi chöông trình ñelay6s. G.Chöông trình xeùt bò goïi nhaác maùy: Sau khi quay soá xong, treân ñöôøng daây xuaùt hieän 1 trong 3 tín hieäu laø: busytone, ringbacktone, nhaác maùy chöông trình töïc hieän nhöõng coâng vieäc sau: BEGIN - Khôûi ñoäng MT8880 hoaït ñoäng ôû cheá ñoä loïc thoaïi. - Khôûi ñoäng timer0 ñeå ñeám xung. H. Chöông trình quay soá ÑAËT CHEÁ ÑOÄ HOAÏT ÑOÄNG CHO CAÙC TIMER TIMER0: MODE 1 MODE 1 soá thì chöông trình quay Khi toång ñaøi caáp tínTIMER1: hieäu môø i quay soá ñöôïc thöïc thi. - Khôûi ñoäng MT 8880 ôû cheá ñoä CP mode vaø burstmode. - Xaùc ñònh ñòa chæ soá ñieän thoaïi ñaàu tieân. - Naïp soá ñieän thoaï i vaø o thanh ghiNGOAØI phaùt, sau CHO PHEÙP NGAÉT 0 ñoù kieåm tra, neáu thanh ghi phaùt ñaõ phaùt xong (roãng) thì quay soá keá tieáp, neáu chöa roãng thì xeùt laïi. Neáu soá ñieän thoaïi cuoái cuøng laø 0eh thì quay veà chöông trình baùo ñoäng. CAÙC LÖU ÑOÀ GIAÛI THUAÄT COÙ NGAÉT NAÏP SOÁ ÑIEÄN THOAÏI GVHD: NGUYEÃN ÑÌNH PHUÙ BAÙO ÑOÄNG SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang60 GIAÛI THUAÄT CHÖÔNG TRÌNH CHÍNH GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang61 ENTER ÑIAÏ CHÆ RAM CHÖÙA SOÁ ÑIEÄN THOAÏI ÑAÀU TIEÂN BIEÁN ÑEÁM X=0 NO ENTER NHAÄN GIAÙ TRÒ PHÍM YES PHÍM 00? CHOÏN MAÕ COÄT TAÊNG ÑIAÏ CHÆ RAM GHI SOÁ ÑIEÄN THOAÏI VAØO RAM KIEÅM TRA CAÙC HAØNG EXIT YES YES PHÍM 0E? NO PHÍM AÁN NO XAÙC ÑÒNH MAÕ HAØNG GIAÛM MAÕ COÄT HIEÅN THÒ TAÊNG ÑIAÏ CHÆ RAM TAÊNG BIEÁN ÑEÁM X XAÙC ÑÒNH GIAÙ TRÒ PHÍM MAÕ COÄT =0? NO NO YES X>10 LÖU GIAÙ TRÒ PHÍM RAM =RAM-X GIAÛI THUAÄT CHÖÔNG TRÌNH NAÏP SOÁ ÑIEÄN THOAÏI EXIT GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG GIAÛI THUAÄT QUEÙT PHÍM Luaän aùn toát nghieäp trang62 ENTER XAÙC ÑÒNH ÑÒA CHÆ HIEÅN THÒ ÑCHT=RAM-X CHOÏN LED SOÁ 0 LED=0 LÖU ÑÒA CHÆ VAØO ACC ACC=ACC+LED XUAÁT RA PORT HIEÅN THÒ DELAY TAÊNG ÑÒA CHÆ HIEÅN THÒ ( TAÊNG SOÁ LED) LED>X QUEÙT PHÍM PHÍM AÁN? EXIT GVHD: NGUYEÃN ÑÌNH PHUÙ GIAÛI THUAÄT HIEÅN THÒ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang63 ENTER SOÁ MAÙY CAÀN GOÏI:X=2 SOÁ LAÀN GOÏI:Y=3 XUAÁT TÍN HIEÄU DOÙNG RELAY1 TAÏO TÍN HIEÄU NHAÁC MAÙY GIAÛ DELAY 5S KIEÅM TRA TÍN HIEÄU MÔØI QUAY SOÁ NO GAÙC MAÙY THQS QUAY SOÁ KIEÅM TRA TÍN HIEÄU NHAÁC MAÙY CUAÛ MAÙY BÒ GOÏI YES THNM NO GAÙC MAÙY PHAÙT TÍN HIEÄU DOÙNG RELAY2 DELAY 5S GIAÛM SOÁ LAÀN GOÏI DELAY 30S NO Y:=0? GIAÛM SOÁ MAÙY GOÏI NO X:=0? YES GVHD: NGUYEÃN ÑÌNH PHUÙ GIAÛI THUAÄT BAÙOÑOÄNG SVTH: LAÂM VAÊN TRUNG EXIT Luaän aùn toát nghieäp trang64 ENTER KHÔÛI ÑOÄNG MT8880 KHÔÛI TAÏO TIMER0 DELAY 6S SOÁ XUNG>3 COÙ TÍN HIEÄU MÔØI QUAY SOÁ SETB C BUSY TONE CLEAR C EXIT GIAÛI THUAÄT XEÙT DIALTONE GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang65 ENTER ENTERR KHÔÛI ÑOÄNG MT8880 KHÔÛI ÑOÄNG MT8880 RAM= DÒA CHÆ SOÁ ÑIEÄN THOAÏI ÑAÀU TIEÂN BIEÁN ÑEÁM X=10 NAÏP SOÁ ÑIEÄN THOAÏI VAØO ACC SETB TR0 SOÁ 0E? DELAY 6S EXIT CLEAR TR0 NAÏP SOÁ ÑIEÄN THOAÏI VAØO THANH GHI PHAÙT XUNG>3 THANH GHI PHAÙT ROÅNG? DELAY 1S MAÙY BAÄN CLEAR C RAM = RAM+1 SOÁ XUNG>0 X=X-1 GIAÛI THUAÄT QUAY SOÁ ÑIEÄN THOAÏI X=0? MAÙY BÒ GOÏI NHAÙC MAÙY SETB C MAÙY BAÄN CLEAR C EXIT GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG GIAÛI THUAÄT XEÙT MAÙY BÒ GOÏI Luaän aùn toát nghieäp GVHD: NGUYEÃN ÑÌNH PHUÙ trang66 SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang67 MCS-51 MACRO ASSEMBLER TRUNG 01/06/:0 PAGE 1 DOS 7.10 (038-N) MCS-51 MACRO ASSEMBLER, V2.2 OBJECT MODULE PLACED IN TRUNG.OBJ ASSEMBLER INVOKED BY: C:\TRUNG\ASM51.EXE TRUNG.ASM LOC OBJ LINE SOURCE 2000 4004 1 2 4005 3 4000 4002 0030 0040 0050 0000 0000 020030 0003 0003 02011F 0030 0030 758915 4 5 6 7 8 9 10 11 12 13 14 0033 75A881 15 0036 12003B 0039 80FB 16 17 18 003B 003E 0040 0043 0045 0048 0049 004A 004D 004E 0050 0053 0054 0055 0058 0059 005B 005D 005E 0060 0062 902000 7E00 120064 540F B40001 22 F0 B40E03 A3 80EE 1200DA A3 0E BE0AE8 C3 C0E0 E582 9E F582 D0E0 80DA 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 0064 0067 0068 006A 12008A 04 601B 1200D1 43 44 45 46 GVHD: NGUYEÃN ÑÌNH PHUÙ RAM EQU 2000H DAT EQU 4004H ;DIA CHI BO NHO RAM ;DIA CHI THANH GHI PHAT VA THU DATA MT8880 CTR EQU 4005H ;DIA CHI THANH GHI DIEU KHIEN VA TRANG THAI CUA MT8880 HTHI EQU 4000H ;DIA CHI PORT HIEN THI DKHIEN EQU 4002H ;DIA CHI PORT DIEU KHIEN LED EQU 30H TEM1 EQU 40H TEM2 EQU 50H ORG 0000H LJMP MAIN ORG 0003H LJMP BAODONG ORG 0030H MAIN: MOV TMOD,#15H ;DAT CHE DO HOAT DONG CHO TIMER MOV IE,#81H ;CHO PHEP NGAT NGOAI 0 LOOP: LCALL NAPSODT SJMP LOOP ;VONG LAP DOI TIN HIEU NGAT ;CHUONG TRINH NAP SO DIEN THOAI SAU DO HIEN THI RA LED NAPSODT: MOV DPTR,#RAM LOOP1: MOV R6,#00H LOOP2: LCALL QUETPHIM ANL A,#0FH CJNE A,#00H,LOOP3 RET LOOP3: MOVX @DPTR,A CJNE A,#0EH,LOOP4 INC DPTR SJMP LOOP1 LOOP4: LCALL HIENTHI INC DPTR INC R6 CJNE R6,#0AH,LOOP2 CLR C PUSH ACC MOV A,DPL SUBB A,R6 MOV DPL,A POP ACC SJMP LOOP1 ;CHUONG TRINH NHAN GIA TRI PHIM SO DIEN THOAI DUOC NAP TU BAN PHIM ;MA PHIM CHUA TRONG THANH GHI A VA NEU KHONG CO NHAN PHIM THI A=FFH QUETPHIM: LCALL KEY47 INC A JZ X1 X3: LCALL DELAY SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp 006D 0070 0071 0072 0074 0077 0078 007A 007C 007E 007F 0082 0083 0084 0085 0087 008A 008C 008E 0090 0092 0094 0096 0098 009A 009C 009E 00A0 00A2 00A4 00A6 00A8 00AA 00AC 00AE 00B0 00B2 00B4 00B6 00B8 00BA 00BC 00BE 00C0 00C2 00C4 00C5 12008A F8 04 6011 902500 E0 F5F0 55F0 70EC 14 902500 F0 E8 22 78FF 02007F 7900 7800 74FE F590 E590 55F0 64F0 702C 7804 74FD F590 E590 55F0 64F0 701E 7808 74FC F590 E590 54F0 65F0 7010 780C 74F7 F590 E590 55F0 64F0 7002 14 22 00C6 00C7 00C8 00CA 00CB 00CE 00CF 00D0 00D1 00D3 00D5 00D7 C4 13 4004 09 0200C7 E9 48 22 AE30 7FFF DFFE DEFA trang68 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 GVHD: NGUYEÃN ÑÌNH PHUÙ X2: X1: KEY47: ;XULY MA PHIM Y1: Y11: Y2: DELAY: DE2: DE1: LCALL KEY47 MOV R0,A INC A JZ X1 MOV DPTR,#2500H MOVX A,@DPTR MOV B,A ANL A,B JNZ X3 DEC A MOV DPTR,#2500H MOVX @DPTR,A MOV A,R0 RET MOV R0,#0FFH LJMP X2 MOV R1,#00H MOV R0,#00H MOV A,#0FEH MOV P1,A MOV A,P1 ANL A,0F0H XRL A,#0F0H JNZ Y1 MOV R0,#04H MOV A,#0FDH MOV P1,A MOV A,P1 ANL A,0F0H XRL A,#0F0H JNZ Y1 MOV R0,#08H MOV A,#0FCH MOV P1,A MOV A,P1 ANL A,#0F0H XRL A,0F0H JNZ Y1 MOV R0,#0CH MOV A,#0F7H MOV P1,A MOV A,P1 ANL A,0F0H XRL A,#0F0H JNZ Y1 DEC A RET SWAP A RRC A JC Y2 INC R1 LJMP Y11 MOV A,R1 ORL A,R0 RET MOV R6,30H MOV R7,#0FFH DJNZ R7,DE1 DJNZ R6,DE2 SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang69 00D9 22 108 109 00DA 00DC 00DE 00E0 00E1 00E2 00E4 00E7 00EA 00ED 00EE 00F0 00F3 00F5 00F6 00F8 00FB 00FC 00FF 0102 0105 0107 010A 010C 010E 0111 0114 0115 0116 0118 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 C083 C082 E582 C3 9E F582 753000 858340 858250 E0 540F B40A02 7400 C4 2530 904000 F0 12011A 854083 855082 E530 B40A0B D082 D083 120064 B4FFC6 22 A3 0530 80CD 011A 7D0F 011C DDFE 011E 22 146 147 011F 0122 0124 0126 0128 012A 012C 012F 0131 0132 0135 0137 013A 013D 013F 0142 0144 902000 AB83 AC82 7802 7903 7D00 904002 7400 F0 1201E9 80F1 12017B 1201AA 400E 904002 7400 F0 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 GVHD: NGUYEÃN ÑÌNH PHUÙ RET ;CHUONG TRINH HIEN THI SO DIEN THOAI TA SU DUNG PHUONG PHAP QUET TUNG LED HIENTHI: PUSH DPH PUSH DPL MOV A,DPL CLR C SUBB A,R6 MOV DPL,A MOV LED,#00H HT: MOV TEM1,DPH MOV TEM2,DPL MOVX A,@DPTR ANL A,#0FH CJNE A,#0AH,HT1 MOV A,#00H HT1: SWAP A ADD A,LED MOV DPTR,#HTHI MOVX @DPTR,A LCALL DELAY1 MOV DPH,TEM1 MOV DPL,TEM2 MOV A,LED CJNE A,#0AH,HT2 POP DPL POP DPH LCALL QUETPHIM CJNE A,#0FFH,HIENTHI RET HT2: INC DPTR INC LED SJMP HT DELAY1: HT3: MOV R5,#0FH DJNZ R5,HT3 RET ;CHUONG TRINH BAO DONG THUC HIEN KHI CO TIN HIEU BAO DONG ;XUAT TIN HIEU DONG RELAY TAO TIN HIEU TAI GIA NHAC MAY ;XET TRANG THAI DUONG DAY VA BAO DEN 2 SO DIEN THOAI BAODONG: MOV DPTR,#RAM MOV R3,DPH MOV R4,DPL MOV R0,#02H BD1: MOV R1,#03H MOV R5,#00H BD2: MOV DPTR,#DKHIEN MOV A,#00H MOVX @DPTR,A LCALL DELAY5S SJMP BD1 BD3: CALL QUAYSO LCALL LOOPLINE JC SOUND MOV DPTR,#DKHIEN MOV A,#00H MOVX @DPTR,A SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp 0145 0148 014A 014C 014D 0150 0152 0153 0156 0158 015B 015C 015E 015F 0161 0164 0166 0167 0169 016C 016E 0170 0173 0174 0177 017A 017B 017C 017D 017E 017F 0182 0184 0185 0187 0189 018A 018B 018C 018E 0190 0192 0195 0196 0199 019A 019D 019E 01A0 01A3 01A5 01A8 1201E9 D9E2 D8DC 32 904002 7403 F0 120201 7401 904002 F0 7400 F0 80EB 904005 7402 F0 D28C 1201F5 C28C E58A B40301 C3 758A00 758C00 22 FC C3 9D FC 904005 740B F0 8B83 8C82 E0 A3 0D AB83 AC82 540F B50F01 22 904004 F0 904005 E0 5402 B40202 80E0 1201D1 80F0 trang70 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 EXIT: SOUND: CALL DELAY5S DJNZ R1,BD2 DJNZ R0,BD1 RETI MOV DPTR,#DKHIEN MOV A,#03H MOVX @DPTR,A LCALL DELAY30S MOV A,#01H MOV DPTR,#DKHIEN MOVX @DPTR,A MOV A,#00H MOVX @DPTR,A SJMP EXIT ;CHUONG TRINH XET DIALTONE DUNG DE XET TIN HIEU MOI QUAY SO DIALTONE: MOV DPTR,#CTR MOV A,#02H MOVX @DPTR,A SETB TR0 LCALL DELAY6S CLR TR0 MOV A,TL0 CJNE A,#03H,THOAT CLR C THOAT: MOV TL0,#00H MOV TH0,#00H RET ;CHUONG TRINH QUAY SO DIEN THOAI SU DUNG IC MT8880 195 QUAYSO: MOV R4,A 196 CLR C 197 SUBB A,R5 198 MOV R4,A 199 MOV DPTR,#CTR 200 MOV A,#00001011B 201 MOVX @DPTR,A 202 TIEP: MOV DPH,R3 203 MOV DPL,R4 204 MOVX A,@DPTR 205 INC DPTR 206 INC R5 207 MOV R3,DPH 208 MOV R4,DPL 209 ANL A,#0FH 210 CJNE A,0FH,TIEP1 211 RET 212 TIEP1: MOV DPTR,#DAT 213 MOVX @DPTR,A 214 TIEP2: MOV DPTR,#CTR 215 MOVX A,@DPTR 216 ANL A,#02H 217 CJNE A,#02H,TIEP3 218 SJMP TIEP 219 TIEP3: CALL DELAY1S 220 SJMP TIEP2 221 222 ;CHUONG TRINH LOOPLINE CHUONG TRINH XET TIN HIEU NHAC MAY CUA MAY BI GOI GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang71 01AA 01AD 01AF 01B0 904005 7402 F0 7E0A 223 224 225 226 LOOPLINE: MOV DPTR,#CTR MOV A,#02H MOVX @DPTR,A MOV R6,#0AH 01B2 01B4 01B7 01B9 01BB 01BE 01C1 01C4 01C5 01C7 01C8 01CB 01CC 01CD 01CF 01D0 D28C 1201F5 C28C E58A 758A00 758C00 B40301 C3 4001 22 B40002 D3 22 DEE3 C3 22 LABEL1: SETB TR0 LCALL DELAY6S CLR TR0 MOV A,TL0 MOV TL0,#00H MOV TH0,#00H CJNE A,#03H,LABEL2 CLR C JC LABEL3 RET CJNE A,#00H,LABEL4 SETB C RET DJNZ R6,LABEL1 CLR C RET 01D1 01D3 01D5 01D8 01DB 01DD 01E0 01E2 01E4 01E6 01E8 01E9 01EB 01ED 01F0 01F2 01F4 01F5 01F7 01F9 01FC 01FE 0200 C000 A864 758DD8 758BEF D28E 308FFD C28F C28E D8EF D000 22 C001 7905 1201D1 D9FB D001 22 C002 7A06 1201D1 DAFB D002 22 0201 0203 0205 0207 0209 020B C003 7B05 31F5 DBFC D003 22 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 GVHD: NGUYEÃN ÑÌNH PHUÙ LABEL2: LABEL3: LABEL4: ;CHUONG TRINH DELAY DELAY1S: PUSH 00H MOV R0,64H TRUNG: MOV TH1,#0D8H MOV TL1,#0EFH SETB TR1 TRUNG1: JNB TF1,TRUNG1 CLR TF1 CLR TR1 DJNZ R0,TRUNG POP 00H RET DELAY5S: PUSH 01H MOV R1,#05H TRUNG2: LCALL DELAY1S DJNZ R1,TRUNG2 POP 01H RET DELAY6S: PUSH 02H MOV R2,#06H TRUNG3: LCALL DELAY1S DJNZ R2,TRUNG3 POP 02H RET DELAY30S: TRUNG4: PUSH 03H MOV R3,#05H CALL DELAY6S DJNZ R3,TRUNG4 POP 03H RET END SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang72 PHAÀN PHUÏ LUÏC I. BOÄ NHÔÙ EPROM 8K 2764 Boä nhôù EPROM duøng ñeå nhôù chöông trình -A0 - A12 laø caùc ñöôøng ñòa chæ. -D0 - D7 laø caùc ñöôøng döõ lieäu. -CE\ laø chaân choïn chíp. -OE\ laø chaân cho pheùp xuaát caùc byte maõ leänh ñöôïc noái ñeán chaân psen\ cuûa VXL. -PGM\ chaân naïp chöông trình. II. BOÄ NHÔÙ SRAM 6264 (8KB) Boä nhôù SRAM duøng ñeå chöùa data vaø caùc noäi dung khaùc GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang73 -A0 - A12 laø caùc ñöôøng ñòa chæ. -D0 -D12 laø caùc ñöôøng data. -E1 laø chaân choïn chíp. -W\ laø chaân write. III. MAÏCH CHOÁT ÑÒA CHÆ DUØNG 74373: -D0 - D7 laø data vaøo. -Q0 - Q7 laø ñòa chæ ñöôïc choát. -ENC laø chaân cho pheùp choát ñöôïc noái vôùi chaân ALE. MAÏCH CHOÁT DATA DUØNG 74373: Ñeå xuaát data ra led vaø caùc tín hieäu ñieàu khieån ta duøng IC74373 ñeå choát data ra. D. TAÄP LEÄNH CUÛA µC8051/8031: Taäp leänh cuûa µC8051/8031 goàm coù 225 leänh goàm 139 leänh moät byte, 92 leänh byte vaø 24 leänh 3 byte. I. CAÙC CHEÁ ÑOÄ ÑAÙNH ÑÒA CHÆ: Trong taäp leänh coù 8 cheá ñoä ñaùnh ñòa chæ: 1. Ñòa chæ thanh ghi (Register Addressing): µC 8051/8031coù boán bank thanh ghi, moãi bank thanh ghi coù 8 thanh ghi ñaùnh töø R0 ñeán R7. Taïi moãi thôøi ñieåm chæ coù moät bank thanh ghi ñöôïc tích cöïc. Muoán choïn bank thanh ghi naøo ta chæ caàn gaùn caùc bit nhò phaân thích hôïp vaøo RSI(PSW.4) vaø PRO(PSW.3) trong thanh ghi traïng thaùi chöông trình (PSW). GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang74 Ngoaøi ra, moät thanh ghi coù chöùc naêng ñaëc bieät nhö 8 thanh ghi tích luõy, con troû döõ lieäu,…… cuõng ñöôïc xaùc ñònh trong caùc leänh neân khoâng caàn caùc bit ñòa chæ. Trong caùc leänh naøy thanh ghi tích luõy ñöôïc kyù hieäu laø”A”, con troû döõ lieäu laø ”DTPR”, thanh ghi ñeám chöông trình “PC”, côø nhôù laø”C”, caëp thanh ghi tích luõy laø”A, B”. Maõ leänh n n n Ñòa chæ thanh ghi. 2. Ñòa chæ tröïc tieáp (Direct Addressing): Trong cheá ñoä naøy, caùc thanh ghi beân trong µC8051/8031 ñöôïc ñaùnh ñòa chæ tröïc tieáp baèng 8 bit ñòa chæ naèm trong byte thöù hai cuûa maõ leänh. Maõ leänh Ñòa chæ tröïc tieáp Ñòa chæ tröïc tieáp Duø vaäy trình töï hôïp dòch cho pheùp goïi teân caùc thanh ghi coù chöùc naêng ñaëc bieät (coù ñòa chæ tröïc tieáp töø 80H ñeán FFH). Ví duï, Port cho Port 0, TMOD cho thanh ghi cheá ñoä Timer,… 3. Ñòa chæ giaùn tieáp (Indirect Addressing): RO vaø RI ñöôïc duøng ñeå chæ ñòa chæ oâ nhôù maø taùc ñoäng ñeán. Ngöôøi ta qui öôùc duøng daáu @ tröôùc RO vaø RI Maõ leänh i Ñòa chæ giaùn tieáp 4. Ñòa chæ töùc thôøi: Ngöôøi ta duøng daáu # tröôùc toaùn haïng töùc thôøi. Caùc toaùn haïng ñoù coù theå laø moät haèng soá, moät kyù soá hay moät bieåu thöùc toaùn hoïc… Trình hôïp dòch seõ töï ñoäng tính toaùn vaø thay theá döõ lieäu tröïc tieáp vaøo maõ leänh. Maõ leänh Döõ lieäu töùc thôøi Ñòa chæ töùc thôøi 5. Ñòa chæ töông ñoái (Relative Addessing): GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang75 Ñòa chæ töông ñoái ñöôïc duøng trong caùc leänh nhaûy. µC8031/8051 duøng giaù trò 8 bit coù daáu ñeå coäng thanh ñeám chöông trình (PC). Taàm nhaûy cuûa leänh naøy trong khoaûng töø –128 ñeán 127 oâ nhôù. Tröôùc khi coäng, thanh ghi PC seõ taêng ñeán ñòa chæ cuûa leänh nhaûy roài tính toaùn ñòa chæ offset caàn thieát ñeå nhaûy ñeán ñòa chæ yeâu caàu. Nhö vaäy ñòa chæ môùi laø ñòa chæ töông ñoái so vôùi leänh keá chöù khoâng phaûi leänh nhaûy. Thöôøng leänh naøy coù lieân quan ñeán nhaõn ñöôïc ñònh nghóa tröôùc. Maõ leänh offset töông ñoái Ñòa chæ töông ñoái 6. Ñòa chæ tuyeät ñoái (Absolute Addessing): Ñòa chæ tuyeät ñoái duøng trong caùc leänh ACALL vaø AJMP. Caùc leänh 2 Byte duøng ñeå reõ nhaùnh vaøo moät trang 2 Kbyte cuûa boä nhôù chöông trình baèng caùch caáp 11 bit ñòa chæ thaáp (A0..A10) ñeå xaùc ñònh ñòa chæ ñích trong trang maõ. Coøn 5 bit cao cuûa ñòa chæ ñích (A11..A15) chính laø 5 bit cao hieän haønh trong thanh ghi ñeám chöông trình. Vì vaäy, ñòa chæ cuûa leänh theo sauleänh reõ nhaùnh vaø ñòa chæ ñích cuûa leänh reõ nhaùnh caàn phaûi cuøng trang maõ 2KByte (coù cuøng 5 bit ñòa chæ cao). A10 A0 A11 Xaùc ñònh ñòa chæ töông Xaùc ñoái ñònh trong trang maõmaõ Ñòa chæ tuyeät ñoái 7. Ñòa chæ daøi (Long Addressing): Ñòa chæ daøi duøng cho leänh LCALL vaø LJMP. Caùc leänh naøy chieám 3 byte vaø duøng 2 byte sau (byte 2 vaø byte 3) ñeå xaùc ñònh ñòa chæ ñích cuûa leänh (6bit). Öu ñieåm cuûa leänh naøylaø coù theå söû duïng trong toaøn vuøng nhôù 64KB. Tuy nhieân, leänh naøy chieám nhieàu byte vaø phuï thuoäc vaøo vò trí oâ nhôù. Maõ leänh A15-A8 A7-A0 Ñòa chæ daøi 8. Ñòa chæ tham chieám: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG A15 Luaän aùn toát nghieäp trang76 Ñòa chæ tham chieáu duøng moät thanh ghi cô baûn (hoaëc thanh ghi ñeám chöông trình PC hoaëc thanh ghi con troû döõ lieäu DPTR) vaø ñòa chæ offset (trong thanh ghi tích luõy A) ñeå taïo ñòa chæ ñöôïc taùc ñoäng cho caùc leänh JMP hoaëc MOVC. Caùc baûng nhaûy vaø baûng tìm kieám deã daøng ñöôïc taïo ra ñeå söû duïng ñòa chæ tham chieáu. Ñòa chæ cô baûn PC hoaëc DPTR Offset + ACC Ñòa chæ ñöôïc taùc ñoäng = Ñòa chæ tham chieáu II. KHAÛO SAÙT TAÄP LEÄNH 8051: 1. Caùc nhoùm leänh: Leänh coù theå chia thaønh nhieàu nhoùm theo nhieàu caùch. Cusman ñeà nghò theo 4 caùch sau: Nhoùm leänh xöû lyù döõ lieäu: taùc ñoäng leân döõ lieäu theo nhieàu caùch bao goàm: ♦ Leänh soá hoïc. ♦ Leänh luaän lyù. ♦ Leänh so saùnh. ♦ Leänh dòch. ♦ Leänh ñaëc bieät. Nhoùm leänh truyeàn döõ lieäu: di chuyeån töø nôi naøy sang nôi khaùc trong maïch thieát keá maø khoâng laøm thay ñoåi döõ lieäu nhö sau: ♦ Leänh truyeàn boä nhôù. ♦ Leänh xuaát nhaäp. ♦ Leänh ngaên xeáp. Nhoùm leänh kieåm soaùt chöông trình: chuyeån ñieàu khieån töø nôi naøy sang nôi khaùc ñeå ñaït ñeán leänh mong muoán: ♦ Leänh nhaûy khoâng ñieàu kieän. ♦ Leänh nhaûy coù ñieàu kieän. ♦ Leänh goïi chöông trình con. ♦ Leänh döøng vaø khoâng hoaït ñoäng. Nhoùm leänh kieåm soaùt traïng thaùi: nhaèm thay ñoåi tình traïng cuûa maïch thieát keá maø khoâng aûnh höôûng ñeán döõ lieäu hay thöù töï thöïc hieän leänh. 2. Caùc leänh soá hoïc: GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang77 a. Leänh coäng: ADD A,7FH ( ñònh vò tröïc tieáp) ADD A,@RO ( ñònh vò giaùn tieáp) ADD A,R7 b. Leänh nhaân: MUL A,B Seõ nhaân caùc giaù trò khoâng daáu 8 bit ôû thanh ghi A vaø thanh ghi B keát quaû laø 16 bit ñem caùc vaøo phaàn 8 bit thanh ghi Avaø phaàn cao 8 bit ghi thanh B. c. Leänh chia: DIV A,B Seõ ñem giaù trò ôû thanh ghi A chia cho giaù trò ôû thanh ghi bit, keát quaû ñöôïc caát ôû thanh ghi A,vaø phaàn dö seõ caát ôû thanh ghi B. d. Caùc leänh luaän lyù: AND A,55H (ñònh vò tröïc tieáp) AND A,@RO (ñònh vò giaùn tieáp) AND A,R6 (ñònh vò thanh ghi) AND A,#33H (ñònh vò töùc thôøi) Ngoaøi ra coøn goàm caùc leänh luaän lyù töông töï nhö: OR, XOR, NOT. Taát caû caùc leänh naøy ñeàu ñöôïc thöïc hieän treân caùc byte döõ lieäu cô sôû vaø caùc bit cuûa töøng byte. e. Nhoùm leänh truyeàn döõ lieäu: Truyeàn beân trong boä nhôù: Daïng leänh: MOV < ñích > , < nguoàn > Leänh naøy cho pheùp di chuyeån döõ lieäu giöõa hai vò trí beân trong boä nhôù hay thanh ghi chöùc naêng ñaëc bieät maø khoâng caàn thoâng qua thanh ghi löu tröõ. Daïng leänh trao ñoåi döõ lieäu cho nhau: XCH A,< nguoàn > Leänh naøy baét thanh ghi A vaø byte ñòa chæ trao ñoåi döõ lieäu cho nhau. Truyeàn boä nhôù ngoaøi: Caùc leänh luaän lyù xöû lyù treân bit: Leänh SETB P1.7 ( laäp möùc logic1 ôû bit 7 coång 1) GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang78 Leänh CLR P1.7 ( laäp möùc logic 0 ôû bit 7 coång 1) Leänh di chuyeån döõ lieäu moät thanh ghi côø ñeán coång. MOV C, FLAG MOV P1.0,C Nhoùm leänh reõ nhaùnh chöông trình: Leänh nhaûy khoâng ñieàu kieän.Leänh RETI trôû veà töø chuông trình phuïc vuï ngaét. KEÁT LUAÄN 1. Töï Ñaùnh Giaù Keát Quaû: Sau baûy tuaàn thöïc hieän ñeà taøi, vôùi söï höôùng daãn taän tình cuûa giaùo vieân höôùng daãn vaø ñoùng goùp taän tình cuûa Caùc Thaày Coâ Trong Khoa Ñieän Ñieän Töû Tröôøng Ñaïi Hoïc Sö Phaïm Kyõ Thuaät coäng vôùi söï noã löïc cuûa baûn thaân trong vieäc tìm hieåu taøi lieäu lieân quan. Taäp luaän aùn ñaõ keá thöøa moät khía caïnh öùng duïng môùi trong heä thoáng vi xöû lyù, ñoù laø söû duïng vi ñieàu khieån 8031 trong maïch baùo chaùy. Tuy chöa phaùt huy ñöôïc caùc tính naêng öu vieät cuûa vi ñieàu khieån 8031 nhöng cuõng phaàn naøo öùng duïng vaø giaûi quyeát ñöôïc coâng vieäc thöïc tieãn. Phaàn noäi dung cuûa taäp luaän aùn bao goàm 3 phaàn: Phaàn 1: phaàn giôùi thieäu chung Phaàn naøy nhöõng vaán ñeà lyù thuyeát cuûa luaän aùn bao goàm: giôùi thieäu caáu truùc cuûa vi ñieàu khieån 8031, khaûo saùt IC thu phaùt tone MT8880, giôùi thieäu caùc aâm hieäu cuûa toång ñaøi. Phaàn 2: phaàn thieát keá phaàn cöùng Phaàn naøy tính toaùn caùc maïch caûm bieán caùc maïch giao tieáp giöõa vi xöû lyù vôùi ñieän thoaïi. Caùc keát noái boä nhôù vaø hieån thò vv… Phaàn 3: phaàn thieát keá chöông trình. Phaàn naøy neâu leân phaàn yeâu caàu, giaûi thuaät vaø chöông trình. 2. Khaû Naêng Phaùt Trieån Cuûa Ñeà Taøi: Vôùi söï phaùt trieån khoâng ngöøng cuûa khoa hoïc kyõ thuaät noùi chung vaø lónh vöïc ñieän töû noùi rieâng, ñeà taøi naøy coù theå phaùt trieån hoaøn thieän hôn ñeå ñaït ñöôïc keát quaû toát hôn, tính naêng söû duïng roäng raõi hôn. Nhö coù theå môû roäng theâm phaàn cöùng ñeå GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang79 ñieàu khieån caùc thieát bò, coù theå thay ñoåi chöông trình ñeå öùng duïng trong maïch tính cöôùc phí ñieän thoaïi,v.v… vaø ñaây cuõng laø höôùng phaùt trieån ñeà taøi cho caùc khoùa sau. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang80 3.Nhöõng Haïn Cheá: Tuy coù söï giuùp ñôõ taän tình cuûa quyù thaày coâ vaø caùc baïn, cuøng vôùi söï noã löïc baûn thaân. Nhöng kieán thöùc veà lónh vöïc vieãn thoâng coù haïn, hôn nöõa vieäc tieáp caän heä thoáng vi ñieàu khieån coøn quaù môùi meû neân taäp luaän aùn khoâng traùnh khoûi nhöõng sai soùt. Raát mong doùn nhaän nhöõng yù kieán ñoùng goùp cuûa quyùn thaày coâ cuøng caùc baïn, ñeå ñeà taøi phaùt trieån ngaøy caøng hoaøn thieän hôn. GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG Luaän aùn toát nghieäp trang81 TAØI LIEÄU THAM KHAÛO 1. DÖÔNG MINH TRÍ Sô Ñoà Linh Kieän Baùn Daãn _ Sôû Giaùo Duïc Vaø Ñaøo Taïo Tp Hoà Chí Minh 2. HOAØNG LEÂ TUAÁN Nhaäp Moân Vi Xöû Lyù_ ÑHBK Tp Hoà Chí Minh 3. Höôùng Daãn Söû Duïng Kit Vi Xöû Lyù 8085 Cuûa Thaày Nguyeãn Ñình Phuù. 4. I. SCOTTMACKENZIE The8051 Microcontroler_ University of Guelph GVHD: NGUYEÃN ÑÌNH PHUÙ SVTH: LAÂM VAÊN TRUNG [...]... GHI ĐIỀU KHIỂN TIMER (TCON) Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển cho timer0 và timer1 Bit TCON 7 Ký hiệu TF1 Đòa chỉ 8FH TCON 6 TCON 5 TCON 4 TCON 3 TR1 8EH TF0 8DH Mô tả Cờ báo tràn timer Đặt bởi phần cứng khi tràn, được xóa bởi phần mềm hoặc phần cứng khi bộ xử lí chỉ đến chương trình phục vụ ngắt Bit điều khiển timer1 chạy Đặt/ xóa bằng timer để cho phần mềm chạy/ ngưng Cờ báo. .. thanh ghi điều khiển thu /phát và thanh ghi trạng thái Có hai thanh ghi dữ liệu: thanh ghi Receive data chứa mã xuất ra của cặp tone DTMF hợp lệ gần nhất và là thanh ghi chỉ đọc Data đưa vào thanh ghi Transmith Data sẽ qui đònh cặp tone nào được phát đi, Data chỉ có thể được vào thanh ghi này Điều khiển thu phát tone được đảm nhận bởi 2 thanh ghi Control Register A và Control Register B (CRA và CRB)... việc điều khiển các timer trong chương trình Ví dụ, cho timer 0 chạy bằng lệnh: SETB TR0 0: lên Và dừng bằng lệnh: CLR TRO 1: xuống Trình biên dòch sẽ thực hiện việc chuyển đổi ký hiệu cần thiết từ “TR0” sang đòa chỉ bit đúng SETB TR0 chính xác giống như SETB 8CH Một phương pháp khác để điều khiển các timer là dùng bit GATE trong TMOD và ngõ vào bên ngoài INTx Đặt GATE =1 cho phép timer sẽ được điều khiển. .. các cờ thu và cờ phát Port nối tiếp (TI và RI) Vấn đề trong phương pháp này là thời gian thực thi có gía trò của CPU hoàn toàn không bò tiêu tốn trong việc đợi các cờ Điều này hoàn toàn không thích hợp với các ứng dụng của vi điều khiển, trong đó bộ vi điều khiển phải tương tác với nhiều thiết bò xuất nhập đồng thời Trong phần này ta sẽ khảo sát cách phát triển chương trình dùng vi điều khiển Khung... phát hện sự chuyển tiếp Do đó, mất 2 chu kỳ máy (2µs) để ghi nhận sự chuyển 1 sang 0, tần số ngoài tối đa là 500KHz (giả sử hoạt động ở 12 MHz) 3 Bắt đầu, dừng và điều khiển các Timer: GVHD: NGUYỄN ĐÌNH PHÚ SVTH: LÂM VĂN TRUNG Luận án tốt nghiệp trang20 Phương pháp đơn giản nhất để bắt đầu (cho chạy) và dừng các timer là dùng các bit điều khiển chạy: TRx trong TCON TRx bò xóa sau khi Reset hệ thống. .. của port 3 (P3.4) dùng làm ngõ vào tạo xung nhòp bên ngoài cho timer 0 và được gọi là “T0” Và P3.5 hay “T1” là ngõ vào tạo xung nhòp cho timer 1 Trong các ứng dụng bộ đếm, các thanh ghi Timer được tăng thêm 1 tương ứng với chuyển từ 1 xuống 0 ở ngõ vào bên ngoài: Tx, ngõ vào bên ngoài được lấy mẫu trong S5P2 của mọi chu kỳ máy Như vậy, khi ngõ vào cao trong một chu kỳ và thấp trong một chu kỳ kế thì... TL1/TH1 vào các thanh ghi R6/R7: AGAIN: MOV A,TH1 MOV R6, TL1 CJNE R7, A C HOẠT ĐỘNG CỦA BỘ NGẮT (INTERRUPT): I GIỚI THIỆU: Một interrupt (ngắt) là sự xảy ra một điều kiện – một sự kiện, mà nó gây treo tạm thời chương trình trong điều kiện có được phục vụ bởi một chương trình khác Các interrupt đóng vai trò quan trọng trong việc thiết kế và cài đặt các ứng dụng vi điều khiển Chúng cho phép hệ thống bất... là đòa chỉ và dữ liệu do đó phải tách đường đòa chỉ và dữ liệu Tín hiệu ra ALE ở chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp các đường đòa chỉ và dữ liệu khi kết nối với IC chốt Tín hiệu ra ở ALE là một xung trong khoảng thời gian port 0 đóng vai trò là đòa chỉ thấp nên nên chốt đòa chỉ hoàn toàn tự động Các xung tín hiệu ALE có tốc độ bằng 1/6 tần số dao động trên vi điều kkiển và có thể... ra và CPU chấp thuận, chương trình chính ngắt quãng những hoạt động sau đây xảy ra: + Lệnh hiện hành hoàn tất việc thực thi + Cất PC vào ngăn xếp + Trạng thái ngắt hiện hành được cất vào bên trong + Các ngắt bò chặn ở mức ngắt + Nạp vào PC đòa chỉ vector của ISR + ISR thực thi ISR thực thi và đáp ứng ngắt ISR hoàn tất bằng lệnh RETI (quay về từ ngắt) Điều này làm lấy lại giá trò cũ PC từ ngăn xếp và. .. tạo xung nhòp và dễ cho chạy, dừng và điều khiển timer GVHD: NGUYỄN ĐÌNH PHÚ SVTH: LÂM VĂN TRUNG INT1 Luận án tốt nghiệp trang21 4 Khởi động và truy xuất các thanh ghi: Thông thường các thanh ghi được khởi động một lần ở đầu chương trình để đặt chế độ làm việc đúng Sau đó, trong thân chương trình, các timer được cho chạy, dừng, các bit cờ được kiểm tra và xóa, các thanh ghi timer được đọc và cập nhật