Đồ án tốt nghiệp CNTT Thiết kế mạch của máy tính cước điện thoại

92 581 0
Đồ án tốt nghiệp CNTT Thiết kế mạch của máy tính cước điện thoại

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Các số liệu ban đầu: Thiết kế mạch “ TÍNH CƯỚC ĐIỆN THOẠI “ dùng vi điều khiển 8951. Thiết kế mạch “ TÍNH CƯỚC ĐIỆN THOẠI “ dùng phương pháp đảo cực .Với đề tài máy tính cước điện thoại này, điện thoại được đặt ở các dịch vụ thuê bao công cộng, nhiệm vụ chủ yếu là tính toán chính xác thời gian đàm thoại và đổi ra số tiền ứng với thời gian đã gọi, ngoài ra còn có thể hoạt động như đồng hồ chỉ thị thời gian. Từ mục đích này nên máy tính cước phải đạt những yêu cầu sau: Thể hiện đúng số quay ở hai chế độ Pulse và Tone. Thời gian đàm thoại kể từ khi thông thoại đối với máy có đăng ký đảo cực tại tổng đài một cách chính xác .

ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG BOÄ COÂNG THÖÔNG TRÖÔØNG CAO ÑAÚNG KYÕ THUAÄT CAO THAÉNG KHOA ÑIEÄN TÖÛ - TIN HOÏC NHIEÄM VUÏ ÑOÀ AÙN TEÂN ÑEÀ TAØI: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI Giaùo vieân höôùng daãn: TRÖÔNG QUANG TRUNG Sinh vieân thöïc hieän : MAI VAÊN MAÕI ÑOAØN THAÙI PHA Lôùp: CÑ ÑTVT06B Caùc soá lieäu ban ñaàu: - Thieát keá maïch “ TÍNH CÖÔÙC ÑIEÄN THOAÏI “ duøng vi ñieàu khieån 8951. - Thieát keá maïch “ TÍNH CÖÔÙC ÑIEÄN THOAÏI “ duøng phöông phaùp ñaûo cöïc .Vôùi ñeà taøi maùy tính cöôùc ñieän thoaïi naøy, ñieän thoaïi ñöôïc ñaët ôû caùc dòch vuï thueâ bao coâng coäng, nhieäm vuï chuû yeáu laø tính toaùn chính xaùc thôøi gian ñaøm thoaïi vaø ñoåi ra soá tieàn öùng vôùi thôøi gian ñaõ goïi, ngoaøi ra coøn coù theå hoaït ñoäng nhö ñoàng hoà chæ thò thôøi gian. Töø muïc ñích naøy neân maùy tính cöôùc phaûi ñaït nhöõng yeâu caàu sau: - Theå hieän ñuùng soá quay ôû hai cheá ñoä Pulse vaø Tone. - Thôøi gian ñaøm thoaïi keå töø khi thoâng thoaïi ñoái vôùi máy coù ñaêng kyù ñaûo cöïc taïi toång ñaøi moät caùch chính xaùc . - Löu tröõ taïm thôøi taát caû caùc thoâng soá cuûa cuoäc goïi nhö: soá quay soá, giaù tieàn cuûa moãi cuoäc goïi vaø thôøi gian goïi. Noäi dung caùc phaàn thuyeát trình tính toaùn: - Giôùi thieäu veà caùc kieán thöùc lieân quan ñeán ñeà taøi. - Giôùi thieäu sô löôïc veà Toång Ñaøi ,nguyeân lyù tính cöôùc ñieän thoaïi baèng phöông phaùp ñaûo cöïc . - Giôùi thieäu veà nguyeân lyù hoaït ñoäng cuûa maïch tính cöôùc . - Neâu roõ chöùc naêng nguyeân lyù hoaït ñoäng cuûa töøng khoái trong maïch tính cöôùc vaø caùch tính toaùn thieát keá. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 1  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG BAÛNG NHAÄN XEÙT CUÛA GIAÙO VIEÂN HÖÔÙNG DAÃN Teân ñeà taøi : Maùy Tính Cöôùc Ñieän Thoaïi Giaùo vieân höôùng daãn: TRÖÔNG QUANG TRUNG Sinh vieân thöïc hieän : MAI VAÊN MAÕI ÑOAØN THAÙI PHA Lôùp : CÑÑTVT06B Nhaän xeùt cuûa giaùo vieân höôùng daãn : ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ ................................................................................................................................................ .............................................................................................................................. Ngaøy thaùng naêm 2009 Giaùo vieân höôùng daãn MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 2  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG BAÛNG NHAÄN XEÙT CUÛA GIAÙO VIEÂN PHAÛN BIEÄN Teân ñeà taøi: Maùy Tính Cöôùc Ñieän Thoaïi Giaùo vieân phaûn bieän: LAÏI NGUYEÃN DUY Sinh vieân thöïc hieän : MAI VAÊN MAÕI ÑOAØN THAÙI PHA Lôùp : CÑÑTVT06B Nhaän xeùt cuûa giaùo vieân phaûn bieän : .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. .................................................................................................................................................. ................................................................................................................................. Ngaøy thaùng naêm 2009 Giaùo vieân phaûn bieän MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 3  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG MUÏC LUÏC PHAÀN A: LYÙ THUYEÁT LÔØI NOÙI ÑAÀU DAÃN NHAÄP I. Ñaët vaán ñeà II. Muïc ñích yeâu caàu cuûa ñeà taøi III. Giôùi haïn ñeà taøi CHÖÔNG I : GIÔÙI THIEÄU CHUNG VEÀ MAÏNG ÑIEÄN THOAÏI I. Sô löôïc veà maïng ñieän thoaïi II. Caùc thoâng tin baùo hieäu trong ñieän thoaïi. III. Kyõ thuaät gôûi soá baèng xung löôõng aâm ña taàn (Dual tone multifrequency : DTMF) CHÖÔNG II : NGUYEÂN LYÙ TÍNH CÖÔÙC ÑIEÄN THOAÏI I. Phöông phaùp tính cöôùc. II. Nguyeân taéc tính cöôùc. III. Quay soá vaø giaù cöôùc hieän nay. CHÖÔNG III : KHAÛO SAÙT VI ÑIEÀU KHIEÅN 8951 I. Giôùi thieäu caáu truùc phaàn cöùng hoï MSC-51(8951) II. Sô ñoà chaân 8951 III. Chöùc naêng caùc chaân 8951 IV. Caáu truùc beân trong vi ñieàu khieån V. Boä nhôù ngoaøi (external memory) VI. Hoaït ñoäng timer cuûa 8951 VII. Caùc thanh ghi ñieàu khieån timer VIII. Caùc cheá ñoä timer vaø côø traøn(timer mode and overflow) IX. Hoaït ñoäng port noái tieáp X. Toùm taét taäp leänh cuûa 8951 PHAÀN B : THI COÂNG CHÖÔNG I : SÔ ÑOÀ KHOÁI – NGUYEÂN LYÙ HOAÏT ÑOÄNG I. Sô ñoà khoái. II. Chöùc naêng caùc khoái. III. Giaûi thích sô löôïc nguyeân lyù hoaït ñoäng cuûa maïch MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 6 7 8 8 8 9 10 10 10 13 15 15 15 15 16 16 17 17 20 27 31 33 39 40 48 53 54 54 55 56 Trang 4  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG CHÖÔNG II : THIEÁT KEÁ PHAÀN CÖÙNG I. Khoái xöû lyù trung taâm (CPU) II. Khoái EPROM III. Khoái giaûi maõ ñòa chæ IV. Khoái thu DTMF V. Khoái nhaän bieát Ñaûo Cöïc VI. Khoái taïo xung CK VII. Khoái nguoàn CHÖÔNG III : THIEÁT KEÁ CHÖÔNG TRÌNH VI XÖÛ LYÙ I. Giôùi thieäu veà caùc vuøng ram noäi trong 8051 II. Caùc kyù hieäu söû duïng trong chöông trình III. Löu ñoà giaûi thuaät IV. Chöông trình KEÁT LUAÄN VAØ HÖÔÙNG PHAÙT TRIEÅN PHUÏ LUÏC 59 59 60 60 61 64 66 66 68 68 68 69 72 84 86 Giôùi thieäu veà caùc IC söû duïng trong maïch vaø datasheet Taøi lieäu tham khaûo MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 5  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG PHAÀN A: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 6  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Ngaøy nay kyõ thuaät Ñieän Töû – Vieãn Thoâng ñaõ phaùt trieån moät caùch nhanh choùng taïo ra nhöõng thaønh töïu trong thoâng tin lieân laïc vaø giao tieáp moïi ngöôøi vôùi nhau. Kyõ thuaät truyeàn soá lieäu söû duïng tín hieäu ñieän ñeå truyeàn tin ñaõ ñöôïc phaùt minh töø nhöõng naêm 1840 vôùi söï ra ñôøi cuûa maùy ñieän tín . Ngöôøi ta ñaõ coù theå truyeàn nhöõ ng tín hieäu ñieän ñaõ ñöôïc maõ hoaù (maõ Morse) doïc theo ñöôøng daây ñieän ñeán khoaûng caùch xa.Tuy nhieân cuoäc caùch maïng hoaù trong thoâng tin lieân laïc vaø giao tieáp caù nhaân thaät söï baét ñaàu vôùi vieäc phaùt minh ra maùy ñieän thoaïi cuûa Bell vaøo naêm 1887.Töø ñoù ñeán nay ,kyõ thuaät Vieãn –Thoâng ñaõ lieân tuïc phaùt trieån taïo ra nhöõng thaønh töïu to lôùn hôn maø cuï theå laø taïo ra maïng Internet, caùc dòch vuï ISDN maø ôû ñoù ngöôøi ta coù theå göûi vaên baûn ,hình aûnh ,döõ lieäu …. ñeán khaép nôi treân theá giôùi. Ñoái vôùi nöôùc ta hieän nay maïng vieãn thoâng ñang treân ñaø phaùt trieånmaïnh. Ñieàu naøy ñaõ laøm phaùt sinh nhieàu loaïi hình dòch vuï ñieän thoaïi coângcoäng. Vaø chính ñieàu naøy, ñaõ laøm naûy sinh vaán ñeà laøm caùch naøo ñeå tính giaùcöôùc cuûa moät cuoäc goïi moät caùch chính xaùc vaø nhanh choùng cho ngöôøi goïi. Vì vaán ñeà treân neân em ñaõ choïn ñeà taøi “Maïch Tính Cöôùc Ñieän Thoaïi” laøm ñoà aùn toát nghieäp. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 7  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG DAÃN NHAÄP I. ÑAËT VAÁN ÑEÀ: Vôùi söï phaùt trieån khoâng ngöøng cuûa coâng ngheä thoâng tin lieân laïc, kyõ thuaät vi ñieän töû vaø vi xöû lyù. Ngaøy nay con ngöôøi ñaõ coù theå taïo ra caùc maïng soá lieân keát dòch vuï maø ôû ñoù con ngöôøi coù theå truyeàn taát caû caùc daïng thoâng tin (tieáng noùi, hình aûnh ,vaên baûn, döõ lieäu ,fascimile…) döôùi daïng soá töø thueâ bao naøy ñeán thueâ bao kia .Ngoaøi ra caùc boä vi xöû lyù coøn ñöôïc söû duïng roäng raõi trong taát caû caùc loaïi thieát bò ñaàu cuoái nhö Digital telephone ,Telephone video, Telex, PC ….. trong ñoù söï ñoùng goùp cuûa caùc boä vi xöû lyù vaøo maïng ñieän thoaïi ñaõ taïo ra moät böôùc tieán ñaùng keå trong vieäc thieát keá vaø quaûn lyù caùc maïng ñieän thoaïi . Tuy nhieân , khi caùc loaïi hình dòch vuï môùi ra ñôøi ngaøy caøng nhieàu thì vieäc quaûn lyù ,tính cöôùc thueâ bao ,tính cöôùc truy caäp hay giaûi quyeát söï coá treân ñöôøng truyeàn laïi laø nhöõng vaán ñeà gaây khoâng ít khoù khaên cho caùc nhaø cung caáp dòch vuï hay caùc Toång ñaøi trung taâm. Trong khi ñoù, ngoaøi nhöõng thueâ bao chính nhö cô quan,coâng sôû,nhaø rieâng … nöôùc ta coøn coù moät maïng löôùi thueâ bao coâng coäng daøy ñaëc chieám soá löôïng ñaùng keå töø thaønh phoá ñeán caùc tænh thaønh .Do ñoù, ñeå giaûi quyeát baøi toaùn treân caàn phaûi coù moät thieát bò ñaët taïi caùc traïm đieän thoaïi coâng coäng,cho pheùp ngöôøi goïi bieát ñöôïc soá ñaõ quay,thôøi gian ñaøm thoaïi vaø tính chính xaùc soá tieàn cuûa moãi cuoäc goïi. Xuaát phaùt töø nhu caàu neâu treân coäng vôùi nhöõng kieán thöùc ñaõ hoïc ôû tröôøng em choïn ñeà taøi maùy tính cöôùc ñieän thoaïi, nhaèm giaûi quyeát phaàn naøo khoù khaên maø caùc thueâ bao coâng coäng ñaõ gaëp phaûi. Vôùi maùy tính cöôùc naøy, ngöôøi goïi coù theå bieát soá quay soá, thôøi gian ñaøm thoaïi vaø giaù tieàn cuoäc goïi: noäi haït, lieân tænh, nöôùc ngoaøi. Nhôø ñoù maø caùc dòch vuï thueâ bao coâng coäng phuïc vuï khaùch haøng ñöôïc toát hôn. II. MUÏC ÑÍCH YEÂU CAÀU CUÛA ÑEÀ TAØI: -Vôùi ñeà taøi maùy tính cöôùc ñieän thoaïi ñöôïc ñaët ôû caùc dòch vuï thueâ bao coâng coäng, thì nhieäm vuï chuû yeáu laø tính toaùn chính xaùc thôøi gian ñaøm thoaïi vaø ñoåi ra soá tieàn öùng vôùi thôøi gian ñaõ goïi, ngoaøi ra coøn coù theå hoaït ñoäng nhö ñoàng hoà chæ thò thôøi gian. Töø muïc ñích naøy neân maùy tính cöôùc phaûi ñaït nhöõng yeâu caàu sau: • Ñöôïc söû duïng treân toaøn nöôùc khoâng caàn thay ñoåi veà phaàn cöùng. • Theå hieän ñuùng soá quay ôû hai cheá ñoä Pulse vaø Tone. • Thôøi gian ñaøm thoaïi keå töø khi thoâng thoaïi ñoái vôùi maáy coù ñaêng kyù ñaûo cöïc taïi toång ñaøi moät caùch chính xaùc vaø baét ñaàu tính thôøi gian ñaøm thoaïi sau khi nhaác maùy 10s ñoái vôùi maùy khoâng coù ñaêng kyù ñaûo cöïc. • Löu tröõ taïm thôøi taát caû caùc thoâng soá cuûa cuoäc goïi nhö: soá quay soá, giaù tieàn cuûa moãi cuoäc goïi vaø thôøi gian goïi. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 8  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG II. GIÔÙI HAÏN ÑEÀ TAØI: Ñieän thoaïi coâng coäng laø moät ñeà taøi thuoäc phaïm vi chuyeân moân trong ngaønh vieãn thoâng, cho neân ñeå nghieân cöùu kyõ thì phaûi caàn moät thôøi gian. Vôùi thôøi gian 4 tuaàn maø coù nhieàu vaán ñeà caàn giaûi quyeát, hôn nöõa kieán thöùc veà vieãn thoâng coù haïn cho neân ñeå thöïc hieän ñeà taøi naøy em taäp trung vaøo giaûi quyeát nhöõng vaán ñeà sau: - Thieát keá phaàn cöùng maùy tính cöôùc ñieän thoaïi. - Xaùc ñònh chính xaùc thôøi gian ñaøm thoaïi (chæ thöïc hieän ñoái vôùi thueâ bao coù ñaêng kyù ñaûo cöïc) vaø qui ra giaù tieàn. - Löu tröõ caùc giaù trò cuûa cuoäc goïi. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 9  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG LYÙ THUYEÁT CHÖÔNG I: GIÔÙI THIEÄU CHUNG VEÀ MAÏNG ÑIEÄN THOAÏI I. SÔ LÖÔÏC VEÀ MAÏNG ÑIEÄN THOAÏI : MAÏNG ÑIEÄN THOAÏI HIEÄN NAY ÑÖÔÏC PHAÂN THAØNH 5 CAÁP TOÅNG ÑAØI: Caáp cao nhaát goïi laø toång ñaøi caáp 1. Caáp thaáp nhaát gọi laø toång ñaøi caáp 5 (caáp cuoái) Toång ñaøi caáp 5 laø toång ñaøi ñöôïc keát noái vôùi thueâ bao vaø coù theå thieát keá ñöôïc 10.000 ñöôøng daây thueâ bao. Moät vuøng neáu coù 10.000 ñöôøng daây thueâ bao trôû leân thì caùc soá ñieän thoaïi ñöôïc phaân bieät nhö sau: -Phaân bieät maõ vuøng. -Phaân bieät ñaøi cuoái. -Phaân bieät thueâ bao. Hai ñöôøng daây noái thueâ bao vôùi toång ñaøi cuoái goïi laø“vuøng noäi boä “ trôû khaùng khoaûng 600. Toång ñaøi cuoái seõ ñöôïc cung caáp cho thueâ bao moät ñieän aùp 48VDC. Hai daây daãn ñöôïc noái vôùi jack caém. -Loõi giöõa goïi laø Tip (+). -Loõi boïc goïi laø Ring (-). -Voû ngoaøi goïi laø Sleeve. Khi thueâ bao nhaác maùy toå hôïp, khi ñoù caùc tieáp ñieåm seõ ñoùng taïo ra doøng chaïy trong thueâ bao laø 20mADC vaø aùp rôi treân Tip vaø Ring coøn +4VDC. II. CAÙC THOÂNG TIN BAÙO HIEÄU TRONG ÑIEÄN THOAÏI: 1.NGUYEÂN LYÙ KEÁT NOÁI GIÖÕA THUE BAO GOÏI & THUE BAO BÒ GOÏI: Trong caùc maïng ñieän thoaïi hieän nay, nguoàn taïi toång ñaøi cung caáp ñeán caùc thueâ bao thöôøng laø 48VDC . -Yeâu caàu cuoäc goïi: khi thueâ bao roãi, trôû khaùng ñöôøng daây cao, trôû khaùng ñöôøng daây seõ xuoáng ngay khi thueâ bao nhaác toå hôïp keát quaû laø doøng ñieän taêng cao. Doøng taêng cao naøy ñöôïc toång ñaøi phaùt hieän nhö laø moät yeâu caàu moät cuoäc goïi môùi vaø seõ cung caáp ñeán thueâ bao aâm hieäu môøi quay soá (Dial Tone). -Tín hieäu ñòa chæ: Sau khi nhaän tín hieäu môøi quay soá, thueâ bao seõ göûi caùc Chöõ soá ñòa chæ. Caùc chöõ soá ñòa chæ coù theå ñöôïc phaùt ñi baèng hai caùch quay soá, quay soá ôû cheá ñoä Pulse vaø quay soá ôû cheá ñoä Tone. -Tín hieäu chaám döùt vieäc löïa choïn: Sau khi nhaän ñuû ñòa chæ, boä phaän ñòa chæ ñöôïc ngaét ra. Sau ñoù vieäc keát noái ñöôïc thieát laäp, luùc naøy toång ñaøi gôûi moät trong caùc tín hieäu sau: Neáu ñöôøng daây goïi ñang roãi, aâm hieäu hoài aâm chuoâng (Ring back tone) seõ ñeán thueâ bao goïi vaø doøng ñieän rung chuoâng (Ringing tone) ñeán thueâ bao bò goïi. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 10  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG -Neáu ñöôøng daây bò baän hoaëc khoâng theå vaøo ñöôïc thì aâm hieäu baùo baän (Busy tone) seõ ñeán thueâ bao goïi. -Tín hieäu traû lôøi trôû veà: Ngay khi thueâ bao bò goïi nhaác toå hôïp, moät tín hieäu ñaûo cöïc ñöôïc phaùt leân thueâ bao goïi.Vieäc naøy cho pheùp khôûi ñoäng maïch tính cöôùc baét ñaàu hoaït ñoäng . -Tín hieäu giaûi toûa: Khi 1 trong 2 thueâ bao gaùc maùy ,giaû söû thueâ bao A gaùc maùy (off hook), toång trôû ñöôøng daây ñieän thoaïi leân cao. Toång ñaøi xaùc nhaän tín hieäu naøy vaø gôûi tín hieäu Busy tone ñeán thueâ bao B ñoàng thôøi giaûi toûa taát caû caùc thieát bò lieân quan ñeán cuoäc goïi khi thueâ bao B gaùc maùy. 2.HEÄ THOÁNG AÂM HIEÄU CUÛA TOÅNG ÑAØI: - Ñöôøng daây ñieän thoaïi hieän nay goàm coù hai daây vaø thöôøng goïi ñoù laø Tip vaø Ring coù maøu ñoû vaø xanh. Taát caû caùc ñieän thoaïi hieän nay ñeàu ñöôïc caáp nguoàn töø toång ñaøi thoâng qua hai daây Tip vaø Ring. Ñieän aùp cung caáp thöôøng laø 48 VDC, nhöng noù cuõng coù theå thaáp ñeán 47 VDC hoaëc cao ñeán 105 VDC tuøy thuoäc vaøo toång ñaøi. - Ngoài ra, Ñeå hoïat ñoäng giao tieáp ñöôïc deã daøng, toång ñaøi göûi moät soá tín hieäu ñaëc bieät ñeán ñieän thoaïi nhö tín hieäu chuoâng, tín hieäu baùo baän.v.v.. Sau ñaây ta seõ tìm hieåu veà caùc tín hieäu ñieän thoaïi vaø öùng duïng cuûa noù. a. Tín hieäu chuoâng (Ring Tone): 3s 4s Khi moät thueâ bao bò goïi thì toång ñaøi seõ göûi tín hieäu chuoâng ñeán ñeå baùo cho thueâ bao ñoù bieát coù ngöôøi goïi. Tín hieäu chuoâng laø tín hieäu xoay chieàu AC thöôøng coù taàn soá 25Hz tuy nhieân noù coù theå cao hôn ñeán 60Hz hoaëc thaáp hôn ñeán 16Hz. Bieân ñoä cuûa tín hieäu chuoâng cuõng thay ñoåi töø 40 VRMS ñeán 130 VRMS thöôøng laø 90 VRMS. Tín hieäu chuoâng ñöôïc göûi ñeán theo daïng xung thöôøng laø 3s coù vaø 4s khoâng (nhö hình veõ). Hoaëc coù theå thay ñoåi thôøi gian tuøy thuoäc vaøo töøng toång ñaøi. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 11  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG b.Tín hieäu môøi goïi (Dial Tone): Ñaây laø tín hieäu lieân tuïc khoâng phaûi laø tín hieäu xung nhö caùc tín hieäu khaùc ñöôïc söû duïng trong heä thoáng ñieän thoaïi. Tín hieäu naøy ñöôïc taïo ra bôûi hai aâm thanh (tone) coù taàn soá 350Hz vaø 440Hz. c. Tín hieäu baùo baän (Busy Tone): Tín hieäu baùo baän laø tín hieäu xoay chieàu coù daïng xung ñöôïc toång hôïp bôûi hai aâm coù taàn soá 480Hz vaø 620Hz. Tín hieäu naøy coù chu kyø 1s (0.5s coù vaø 0.5s khoâng). 0.5s 0.5s d. Tín hieäu chuoâng hoài tieáp (Ring back tone): Khi thueâ bao A goïi cho thueâ bao B ,neáu cuoäc goïi ñöôïc keát noái (nghóa laø thueâ bao B khoâng bò baän vaø saün saøng keát noái cuoäc goïi ).Khi aáy,Toång ñaøi seõ göûi moät tín hieäu chuoâng hoài tieáp veà cho thueâ bao goïi töông öùng vôùi tieáng chuoâng ôû thueâ bao bò goïi. Tín hieäu chuoâng hoài tieáp naøy ñöôïc toång hôïp bôûi hai aâm coù taàn soá 440Hz vaø 480Hz. g. Tín Hieäu ÑaûoCöïc: Ñaûo Cöïc 10 Tín hieäu ñaûo cöïc chính laø söï ñaûo cöïc tính cuûa nguoàn taïi toång ñaøi, khi hai thueâ bao baét ñaàu cuoäc ñaøm thoaïi, moät tín hieäu ñaûo cöïc seõ xuaát hieän. Khi ñoù heä thoáng tính cöôùc cuûa toång ñaøi seõ baét ñaàu thöïc hieän vieäc tính cöôùc ñaøm thoaïi cho thueâ bao goïi. ÔÛ caùc traïm coâng coäng coù trang bò maùy tính cöôùc, böu ñieän seõ cung caáp moät tín hieäu ñaûo cöïc cho traïm ñeå thuaän tieän cho vieäc tính cöôùc. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 12  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG BAÛNG TOÙM TAÉT TAÀN SOÁ TÍN HIEÄU TRONG HEÄ THOÁ NG ÑIEÄN THOAÏI Vuøng họat ñoäng(Hz) Tín hieäu chuoâng 16 – 60 Chuaån (Hz) 25 Daïng tín hieäu Ñôn vò Xung 2s on 4s off Hz Tín hieäu môøi goïi 350+440 Lieân tuïc Hz Tín hieäu baùo baän 480+620 Xung 0,5s on 0,5s off Hz Tín hieäu chuoâng hoài tieáp Tín hieäu baùo gaùc maùy 440+480 Xung 2s on 4s off Hz Tín hieäu sai soá 1400+2060+ Xung 0,1s on 0,1s off 2450+2600 200-400 Lieân tuïc Hz Hz III. KYÕ THUAÄT GÔÛI SOÁ BAÈNG XUNG LÖÔÕNG AÂM ÑA TAÀN (DUAL TONE MULTIFREQUENCY,DTMF): 1.Heä thoáng DTMF: Heä thoáng DTMF ñang phaùt trieån vaø ñaõ trôû thaønh phoå bieán trong heäthoáng ñieän thoïai hieän ñaïi hieän nay. Heä thoáng naøy coøn goïi laø heä thoáng Touch-Tone, heä thoáng ñöôïc hình thaønh vaøo naêm 1960 nhöng maõi ñeán naêm 1970 môùi ñöôïc phaùt trieån roäng raõi. Heä thoáng DTMF giôø ñaây trôû thaønh chuaån thay theá cho heä thoáng xung kieåu cuõ. DTMF (dual tone multifrequency) laø toång hôïp cuûa hai aâm thanh.Nhöng ñieåm ñaët bieät cuûa hai aâm naøy laø khoâng cuøng aâm nghóa laø: taàn soá cuûa hai aâm thanh naøy khoâng coù cuøng öôùc soá chung vôùi aâm thanh kia. Ví duï nhö 750 vaø 500 thì coù cuøng öôùc soá chung laø 250 (750=250 x 3, 500= 250 x 2) vì vaäy 750 vaø 500 laø hai thanh cuøng aâm khoâng theå keát hôïp thaønh tín hieäu DTMF. Lôïi ñieåm cuûa vieäc söû duïng tín hieäu DTMF trong ñieän thoaïi laø choáng ñöôïc nhieãu tín hieäu do ñoù toång ñaøi coù theå bieát chính xaùc ñöôïc phím naøo ñaõ ñöôïc nhaán. Ngoaøi ra noù coøn giuùp cho ngöôøi ta söû duïng ñieän thoaïi thuaän tieän hôn. Ngaøy nay haàu heát caùc heä thoáng ñieän thoaïi ñeàu söû duïng tín hieäu DTMF. Baøn phím chuaån cuûa loaïi ñieän thoaïi naøy coù daïng ma traän chöõ nhaät goàm coù 3 coät vaø 4 haøng taïo neân toång coäng laø 12 phím nhaán: 10 phím cho chöõ soá (0-9), hai phím ñaëc bieät laø ‘* ’ vaø MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 13  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG ‘# ’. Moãi moät haøng treân baøn phím ñöôïc gaùn cho moät taàn soá tone thaáp, moãi coät ñöôïc gaùn cho taàn soá tone cao (hình 2). Moãi moät phím seõ coù moät tín hieäu DTMF rieâng maø ñöôïc toång hôïp bôûi hai taàn soá töông öùng vôùi haøng vaø coät maø phím ñoù ñang ñöùng. Nhöõng taàn soá naøy ñaõ ñöôïc choïn löïa raát caån thaän. 1209Hz 1336Hz 1477Hz 697Hz 1 2 3 770Hz 4 5 6 852Hz 7 8 9 941Hz * 0 # Hình 2 : Baøn phím chuaån 12 phím DTMF Ngaøy nay ñeå taêng khaû naêng söû duïng cuûa ñieän thoaïi ngöôøi ta phaùt trieån theâm moät coät nöõa cho baøn phím ñieän thoaïi chuaån taïo neân baøn phím ma traän 4x4 nhö hình 3. 1209Hz 1336Hz 1477Hz 1633Hz 697Hz 1 2 3 A 770Hz 4 5 6 B 852Hz 7 8 9 C 941Hz * 0 # D Hình 3 : Baøn phím chuaån 16 phím DTMF MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 14  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG CHÖÔNG II :NGUYEÂN LYÙ TÍNH CÖÔÙC ÑIEÄN THOAÏI PHÖÔNG PHAÙP TÍNH CÖÔÙC : Coù nhieàu phöông phaùp tính cöôùc trong heä thoáng ñieän thoại coâng coäng .Trong phaïm vi ñoà aùn naøy chæ quan taâm ñeán caùc phöông phaùp tính cöôùc thoâng duïng .Coù nghóa laø khi thueâ bao bò goïi nhaác maùy ,thôøi gian ñaøm thoaïi baét ñaàu thì maïch seõ thöïc hieän tính cöôùc cho ñeán luùc keát thuùc cuoäc goïi . 1. TÍNH CÖÔÙC BAÈNG PHÖÔNG PHAÙP ÑAÛO CÖÏC NGUOÀN ÑIEÄN : Khi nhaän ra thueâ bao bò goïi nhaác maùy traû lôøi, toång ñaøi seõ ñaûo chieàu cuûa ñieän aùp DC treân ñoâi daây ñieän thoaïi cuûa thueâ bao goïi .Trong heä thoáng toång ñaøi ñieän thoaïi töï ñoäng,tín hieäu ñaûo cöïc seõ khôûi ñoäng ñoàng hoà tính cöôùc cuûa thueâ bao goïi .Khi ñaøm thoïai keát thuùc nghóa laø moät trong hai thueâ bao gaùc maùy ,ñieän aùp treân ñoâi daây laïi ñaûo chieàu laàn nöõa chaám döùt hoaït doäng cuûa thueâ bao goïi . 2. TÍNH CÖÔÙC BAÈNG PHÖÔNG PHAÙP ÑEÁM XUNG : Sau khi thöïc hieän keát noái giöõa hai thueâ bao , toång ñaøi seõ caáp caùc Tone giaùn ñoaïn coù taàn soá qui ñònh tröôùc .Trong moät khoaûng thôøi gian ñöôïc qui ñònh laø ñôn vò cô baûn ñeå tính cöôùc, soá Tone hieän dieän trong moät ñôn vò thôøi gian cô baûn seõ tyû leä vôùi giaù cöôùc.Nhö vaäy ,tuyø theo khoaûng caùch giöõa hai thueâ bao maø soá Tone trong moät ñôn vò thôøi gian seõ khaùc nhau .Khi ta goïi lieân tænh hay ñieän thoaïi di ñoäng thì töông öùng soá Tone nhaän ñöôïc ñeå tính cöôùc seõ taêng leân caøng nhieàu . Boä phaän tính cöôùc chæ laøm moät vieäc ñôn giaûn laø ñeám soá Tone naøy ñeå qui ñoåi ra giaù cöôùc cuoäc goïi. 3. TÍNH CÖÔÙC BAÈNG CAÙCH PHAÙT HIEÄN TÍN HIEÄU RING –BACK TONE : Trong hai phöông phaùp tính cöôùc treân thì toång ñaøi phaûi göûi cho thueâ bao tín hieäu ñaûo cöïc hoaëc xung tuaàn hoaøn .Tuy nhieân, trong thöïc teá taïi nhöõng thueâ bao coâng coäng hoaëc nhöõng thueâ bao khoâng coù dòch vuï treân thì ngöôøi ta seõ tính cöôùc döïa vaøo tín hieäu hoài aâm chuoâng ( Ring- back Tone). Ta ñaõ bieát raèng ,sau khi thueâ bao quay soá toång ñaøi seõ nhaän bieát xung quay soá nhôø heä thoáng DTMF. Khi ñoù toång ñaøi seõ thöïc hieän keát noái giöõa hai thueâ bao, beân thueâ bao goïi seõ nghe ñöôïc tín hieäu hoài aâm chuoâng(f = 425 Hz,chu kyø 1 giaây coù ,4 giaây khoâng ).Khi thueâ bao bò goïi nhaác maùy traû lôøi ,tín hieäu hoài aâm chuoâng seõ maát. Do vaäy, phaùt hieän heát tín hieäu Ring –back Tone chính laø phaùt hieän hai thueâ bao ñaõ thoâng thoaïi .Tín hieäu naøy seõ khôûi ñoäng cho maïch tính cöôùc hoaït ñoäng. Khi keát thuùc cuoäc goïi thì noäi dung cuûa boä ñeám thôøi gian chính laø khoaûng thôøi gian thoâng thoaïi caàn tính cöôùc . MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 15  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG CHÖÔNG III: KHAÛO SAÙT VI ÑIEÀU KHIEÅN 8951 I. GIÔÙI THIEÄU CAÁU TRUÙC PHAÀN CÖÙNG HOÏ MSC-51 (8951): - Ñaëc ñieåm vaø chöùc naêng hoaït ñoäng cuûa caùc IC hoï MSC-51 hoaøn toaøn töông töï nhö nhau. ÔÛ ñaây giôùi thieäu IC8951 laø moät hoï IC vi ñieàu khieån do haõng Intel cuûa Myõ saûn xuaát. Chuùng coù caùc ñaëc ñieåm chung nhö sau: Caùc ñaëc ñieåm cuûa 8951 ñöôïc toùm taét nhö sau : √ 8 KB EPROM beân trong. √ 128 Byte RAM noäi. √ 4 Port xuaát /nhaäp I/O 8 bit. √ Giao tieáp noái tieáp. √ 64 KB vuøng nhôù maõ ngoaøi √ 64 KB vuøng nhôù döõ lieäu ngoaïi. √ Xöû lí Boolean (hoaït ñoäng treân bit ñôn). √ 210 vò trí nhôù coù theå ñònh vò bit. √ 4 μs cho hoaït ñoäng nhaân hoaëc chia. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 16  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG SÔ ÑOÀ KHOÁI CUÛA 8951: INT1\ INT0\ SERIAL PORT TIMER 0 TIMER 1 TIME 2 128 byte RAM 8051\8052 INTERRUP CONTROL OTHER REGISTER 128 byte RAM ROM 4K: 8031 4K: 8051 EPROM 4K: 8951 TIMER 2 TIMER1 TIMER1 CPU BUS CONTROL I/O PORT SERIAL PORT OSCILATOR EA\ RST MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  ALE\ PSEN\ P0 P1 P2 P3 Address\Data TXD RXD Trang 17  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG II. SÔ ÑOÀ CHAÂN 8951: 40 19 XTAL.1 12 MHz PSEN\ 30 ALE 13 EA\ 9 RD WR T1 T0 INT1 INT0 TXD RXD P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 XTAL.2 18 29 Vcc RST 17 16 15 14 13 12 11 10 8951 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 32 AD7 33 AD6 34 AD5 35 AD4 36 AD3 37 AD2 38 AD1 39 AD0 8 7 6 5 4 3 2 1 28 A15 27 A14 26 A13 25 A12 24 A11 23 A10 22 A9 21 A8 Vss 20 III. CHÖÙC NAÊNG CAÙC CHAÂN CUÛA 8951: - 8951 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 (coù nghóa 1 chaân coù 2 chöùc naêng), moãi ñöôøng coù theå hoaït ñoäng nhö ñöôøng xuaát nhaäp hoaëc nhö ñöôøng ñieàu khieån hoaëc laø thaønh phaàn cuûa caùc bus döõ lieäu vaø bus ñòa chæ. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 18  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Caùc Port: ˆ Port 0 : - Port 0 laø port coù 2 chöùc naêng ôû caùc chaân 32 – 39 cuûa 8951. Trong caùc thieát keá côõ nhoû khoâng duøng boä nhôù môû roäng noù coù chöùc naêng nhö caùc ñöôøng IO. Ñoái vôùi caùc thieát keá côõ lôùn coù boä nhôù môû roäng, noù ñöôïc keát hôïp giöõa bus ñòa chæ vaø bus döõ lieäu. ˆ Port 1 : - Port 1 laø port IO treân caùc chaân 1-8. Caùc chaân ñöôïc kyù hieäu P1.0, P1.1, P1.2, … coù theå duøng cho giao tieáp vôùi caùc thieát bò ngoaøi neáu caàn. Port 1 khoâng coù chöùc naêng khaùc, vì vaäy chuùng chæ ñöôïc duøng cho giao tieáp vôùi caùc thieát bò beân ngoaøi. ˆ Port 2 : - Port 2 laø 1 port coù taùc duïng keùp treân caùc chaân 21 - 28 ñöôïc duøng nhö caùc ñöôøng xuaát nhaäp hoaëc laø byte cao cuûa bus ñòa chæ ñoái vôùi caùc thieát bò duøng boä nhôù môû roäng. ˆ Port 3 : - Port 3 laø port coù taùc duïng keùp treân caùc 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 caùc ñaëc tính ñaëc bieät cuûa 8951 nhö ôû baûng sau: Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 Teân RXT TXD INT0\ INT1\ T0 T1 WR\ RD\ Chöùc naêng chuyeån ñoåi Ngoõ vaøo döõ lieäu noái tieáp. Ngoõ xuaát döõ lieäu noái tieáp. Ngoõ vaøo ngaét cöùng thöù 0. Ngoõ vaøo ngaét cöùng thöù 1. Ngoõ vaøo cuûa TIMER/COUNTER thöù 0. Ngoõ vaøo cuûa TIMER/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. Caùc ngoõ tín hieäu ñieàu khieån: ˆ Ngoõ tín hieäu PSEN (Program 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 thöôøng ñöôïc noùi ñeán chaân 0E\ (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 Microcontroller 8951 laáy leänh. Caùc maõ leänh cuûa chöông trình ñöôïc ñoïc töø Eprom qua bus döõ lieäu vaø ñöôïc choát vaøo thanh ghi leänh beân trong 8951 ñeå giaûi maõ leänh. Khi 8951 thi haønh chöông trình trong ROM noäi PSEN seõ ôû möùc logic 1. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 19  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG ˆ Ngoõ tín hieäu ñieàu khieån ALE (Address Latch Enable ) : - Khi 8951 truy xuaát boä nhôù beân ngoaøi, port 0 coù chöùc naêng laø bus ñòa chæ vaø bus döõ lieäu do ñoù phaûi taùch caùc ñöôøng döõ lieäu vaø ñòa chæ. Tín hieäu ra ALE ôû chaân thöù 30 duøng laøm tín hieäu ñieàu khieån ñeå giải ña hôïp caùc ñöôøng ñòa chæ vaø döõ lieäu khi keát noái chuùng vôùi IC choát. - Tín hieäu ra ôû chaân ALE laø moät xung trong khoaûng thôøi gian port 0 ñoùng vai troø laø ñòa chæ thaáp 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 laàn taàn soá dao ñoäng treân chip 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 8951. ˆ Ngoõ tín hieäu EA\(External Access): - 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, 8951 thi haønh chöông trình töø ROM noäi trong khoaûng ñòa chæ thaáp 8 Kbyte. Neáu ôû möùc 0, 8951 seõ thi haønh chöông trình töø boä nhôù môû roäng. Chaân EA\ ñöôïc laáy laøm chaân caáp nguoàn 21V khi laäp trình cho Eprom trong 8951. ˆ Ngoõ tín hieäu RST (Reset) : - Ngoõ vaøo RST ôû chaân 9 laø ngoõ vaøo Reset cuûa 8951. Khi ngoõ vaøo tín hieäu naøy ñöa leân cao ít nhaát laø 2 chu kyø maùy, caùc thanh ghi beâf 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. ˆ Caùc ngoõ vaøo boä dao ñoäng X1, X2: - Boä dao ñoäng ñöôïc tích hôïp beân trong 8951, khi söû duïng 8951 ngöôøi thieát keá chæ caàn keát noái theâm thaïch anh vaø caùc tuï nhö hình veõ trong sô ñoà. Taàn soá thaïch anh thöôøng söû duïng cho 8951 laø 12Mhz. ˆ Chaân 40 (Vcc) ñöôïc noái leân nguoàn 5V. IV. CAÁU TRUÙC BEÂN TRONG VI ÑIEÀU KHIEÅN 1.TOÅ CHÖÙC BOÄ NHÔÙ: FFFF FF 00 On – Chip Memory External Memory MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  0000 CODE Memory Enable via PSEN FFFF 0000 DATA Memory Enable via RD & WR Trang 20  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 1.1 BAÛNG TOÙM TAÉT CAÙC VUØNG NHÔÙ 8951. Baûn ñoà boä nhôù Data treân Chip nhö sau : Ñòa chæ byte Ñòa chæ byte Ñòa chæ bit 7F Ñòa chæ bit FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC RAM ña duïng D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW 30 2F 2E 2D 2C 2B 2A 29 28 27 26 25 24 23 22 21 20 1F 18 17 10 0F 08 07 00 B8 7F 7E 77 76 6F 6E 67 66 5F 5E 57 56 4F 4E 47 46 3F 3E 37 36 2F 2E 27 26 1F 1E 17 16 0F 0E 07 06 Bank 3 7D 75 6D 65 5D 55 4D 45 3D 35 2D 25 1D 15 0D 05 7C 74 6C 64 5C 54 4C 44 3C 34 2C 24 1C 14 0C 04 7B 73 6B 63 5B 53 4B 43 3B 33 2B 23 1B 13 0B 03 7A 72 6A 62 5A 52 4A 42 3A 32 2A 22 1A 12 0A 02 79 71 69 61 59 51 49 41 39 31 29 21 19 11 09 01 78 70 68 60 58 50 48 40 38 30 28 20 18 10 08 00 Bank 2 Bank 1 Bank thanh ghi 0 (maëc ñònh cho R0 -R7) MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  - - BC BB BA B9 B8 IP B0 B7 B6 B5 B4 B3 B2 B1 B0 P.3 A8 AF AC AB AA A9 A8 IE A0 A7 A6 A5 A4 A3 A2 A1 A0 P2 99 khoâng ñöôïc ñòa chæ hoaù bit 98 9F 9E 9D 9C 9B 9A 99 98 SBUF SCON 90 97 96 95 94 93 92 91 90 P1 8D 8C 8B 8A 89 khoâng ñöôïc ñòa chæ hoaù bit khoâng ñöôïc ñòa chæ hoaù bit khoâng ñöôïc ñòa chæ hoaù bit khoâng ñöôïc ñòa chæ hoaù bit khoâng ñöôïc ñòa chæ hoaù bit TH1 TH0 TL1 TL0 TMOD 88 8F 8E 8D 8C 8B 8A 89 88 87 khoâng ñöôïc ñòa chæ hoaù bit TCON PCON 83 82 81 88 DPH DPL SP P0 khoâng ñöôïc ñòa chæ hoaù bit khoâng ñöôïc ñòa chæ hoaù bit khoâng ñöôïc ñòa chæ hoaù bit 87 86 85 84 83 82 81 80 Trang 21  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Boä nhôù trong 8951 bao goàm ROM vaø RAM. RAM trong 8951 bao goàm nhieàu 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ëc bieät. - 8951 coù boä nhôù theo caáu truùc Harvard: coù nhöõng vuøng boä nhôù rieâng bieät cho chöông trình vaø döõ lieäu. Chöông trình vaø döõ lieäu coù theå chöùa beân trong 8951 nhöng 8951 vaãn coù theå keát noái vôùi 64K byte boä nhôù chöông trình vaø 64K byte döõ lieäu. ™ Caùc ñaëc tính caàn chuù yù la ø: ‹ Caùc thanh ghi vaø caùc port xuaát nhaäp ñaõ ñöôïc ñònh vò (xaùc ñònh) trong boä nhôù vaø coù theå truy xuaát tröïc tieáp gioáng nhö caùc ñòa chæ boä nhôù khaùc. ‹ Ngaên xeáp beân trong Ram noäi nhoû hôn so vôùi Ram ngoaïi nhö trong caùc boä Microcontroller khaùc. RAM beân trong 8951 ñöôïc Phaân chia nhö sau: ‹ Caùc bank thanh ghi coù ñòa chæ töø 00H ñeán 1FH. ‹ RAM ñòa chæ hoùa töøng bit coù ñòa chæ töø 20H ñeán 2FH. ‹ RAM ña duïng töø 30H ñeán 7FH. ‹ Caùc thanh ghi chöùc naêng ñaëc bieät töø 80H ñeán FFH. ˆ 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 ñeán 7FH, 32 byte döôùi töø 00H ñeán 1FH cuõng coù theå duøng vôùi muïc ñích töông töï (maëc duø caùc ñòa chæ naøy ñaõ coù 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æ tröïc tieáp hoaëc giaùn tieáp. ˆ RAM coù theå truy xuaát töøng bit: - 8951 chöùa 210 bit ñöôïc ñòa chæ hoùa, trong ñoù coù 128 bit coù chöùa caùc byte coù chöùa caùc ñòa chæ töø 20F ñeán 2FH vaø caùc bit coøn laïi chöùa trong nhoùm thanh ghi coù chöùc naêng ñaëc bieät. - YÙ töôûng truy xuaát töøng bit baèng phaàn meàm laø caùc ñaëc tính maïnh cuûa microcontroller xöû lyù chung. Caùc bit coù theå ñöôïc ñaët, xoùa, AND, OR, . . . , vôùi 1 leänh ñôn. Ña soá caùc microcontroller xöû lyù ñoøi hoûi moät chuoåi leänh ñoïc – söûa - ghi ñeå ñaït ñöôïc muïc ñích töông töï, Ngoaøi ra caùc port cuõng coù theå truy xuaát ñöôïc 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 nhö caùc bit phuï thuoäc vaøo leänh ñöôïc duøng. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 22  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 1.2 CAÙC BANK THANH GHI: - 32 byte thaáp cuûa boä nhôù noäi ñöôïc daønh cho caùc bank thanh ghi. Boä leänh 8951 hoå trôï 8 thanh ghi coù teân laø R0 ñeán R7 vaø theo maëc ñònh sau khi reset heä thoáng, caùc thanh ghi naøy coù caùc ñòa chæ töø 00H ñeán 07H. - Caùc leänh duøng caùc thanh ghi RO ñeán R7 seõ ngaén hôn vaø nhanh hôn so vôùi caùc leänh coù chöùc naêng töông öùng 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 RO ñeán 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 traïng thaùi. b. Caùc thanh ghi coù chöùc naêng ñaëc bieät: - Caùc thanh ghi noäi cuûa 8951 ñöôïc truy xuaát ngaàm ñònh bôûi boä leänh. - Caùc thanh ghi trong 8951 ñöôïc ñònh daïng nhö moät phaàn cuûa RAM treân chip vì vaäy moãi thanh ghi seõ coù moät ñòa chæ (ngoaïi tröø thanh ghi boä ñeám chöông trình vaø thanh ghi leänh vì caùc thanh ghi naøy hieám khi bò taùc ñoäng tröïc tieáp). Cuõng nhö R0 ñeán R7, 8951 coù 21 thanh ghi coù chöùc naêng ñaëc bieät (SFR: Special Function Register) ôû vuøng treân cuûa RAM noäi töø ñòa chæ 80H ñeán FFH. Chuù yù: taát caû 128 ñòa chæ töø 80H ñeán FFH khoâng ñöôïc ñònh nghóa, chæ coù 21 thanh ghi coù chöùc naêng ñaëc bieät ñöôïc ñònh nghóa saün caùc ñòa chæ. - Ngoaïi tröø thanh ghi A coù theå ñöôïc truy xuaát ngaàm nhö ñaõ noùi, ña soá caùc thanh ghi coù chöùc naêng ñaëc bieät SFR coù theå ñòa chæ hoùa töøng bit hoaëc byte. Chöùc naêng töøng bit traïng thaùi chöông trình • Côø Carry CY (Carry Flag): - Côø nhôù coù taùc duïng keùp. Thoâng thöôøng noù ñöôïc duøng cho caùc leänh toaùn hoïc: C=1 neáu pheùp toaùn coäng coù söï traøn hoaëc pheùp tröø coù möôïn vaø ngöôïc laïi C= 0 neáu pheùp toaùn coäng khoâng traøn vaø pheùp tröø khoâng coù möôïn. • Côø Carry phuï AC (Auxiliary Carry Flag): - Khi coäng nhöõng giaù trò BCD (Binary Code Decimal), côø nhôù phuï AC ñöôïc set neáu keát quaû 4 bit thaáp naèm trong phaïm vi ñieàu khieån 0AH÷ 0FH. Ngöôïc laïi AC= 0. • Côø 0 (Flag 0): - Côø 0 (F0) laø 1 bit côø ña duïng duøng cho caùc öùng duïng cuûa ngöôøi duøng. • Nhöõng bit choïn bank thanh ghi truy xuaát: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 23  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - RS1 vaø RS0 quyeát ñònh daõy thanh ghi tích cöïc. Chuùng ñöôïc xoùa sau khi reset heä thoáng vaø ñöôïc thay ñoåi bôûi phaàn meàm khi caàn thieát. - Tuøy theo RS1, RS0 = 00, 01, 10, 11 seõ ñöôïc choïn Bank tích cöïc töông öùng laø Bank 0, Bank1, Bank2, Bank3. RS1 • RS0 BANK 0 0 0 0 1 1 1 0 2 1 1 3 Côø traøn OV (Over Flag) : - Côø traøn ñöôïc set sau moät hoaït ñoäng coäng hoaëc tröø neáu coù söï traøn toaùn hoïc. Khi caùc soá coù daáu ñöôïc coäng hoaëc tröø vôùi nhau, phaàn meàm coù theå kieåm tra bit naøy ñeå xaùc ñònh xem keát quaû coù naèm trong taàm xaùc ñònh khoâng. Khi caùc soá khoâng coù daáu ñöôïc coäng bit OV ñöôïc boû qua. Caùc keát quaû lôùn hôn +127 hoaëc nhoû hôn –128 thì bit OV = 1. • Bit Parity (P): - Bit töï ñoäng ñöôïc set hay Clear ôû moãi chu kyø maùy ñeå laäp Parity chaún vôùi thanh ghi A. Söï ñeám caùc bit 1 trong thanh ghi A coäng vôùi bit Parity luoân luoân chaün. Ví duï A chöùa 10101101B thì bit P set leân moät ñeå toång soá bit 1 trong A vaø P taïo thaønh soá chaün. - Bit Parity thöôøng ñöôïc duøng trong söï keát hôïp vôùi nhöõng thuû tuïc cuûa Port noái tieáp ñeå taïo ra bit Parity tröôùc khi phaùt ñi hoaãc kieåm tra bit Parity sau khi thu. • Thanh ghi B: - Thanh ghi B ôû ñòa chæ F0H ñöôïc duøng cuøng vôùi thanh ghi A cho caùc pheùp toaùn nhaân chia. Leänh MUL AB seõ nhaän nhöõng giaù trò khoâng daáu 8 bit trong hai thanh ghi A vaø B, roài traû veà keát quaû 16 bit trong A (byte cao) vaø B(byte thaáp). Leänh DIV AB laáy A chia B, keát quaû nguyeân ñaët vaøo A, soá dö ñaët vaøo B. - Thanh ghi B coù theå ñöôïc duøng nhö moät thanh ghi ñeäm trung gian ña muïc ñích. Noù laø nhöõng bit ñònh vò thoâng qua nhöõng ñòa chæ töø F0H÷F7H. • Con troû Ngaên xeáp SP (Stack Pointer) : MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 24  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Con troû ngaên xeáp laø moät thanh ghi 8 bit ôû ñòa chæ 81H. Noù chöùa ñòa chæ cuûa byte döõ lieäu hieän haønh treân ñænh ngaên xeáp. Caùc leänh treân ngaên xeáp bao goàm caùc leänh caát döõ lieäu vaøo ngaên xeáp (PUSH) vaø laáy döõ lieäu ra khoûi Ngaên xeáp (POP). Leänh caát döõ lieäu vaøo ngaên xeáp seõ laøm taêng SP tröôùc khi ghi döõ lieäu vaø leänh laáy ra khoûi ngaên xeáp seõ laøm giaûm SP. Ngaên xeáp cuûa 8951 ñöôïc giöõ trong RAM noäi vaø giôùi haïn caùc ñòa chæ coù theå truy xuaát baèng ñòa chæ giaùn tieáp, chuùng laø 128 byte ñaàu cuûa 8951. - Ñeå khôûi ñoäng SP vôùi ngaên xeáp baét ñaàu taïi ñòa chæ 60H, caùc leänh sau ñaây ñöôïc duøng: MOV SP , #5F - Vôùi leänh treân thì ngaên xeáp cuûa 8951 chæ coù 32 byte vì ñòa chæ cao nhaát cuûa RAM treân chip laø 7FH. Sôû dó giaù trò 5FH ñöôïc naïp vaøo SP vì SP taêng leân 60H tröôùc khi caát byte döõ lieäu. - Khi Reset 8951, SP seõ mang giaù trò maëc ñònh laø 07H vaø döõ lieäu ñaàu tieân seõ ñöôïc caát vaøo oâ nhôù ngaên xeáp coù ñòa chæ 08H. Neáu phaàn meàm öùng duïng khoâng khôûi ñoäng SP moät giaù trò môùi thì bank thanh ghi1 coù theå caû 2 vaø 3 seõ khoâng duøng ñöôïc vì vuøng RAM naøy ñaõ ñöôïc duøng laøm ngaên xeáp. Ngaên xeáp ñöôïc truy xuaát tröïc tieáp baèng caùc leänh PUSH vaø POP ñeå löu tröõ taïm thôøi vaø laáy laïi döõ lieäu, hoaëc truy xuaát ngaàm baèng leänh goïi chöông trình con ( ACALL, LCALL) vaø caùc leänh trôû veà (RET, RETI) ñeå löu tröõ giaù trò cuûa boä ñeám chöông trình khi baét ñaàu thöïc hieän chöông trình con vaø laáy laïi khi keát thuùc chöông trình con … • Con troû döõ lieäu DPTR (Data Pointer): - Con troû döõ lieäu (DPTR) ñöôïc duøng ñeå truy xuaát boä nhôù ngoaøi laø moät thanh ghi 16 bit ôû ñòa chæ 82H (DPL: byte thaáp) vaø 83H (DPH: byte cao). Ba leänh sau seõ ghi 55H vaøo RAM ngoaøi ôû ñòa chæ 1000H: MOV A , #55H MOV DPTR, #1000H MOV @DPTR, A - Leänh ñaàu tieân duøng ñeå naïp 55H vaøo thanh ghi A. Leänh thöù hai duøng ñeå naïp ñòa chæ cuûa oâ nhôù caàn löu giaù trò 55H vaøo con troû döõ lieäu DPTR. Leänh thöù ba seõ di chuyeån noäi dung thanh ghi A (laø 55H) vaøo oâ nhôù RAM beân ngoaøi coù ñòa chæ chöùa trong DPTR (laø 1000H). • Caùc thanh ghi Port (Port Register): MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 25  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Caùc Port cuûa 8951 bao goàm Port 0 ôû ñòa chæ 80H, Port1 ôû ñòa chæ 90H, Port 2 ôû ñòa chæ A0H, vaø Port 3 ôû ñòa chæ B0H. Taát caû caùc Port naøy ñeàu coù theå truy xuaát töøng bit neân raát thuaän tieän trong khaû naêng giao tieáp. • Caùc thanh ghi Timer (Timer Register): - 8951 coù chöùa hai boä ñònh thôøi/ boä ñeám 16 bit ñöôïc duøng cho vieäc ñònh thôøi ñöôïc ñeám söï kieän. Timer 0 ôû ñòa chæ 8AH (TLO: byte thaáp ) vaø 8CH (THO: byte cao). Timer1 ôû ñòa chæ 8BH (TL1: byte thaáp) vaø 8DH (TH1: byte cao). Vieäc khôûi ñoäng timer ñöôïc SET bôûi Timer Mode (TMOD) ôû ñòa chæ 89H vaø thanh ghi ñieàu khieån Timer (TCON) ôû ñòa chæ 08H. Chæ coù TCON ñöôïc ñòa chæ hoùa töøng bit . • Caùc thanh ghi Port noái tieáp (Serial Port Register) : - 8951 chöùa moät Port noái tieáp cho vieäc trao ñoåi thoâng tin vôùi caùc thieát bò noái tieáp nhö maùy tính, modem hoaëc giao tieáp noái tieáp vôùi caùc IC khaùc. Moät thanh ghi ñeäm döõ lieäu noái tieáp (SBUF) ôû ñòa chæ 99H seõ giöõ caû hai döõ lieäu truyeàn vaø döõ lieäu nhaäp. Khi truyeàn döõ lieäu ghi leân SBUF, khi nhaän döõ lieäu thì ñoïc SBUF. Caùc mode vaän khaùc nhau ñöôïc laäp trình qua thanh ghi ñieàu khieån Port noái tieáp (SCON) ñöôïc ñòa chæ hoùa töøng bit ôû ñòa chæ 98H. • Caùc thanh ghi ngaét (Interrupt Register): - 8951 coù caáu truùc 5 nguoàn ngaét, 2 möùc öu tieân. Caùc ngaét bò caám sau khi bò reset heä thoáng vaø seõ ñöôïc cho pheùp baèng vieäc ghi thanh ghi cho pheùp ngaét (IE) ôû ñòa chæ A8H. Caû hai ñöôïc ñòa chæ hoùa töøng bit. • Thanh ghi ñieàu khieån nguoàn PCON (Power Control Register): - Thanh ghi PCON khoâng coù bit ñònh vò. Noù ôû ñòa chæ 87H chöùa nhieàu bit ñieàu khieån. Thanh ghi PCON ñöôïc toùm taét nhö sau: √ Bit 7 (SMOD) : Bit coù toác ñoä Baud ôû mode 1, 2, 3 ôû Port noái tieáp khi set. √ Bit 6, 5, 4 : Khoâng coù ñòa chæ. √ Bit 3 (GF1) : Bit côø ña naêng 1. √ Bit 2 (GF0) : Bit côø ña naêng 2 √ Bit 1 (PD) : Set ñeå khôûi ñoäng mode Power Down vaø thoaùt ñeå reset. √ Bit 0 (IDL) : Set ñeå khôûi ñoäng mode Idle vaø thoaùt khi ngaét maïch hoaëc reset. Caùc bit ñieàu khieån Power Down vaø Idle coù taùc duïng chính trong taát caû caùc IC hoï MSC-51 nhöng chæ ñöôïc thi haønh trong söï bieân dòch cuûa CMOS. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 26  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG V. BOÄ NHÔÙ NGOAØI (EXTERNAL MEMORY) : - 8951 coù khaû naêng môû roäng boä nhôù leân ñeán 64K byte boä nhôù chöông trình vaø 64k byte boä nhôù döõ lieäu ngoaøi. Do ñoù coù theå duøng theâm RAM vaø ROM neáu caàn. - Khi duøng boä nhôù ngoaøi, Port 0 khoâng coøn chöùc naêng I/O nöõa. Noù ñöôïc keát hôïp giöõa bus ñòa chæ (A0-A7) vaø bus döõ lieäu (D0-D7) vôùi tín hieäu ALE ñeå choát byte cuûa bus ñòa chæ khi baét ñaàu moãi chu kyø boä nhôù. Port ñöôïc cho laø byte cao cuûa bus ñòa chæ. • Truy xuaát boä nhôù maõ ngoaøi (Accessing External Code Memory) : - Boä nhôù chöông trình beân ngoaøi laø boä nhôù ROM ñöôïc cho pheùp cuûa tín hieäu PSEN\. Söï keát noái phaàn cöùng cuûa boä nhôù EPROM nhö sau: Port 0 EA 8951 ALE D0 ÷ D7 74HC373 O G A0 ÷ A7 D EPROM Port 2 A8 ÷ A15 PSEN OE - Trong moät chu kyø maùy tieâu bieåu, tín hieäu ALE tích 2 laàn. Laàn thöù nhaát cho pheùp môû coång choát ñòa chæ byte thaáp, khi ALE xuoáng 0 thì byte thaáp vaø byte cao cuûa boä ñeám chöông trình ñeàu coù nhöng EPROM chöa xuaát vì PSEN\ chöa tích cöïc, khi tín hieäu leân moät trôû laïi thì Port 0 ñaõ coù döõ lieäu laø Opcode. ALE tích cöïc laàn thöù hai ñöôïc giaûi thích töông töï vaø byte 2 ñöôïc ñoïc töø boä nhôù chöông trình. Neáu leänh ñang hieän haønh laø leänh 1 byte thì CPU chæ ñoïc Opcode, coøn byte thöù hai boû ñi. • Truy xuaát boä nhôù döõ lieäu ngoaøi (Accessing External Data Memory): - Boä nhôù döõ lieäu ngoaøi laø moät boä nhôù RAM ñöôïc ñoïc hoaëc ghi khi ñöôïc cho pheùp cuûa tín hieäu RD\ vaø WR. Hai tín hieäu naøy naèm ôû chaân P3.7 (RD) vaø P3.6 (WR). Leänh MOVX ñöôïc duøng ñeå truy xuaát boä nhôù döõ lieäu ngoaøi vaø duøng moät boä ñeäm döõ lieäu 16 bit (DPTR), R0 hoaëc R1 nhö laø moät thanh ghi ñòa chæ. - Caùc RAM coù theå giao tieáp vôùi 8951 töông töï caùch thöùc nhö EPROM ngoaïi tröø chaân RD\ cuûa 8951 noái vôùi chaân OE\ (Output Enable) cuûa RAM vaø chaân WR\ cuûa 8951 noái vôùi chaân WE\ cuûa RAM. Söï noái caùc bus ñòa chæ vaø döõ lieäu töông töï nhö caùch noái cuûa EPROM. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 27  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Port 0 8951 EA\ D0 ÷ D7 RAM 74HC373 O D A0 ÷ A7 G ALE Port 2 RD\ A8 ÷ A15 OE\ • Söï giaûi maõ ñòa chæ (Address Decoding): - Söï giaûi maõ ñòa chæ laø moät yeâu caàu taát yeáu ñeå choïn EPROM, RAM, 8279, … Söï giaûi maõ ñòa chæ ñoái vôùi 8951 ñeå choïn caùc vuøng nhôù ngoaøi nhö caùc vi ñieàu khieån. Neáu caùc con EPROM hoaëc RAM 8K ñöôïc duøng thì caùc bus ñòa chæ phaûi ñöôïc giaûi maõ ñeå choïn caùc IC nhôù naèm trong phaïm vi giôùi haïn 8K: 0000H÷1FFFH, 2000H÷3FFFH, . . - Moät caùch cuï theå, IC giaûi maõ 74HC138 ñöôïc duøng vôùi nhöõng ngoõ ra cuûa noù ñöôïc noái vôùi nhöõng ngoõ vaøo choïn Chip CS (Chip Select) treân nhöõng IC nhôù EPROM, RAM, … Hình sau ñaây cho pheùp keát noái nhieàu EPROM vaø RAM. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 28  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Address Bus (A0 ÷ Data Bus (D0 ÷ D7) PSEN \ RD\ WR\ D0 - D7 OE EPROM A0 ÷ A12 8K Bytes CS OE D0 - D7 W RAM A0 ÷ A12 8K Bytes CS CS CS CS CS C 0 B 74HC138 1 A 2 E E0 E1 3 4 5 6 7 Select other EPROM/RAM Address Decoding (Giaûi maõ ñòa chæ) • Söï ñeø leân nhau cuûa caùc vuøng nhôù döõ lieäu ngoaøi: - Vì boä nhôù chöông trình laø ROM, neân naûy sinh moät vaán ñeà baát tieän khi phaùt trieån phaàn meàm cho vi ñieàu khieån. Moät nhöôïc ñieåm chung cuûa 8951 laø caùc vuøng nhôù döõ lieäu ngoaøi naèm ñeø leân nhau, vì tín hieäu PSEN\ ñöôïc duøng ñeå ñoïc boä nhôù maõ ngoaøi vaø tín hieäu RD\ ñöôïc duøng ñeå ñoïc bộä nhôù döõ lieäu, neân moät boä nhôù RAM coù theå chöùa caû chöông trình vaø döõ lieäu baèng caùch noái ñöôøng OE\ cuûa RAMù ñeán ngoõ ra moät coång AND coù hai ngoõ vaøo PSEN\ vaø RD\. Sô ñoà maïch nhö hình sau cho pheùp cho pheùp boä nhôù RAM coù hai chức naêng vöøa laø boä nhôù chöông trình vöøa laø boä nhôù döõ lieäu: RAM WR\ RD\ PSEN\ WR\ OE\ Overlapping the External code and data space MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 29  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG -Vaäy moät chöông trình coù theå ñöôïc taûi vaøo RAM baèng caùch xem noù nhö boä nhôù döõ lieäu vaø thi haønh chöông trình baêng caùch xem noù nhö boä nhôù chöông trình. Hoaït ñoäng Reset: - 8951 coù ngoõ vaøo reset RST taùc ñoäng ôû möùc cao trong khoaûng thôøi gian 2 chu kyø xung maùy, sau ñoù xuoáng möùc thaáp ñeå 8951 baét ñaàu laøm vieäc. RST coù theå kích baèng tay baèng moät phím nhaán thöôøng hôû, sô ñoà maïch reset nhö sau: +5V R Reset C RST R Manual Reset Reset baèng tay. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 30  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Traïng thaùi cuûa taát caû caùc thanh ghi trong 8951 sau khi reset heä thoáng ñöôïc toùm taét nhö sau: Thanh ghi Noäi dung Ñeám chöông trình PC 0000H Thanh ghi tích luõy A 00H Thanh ghi B 00H Thanh ghi thaùi PSW 00H SP 07H DPRT 0000H Port 0 ñeán port 3 FFH IP XXX0 0000 B IE 0X0X 0000 B Caùc thanh ghi ñònh 00H thôøi 00H SCON SBUF 00H PCON (MHOS) PCON (CMOS) 0XXX XXXXH 0XXX 0XXX 0000 B 0XXX 0000 B -Thanh ghi quan troïng nhaát laø thanh ghi boä ñeám chöông trình PC ñöôïc reset tại ñòa chæ 0000H. Khi ngoõ vaøo RST xuoáng möùc thaáp, chöông trình luoân baét ñaàu taïi ñòa chæ 0000H cuûa boä nhôù chöông trình. Noäi dung cuûa RAM treân chip khoâng bò thay ñoåi bôûi taùc ñoäng cuûa ngoõ vaøo reset. VI. HOAÏT ÑOÄNG TIMER CUÛA 8951: ™ GIÔÙI THIEÄU: - Boä ñònh thôøi cuûa Timer laø moät chuoãi caùc Flip Flop ñöôïc chia laøm 2, noù nhaän tín hieäu vaøo laø moät nguoàn xung clock, xung clock ñöôïc ñöa vaøo Flip Flop thöù nhaát laø xung clock cuûa Flip Flop thöù hai maø noù cuõng chia taàn soá clock naøy cho 2 vaø cöù tieáp tuïc. - Vì moãi taàng keá tieáp chia cho 2, neân Timer n taàng phaûi chia taàn soá clock ngoõ vaøo cho 2n. Ngoõ ra cuûa taàng cuoái cuøng laø clock cuûa Flip Flop traøn Timer hoaëc côø maø noù MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 31  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG kieåm tra bôûi phaàn meàm hoaëc sinh ra ngaét. Giaù trò nhò phaân trong caùc FF cuûa boä Timer coù theå ñöôïc nghó nhö ñeám xung clock hoaëc caùc söï kieän quan troïng bôûi vì Timer ñöôïc khôûi ñoäng. Ví duï Timer 16 bit coù theå ñeám ñeán töø FFFFH sang 0000H. - Hoaït ñoäng cuûa Timer ñôn giaûn 3 bit ñöôïc minh hoïa nhö sau: Flag FF D Q D Q0 D Q D Q Q2 Q1 LSB Q Q3 MSB Flag Timer Flip Flops. Clock Q0 (LSB) Q1 0 Q2 (MSB) Count 1 2 3 4 5 6 7 Flag - Trong hình treân moãi taàng laø moät FF loại D phuû ñònh taùc ñoäng caïnh xuoáng ñöôïc hoaït ñoäng ôû mode chia cho 2 (ngoõ ra Q\ ñöôïc noái vaøo D). FF côø laø moät boä choát ñôn giaûn loaïi D ñöôïc set bôûi taàng cuoái cuøng trong Timer. Trong bieåu ñoà thôøi gian, taàng ñaàu ñoåi traïng thaùi ôû ½ taàn soá clock, taàng thöù hai ñoåi traïng thaùi ôû taàn soá ¼ taàn soá clock . . . Soá ñeám ñöôïc bieát ôû daïng thaäp phaân vaø ñöôïc kieåm tra laïi deã daøng bôûi vieäc kieåm tra caùc taàng cuûa 3 FF. Ví duï soá ñeám “4” xuaát hieän khi Q2=1, Q1=0, Q0=0 (410=1002). MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 32  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG M1 M0 MODE DESCRIPTION - Caùc Timer ñöôïc öùng duïng thöïc teá cho caùc hoaït ñoäng ñònh höôùng. 8951 coù 2 boä Timer 16 bit, moãi Timer coù 4 mode hoaït ñoäng. Caùc Timer duøng ñeå ñeám giôø, ñeám caùc söï kieän caàn thieát vaø söï sinh ra toác ñoä cuûa toác ñoä Baud bôûi söï gaén lieàn Port noái tieáp. - Moãi söï ñònh thôøi laø moät Timer 16 bit, do ñoù taàng cuoái cuøng laø taàng thöù 16 seõ chia taàn soá clock vaøo cho 216 = 65.536. - Trong caùc öùng duïng ñònh thôøi, 1 Timer ñöôïc laäp trình ñeå traøn ôû mgät khoaûng thôøi gian ñeàu ñaën vaø ñöôïc set côø traøn Timer. Côø ñöôïc duøng ñeå ñoàng boä chöông trình ñeå thöïc hieän moät hoaït ñoäng nhö vieäc ñöa tôùi 1 taàng caùc ngoõ vaøo hoaëc gôûi döõ lieäu ñeám ngoõ ra. Caùc öùng duïng khaùc coù söû duïng vieäc ghi giôø ñeàu ñeàu cuûa Timer ñeå ño thôøi gian ñaõ troâi qua hai traïng thaùi (ví duï ño ñoä roäng xung).Vieäc ñeám moät söï kieän ñöôïc duøng ñeå xaùc ñònh soá laàn xuaát hieän cuûa söï kieän ñoù, töùc thôøi gian troâi qua giöõa caùc söï kieän. - Caùc Timer cuûa 8951 ñöôïc truy xuaát bôûi vieäc duøng 6 thanh ghi chöùc naêng ñaëc bieät nhö sau : Timer SFR Purpose Address Bit-Addressable TCON Control 88H YES TMOD Mode 89H NO TL0 Timer 0 low-byte 8AH NO TL1 Timer 1 low-byte 8BH NO TH0 Timer 0 high-byte 8CH NO TH1 Timer 1 high-byte 8DH NO VII. CAÙC THANH GHI ÑIEÀU KHIEÅN TIMER a.Thanh ghi ñieàu khieån cheá ñoä timer TMOD (timer mode register) : - Thanh ghi mode goàm hai nhoùm 4 bit laø: 4 bit thaáp ñaët mode hoaït ñoäng cho Timer 0 vaø 4 bit cao ñaët mode hoaït ñoäng cho Timer 1. 8 bit cuûa thanh ghi TMOD ñöôïc toùm taét nhö sau: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 33  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 0 0 0 Mode Timer 13 bit (mode 8048) 0 1 1 Mode Timer 16 bit 1 0 2 Mode töï ñoäng naïp 8 bit 1 1 3 Mode Timer taùch ra : Timer 0 : TL0 laø Timer 8 bit ñöôïc ñieàu khieån bôûi caùc bit cuûa Timer 0. TH0 töông töï nhöng ñöôïc ñieàu khieån bôûi caùc bit cuûa mode Timer 1. Timer 1 : Ñöôïc ngöøng laïi. Hai bit M0 vaø M1 cuûa TMOD ñeå choïn mode cho Timer 0 hoaëc Timer 1. - TMOD khoâng coù bit ñònh vò, noù thöôøng ñöôïc LOAD moät laàn bôûi phaàn meàm ôû ñaàu chöông trình ñeå khôûi ñoäng mode Timer. Sau ñoù söï ñònh giôø coù theå döøng laïi, ñöôïc khôûi ñoäng laïi nhö theá bôûi söï truy xuaát caùc thanh ghi chöùc naêng ñaëc bieät cuûa Timer khaùc. b. Thanh ghi ñieàu khieån timer TCON (timer control register): Bit Name Timer Description 7 GATE 1 Khi GATE = 1, Timer chæ laøm vieäc khi INT1=1 6 C/T 1 Bit cho ñeám söï kieän hay ghi giôø C/T = 1 : Ñeám söï kieän C/T = 0 : Ghi giôø ñeàu ñaën 5 M1 1 Bit choïn mode cuûa Timer 1 4 M0 1 Bit choïn mode cuûa Timer 1 3 GATE 0 Bit coång cuûa Timer 0 2 C/T 0 Bit choïn Counter/Timer cuûa Timer 0 1 M1 0 Bit choïn mode cuûa Timer 0 0 M0 0 Bit choïn mode cuûa Timer 0 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 34  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Thanh ghi ñieàu khieån bao goàm caùc bit traïng thaùi vaø caùc bit ñieàu khieån bôûi Timer 0 vaø Timer 1. Thanh ghi TCON coù bit ñònh vò. Hoaït ñoäng cuûa töøng bit ñöôïc toùm taét nhö sau : Bit Symbo Bit l Address Description TCON.7 TF1 8FH Côø traøn Timer 1 ñöôïc set bôûi phaàn cöùng ôû söï traøn, ñöôïc xoùa bôûi phaàn meàm hoaëc bôûi phaàn cöùng khi caùc vectô xöû lí ñeán thuû tuïc phuïc vuï ngaét ISR TCON.6 TR1 8EH Bit ñieàu khieån chaïy Timer 1 ñöôïc set hoaëc xoùa bôûi phaàn meàm ñeå chaïy hoaëc ngöng chaïy Timer. TCON.5 TF0 8DH Côø traøn Timer 0(hoaït ñoäng töông töï TF1) TCON.4 TR0 8CH Bit ñieàu khieån chaïy Timer 0 (gioáng TR1) TCON.3 IE1 8BH Côø kieåu ngaét 1 ngoaøi. Khi caïnh xuoáng xuaát hieän treân INT1 thì IE1 ñöôïc xoùa bôûi phaàn meàm hoaëc phaàn cöùng khi CPU ñònh höôùng ñeán thuû tuïc phuïc vuï ngaét ngoaøi. TCON.2 IT1 8AH Côø kieåu ngaét 1 ngoaøi ñöôïc set hoaëc xoùa baèng phaán meàm bôûi caïnh kích hoaït bôûi söï ngaét ngoaøi. TCON.1 IE0 89H Côø caïnh ngaét 0 ngoaøi TCON IT0 88H Côø kieåu ngaét 0 ngoaøi. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 35  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG c . Caùc nguoàn xung nhòp cho timer (clock sources): - Coù hai nguoàn xung clock coù theå ñeám giôø laø söï ñònh giôø beân trong vaø söï ñeám söï kieän beân ngoaøi. Bit C/T trong TMOD cho pheùp choïn 1 trong 2 khi Timer ñöôïc khôûi ñoäng. Crystal On Chip Oscillator ÷12 Timer Clock T0 or T1 pin C/T 0 = Up (internal Timing) 1 = Down (Event Counting) ♦ Sự baám giôø beân trong (Interval Timing): - Neáu bit C/T = 0 thì hoaït ñoäng cuûa Timer lieân tuïc ñöôïc choïn vaøo boä Timer ñöôïc ghi giôø töø dao ñoäng treân Chip. Moät boä chia 12 ñöôïc theâm vaøo ñeå giaûm taàn soá clock ñeán 1 giaù trò phuø hôïp vôùi caùc öùng duïng. Caùc thanh ghi TLx vaø THx taêng ôû toác ñoä 1/12 laàn taàn soá dao ñoäng treân Chip. Neáu duøng thaïch anh 12MHz thì seõ ñöa ñeán toác ñoä clock 1MHz. - Caùc söï traøn Timer sinh ra sau moät con soá coá ñònh cuûa nhöõng xung clock, noù phuï thuoäc vaøo giaù trò khôûi taïo ñöôïc LOAD vaøo caùc thanh ghi THx vaø TLx. ♦ Söï ñeám caùc söï kieän (Event Counting) : - Neáu bit C/T = 1 thì boä Timer ñöôïc ghi giôø töø nguoàn beân ngoaøi trong nhieàu öùng duïng, nguoàn beân ngoaøi naøy cung caáp 1 söï ñònh giôø vôùi 1 xung treân söï xaûy ra cuûa söï kieän. Söï ñònh giôø laø söï ñeám söï kieän. Con soá söï kieän ñöôïc xaùc ñònh trong phaàn meàm bôûi vieäc ñoïc caùc thanh ghi Timer. Tlx/THx, bôûi vì giaù trò 16 bit trong caùc thanh naøy taêng deân cho moãi söï kieän. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 36  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Nguoàn xung clock beân ngoaøi ñöa vaøo chaân P3.4 laø ngoõ nhaäp cuûa xung clock bôûi Timer 0 (T0) vaø P3.5 laø ngoõ nhaäp cuûa xung clock bôûi Timer 1 (T1). - Trong caùc öùng duïng ñeám caùc thanh ghi Timer ñöôïc taêng trong ñaùp öùng cuûa söï chuyeån traïng thaùi töø 1 sang 0 ôû ngoõ nhaäp Tx. Ngoõ nhaäp beân ngoaøi ñöôïc thöû trong suoát S5P2 cuûa moïi chu kyø maùy: Do ñoù khi ngoõ nhaäp ñöa tôùi möùc cao trong moät chu kyø vaø möùc thaáp trong moät chu kyø keá tieáp thì boä ñeám taêng leân moät. Giaù trò môùi xuaát hieän trong caùc thanh ghi Timer trong suoát S5P1 cuûa chu kyø theo sau moät söï chuyeån ñoåi. Bôûi vì noù chieám 2 chu kyø maùy (2μs) ñeå nhaän ra söï chuyeån ñoåi töø 1 sang 0, neân taàn soá beân ngoaøi lôùn nhaát laø 500KHz neáu dao ñoäng thaïch anh 12 MHz. d. söï baét ñaàu, keát thuùc vaø söï ñieàu khieån caùc timer (starting, stopping and controlling the timer) : - Bit TRx trong thanh ghi coù bit ñònh vò TCON ñöôïc ñieàu khieån bôûi phaàn meàm ñeå baét ñaàu hoaëc keát thuùc caùc Timer. Ñeå baéêt ñaàu caùc Timer ta set bit TRx vaø ñeå keát thuùc Timer ta Clear TRx. Ví duï Timer 0 ñöôïc baét ñaàu bôûi leänh SETB TR0 vaø ñöôïc keát thuùc bôûi leänh CLR TR0 (bit Gate= 0). Bit TRx bò xoùa sau söï reset heä thoáng, do ñoù caùc Timer bò caám baèng söï maëc ñònh. - Theâm phöông phaùp nöõa ñeå ñieàu khieån caùc Timer laø duøng bit GATE trong thanh ghi TMOD vaø ngoõ nhaäp beân ngoaøi INTx. Ñieàu naøy ñöôïc duøng ñeå ño caùc ñoä roäng xung. Giaû söû xung ñöa vaøo chaân INT0 ta khôûi ñoäng Timer 0 cho mode 1 laø mode Timer 16 bit vôùi TL0/TH0 = 0000H, GATE = 1, TR0 = 1. Nhö vaäy khi INT0 = 1 thì Timer “ñöôïc môû coång” vaø ghi giôø vôùi toác ñoä cuûa taàn soá 1MHz. Khi INT0 xuoáng thaáp thì Timer “ñoùng coång” vaø khoaûng thôøi gian cuûa xung tính baèng μs laø söï ñeám ñöôïc trong thanh ghi TL0/TH0. On Chip Oscillator 12 MHz ÷ 12 TL0 TH0 TF0 T0 (P3.4) C/T TR0 GATE INTO (P3.2) MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Timer Operating Mode 1. Trang 37  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG e . Söï khôûi ñoäng vaø truy xuaát caùc thanh ghi timer: - Caùc Timer ñöôïc khôûi ñoäng 1 laàn ôû ñaàu chöông trình ñeå ñaët mode hoaït ñoäng cho chuùng. Sau ñoù trong chöông trình caùc Timer ñöôïc baét ñaàu, ñöôïc xoùa, caùc thanh ghi Timer ñöôïc ñoïc vaø caäp nhaät … theo yeâu caàu cuûa töøng öùng duïng cuï theå. - Mode Timer TMOD laø thanh ghi ñaàu tieân ñöôïc khôûi gaùn, bôûi vì ñaët mode hoaït ñoäng cho caùc Timer. Ví duï khôûi ñoäng cho Timer 1 hoaït ñoäng ôû mode 1 (mode Timer 16bit) vaø ñöôïc ghi giôø baèng dao ñoäng treân Chip ta duøng leänh : MOV TMOD, # 00001000B. Trong leänh naøy M1 = 0, M0 = 1 ñeå vaøo mode 1 vaø C/T = 0, GATE = 0 ñeå cho pheùp ghi giôø beân trong ñoàng thôøi xoùa caùc bit mode cuûa Timer 0. Sau leänh treân Timer vaãn chöa ñeám giôø, noù chæ baét ñaàu ñeám giôø khi set bit ñieààu khieåân chaïy TR1 cuûa noù. - Neáu ta khoâng khôûi gaùn giaù trò ñaàu cho caùc thanh ghi TLx/THx thì Timer seõ baét ñaàu ñeám töø 0000Hleân vaø khi traøn töø FFFFH sang 0000H noù seõ baét ñaàu traøn TFx roài tieáp tuïc ñeám töø 0000H leân tieáp . . . - Neáu ta khôûi gaùn giaù trò ñaàu cho TLx/THx, thì Timer seõ baét ñaàu ñeám töø giaù trò khôûi gaùn ñoù leân nhöng khi traøn töø FFFFH sang 0000H laïi ñeám töø 0000H leân. - Chuù yù raèng côø traøn TFx töï ñoäng ñöôïc set bôûi phaàn cöùng sau moãi söï traøn vaø seõ ñöôïc xoùa bôûi phaàn meàm. Chính vì vaäy ta coù theå laäp trình chôø sau moãi laàn traøn ta seõ xoùa côø TFx vaø quay voøng laëp khôûi gaùn cho TLx/THx ñeå Timer luoân luoân baét ñaàu ñeám töø giaù trò khôûi gaùn leân theo yù ta mong muoán. - Ñaëc bieät nhöõng söï khôûi gaùn nhoû hôn 256 μs, ta seõ goïi mode Tieer töï ñoäng naïp 8 bit cuûa mode 2. Sau khi khôûi gaùn giaù trò ñaàu vaøo THx, khi set bit TRx thì Timer seõ baét ñaàu ñeám giaù trò khôûi gaùn vaø khi traøn töø FFH sang 00H trong TLx, côø TFx töï ñoäng ñöôïc set ñoàng thôøi giaù trò khôûi gaùn maø ta khôûi gaùn cho Thx ñöôïc naïp töï ñoäng vaøo TLx vaø Timer laïi ñöôïc ñeám töø giaù trò khôûi gaùn naøy leân. Noùi caùch khaùc, sau moãi traøn ta khoâng caàn khôûi gaùn laïi cho caùc thanh ghi Timer maø chuùng vaãn ñeám ñöôïc laïi töø giaù trò ban ñaàu. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 38  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG VIII.CAÙC CHEÁ ÑOÄ TIMER VAØ CÔØ TRAØN(TIMER MODES AND OVERFLOW): - 8951 coù 2ø Timer laø Timer 0 vaø timer 1. Ta duøng kyù hieäu TLx vaø Thx ñeå chæ 2 thanh ghi byte thaáp vaø byte cao cuûa Timer 0 hoaëc Timer 1. a. Mode Timer 13 bit (MODE 0) : Timer Clock TLx (5 bit) THx (8 bit) TFx Overflow - Mode 1 laø mode Timer 16 bit, töông töï nhö mode 0 ngoaïi tröø Timer naøy hoaït ñoäng nhö moät Timer ñaày ñuû 16 bit, xung clock ñöôïc duøng vôùi söï keát hôïp caùc thanh ghi cao vaø thaáp (TLx, THx). Khi xung clock ñöôïc nhaän vaøo, boä ñeám Timer taêng leân 0000H, 0001H, 0002H, …, vaø moät söï traøn seõ xuaát hieän khi coù söï chuyeån treân boä ñeám Timer töø FFFH sang 0000H vaø seõ set côø traøn Time, sau ñoù Timer ñeám tieáp. - Côø traøn laø bit TFx trong thanh ghi TCON maø noù seõ ñöôïc ñoïc hoaëc ghi bôûi phaàn meàm. - Bit coù troïng soá lôùn nhaát (MSB) cuûa giaù trò trong thanh ghi Timer laø bit 7 cuûa THx vaø bit coù troïng soá thaáp nhaát (LSB) laø bit 0 cuûa TLx. Bit LSB ñoåi traïng thaùi ôû taàn soá clock vaøo ñöôïc chia 216 = 65.536. - Caùc thanh ghi Timer TLx vaø Thx coù theå ñöôïc ñoïc hoaëc ghi taïi baát kyø thôøi ñieåm naøo bôûi phaàn meàm. b. Mode töï ñoäng naïp 8 bit (MODE 2) : Timer TFx TL x (8 bit) Overflow TH x (8 bit) Reload - Mode 2 laø mode töï ñoäng naïp 8 bit, byte thaáp TLx cuûa Timer hoaït ñoäng nhö moät Timer 8 bit trong khi byte cao THx cuûa Timer giöõ giaù trò Reload. Khi boä ñeám traøn töø FFH sang 00H, khoâng chæ côø traøn ñöôïc set maø giaù trò trong THx cuõng ñöôïc naïp vaøo TLx : Boä ñeám ñöôïc tieáp tuïc töø giaù trò naøy leân ñeán söï chuyeån traïng thaùi töø FFH sang 00H keá tieáp vaø cöù theá tieáp tuïc. Mode naøy thì phuø hôïp bôûi vì caùc söï traøn xuaát hieän cuï theå maø moãi luùc nghæ thanh ghi TMOD vaø THx ñöôïc khôûi ñoäng. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 39  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG c. Mode Timer taùch ra (MODE 3) : Timer Clock TL1 (8 bit) TH1 (8 bit) Timer Timer Clock Overflow TL1 (8 bit) TF0 TH0 (8 bit) TF1 - Mode 3 laø mode Timer taùch ra vaø laø söï khaùc bieät cho moãi Timer. - Timer 0 ôû mode 3 ñöôïc chia laø 2 timer 8 bit. TL0 vaø TH0 hoaït ñoäng nhö nhöõng Timer rieâng leû vôùi söï traøn seõ set caùc bit TL0 vaø TF1 töông öùng. - Timer 1 bò döøng laïi ôû mode 3, nhöng coù theå ñöôïc khôûi ñoäng bôûi vieäc ngaét noù vaøo moät trong caùc mode khaùc. Chæ coù nhöôïc ñieåm laø côø traøn TF1 cuûa Timer 1 khoâng bò aûnh höôûng bôûi caùc söï traøn cuûa Timer 1 bôûi vì TF1 ñöôïc noái vôùi TH0. - Mode 3 cung caáp 1 Timer ngoaïi 8 bit laø Timer thöù ba cuûa 8951. Khi vaøo Timer 0 ôû mode 3, Timer coù theå hoaït ñoäng hoaëc taét bôûi söï ngaét noù ra ngoaøi vaø vaøo trong mode cuûa chính noù hoaëc coù theå ñöôïc duøng bôûi Port noái tieáp nhö laø moät maùy phaùt toác ñoä Baud, hoaëc noù coù theå duøng trong höôùng naøo ñoù maø khoâng söû duïng Interrupt. IX. HOAÏT ÑOÄNG PORT NOÁI TIEÁP 1. Giôùi thieäu - 8951 coù moät port noái tieáp trong chip coù theå hoaït ñoäng ôû nhieàu cheá ñoä treân moät daõy taàn soá roäng. Chöùc naêng chuû yeáu laø thöïc hieän chuyeån ñoåi song song sang noái tieáp vôùi döõ lieäu xuaát vaø chuyeån ñoåi noái tieáp sang song song vôùi döõ lieäu nhaäp. - Port noái tieáp cho hoaït ñoäng song coâng (full duplex: thu vaø phaùt ñoàng thôøi) vaø ñeäm thu (receiver buffering) cho pheùp moät kyù töï seõ ñöôïc thu vaø ñöôïc giöõ trong khi kyù töï thöù hai ñöôïc nhaän. Neáu CPU ñoïc kyù töï thöù nhaát tröôùc khi kyù töï thöù hai ñöôïc thu ñaày ñuû thì döõ lieäu seõ khoâng bò maát. - Hai thanh ghi chöùc naêng ñaëc bieät cho pheùp phaàn meàm truy xuaát ñeán port noái tieáp laø: SBUF vaø SCON. Boä ñeäm port noái tieáp (SBUF) ôû ñiaï chæ 99H nhaän döõ lieäu ñeå thu hoaëc phaùt. Thanh ghi ñieàu khieån port noái tieáp (SCON) ôû ñiaï chæ 98H laø thanh ghi coù ñiaï chæ bit chöùa caùc bit traïng thaùi vaø caùc bit ñieàu khieån. Caùc bit ñieàu khieån ñaët cheá ñoä hoaït MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 40  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG ñoäng cho port noái tieáp, vaø caùc bit traïng thaùi Baùo caùo keát thuùc vieäc phaùt hoaëc thu kyù töï . Caùc bit traïng thaùi coù theå ñöôïc kieåm tra baèng phaàn meàm hoaëc coù theå laäp trình ñeå taïo ngaét. 2. Caùc thanh ghi vaø caùc cheá ñoä hoaït ñoäng cuûa port noái tieáp: 2.1. Thanh ghi ñieàu khieån port noái tieáp: - Cheá ñoä hoaït ñoäng cuûa port noái tieáp ñöôïc ñaët baèng caùch ghi vaðo thanh ghi cheá ñoä port noái tieáp (SCON) ôû ñòa chæ 98H .Sau ñaây caùc baûn toùm taét thanh ghi SCON vaø caùc cheá ñoä cuûa port noái tieáp: Bit Ñòa chæ Moâ taû SCON.7 SCON.6 SCON.5 Kyù hieäu SM0 SM1 SM3 9FH 9EH 9DH SCON.4 SCON.3 REN TB8 9CH 9BH SCON.2 SCON.1 RB8 TI 9AH 99H SCON.0 RI 98H Bit 0 cuûa cheá ñoä port noái tieáp Bit 1 cuûa cheá ñoä port noái tieáp Bit 2 cuûa cheá ñoä port noái tieáp . Cho pheùp truyeàn thoâng xöû lyù trong caùc cheá ñoä 2 vaø 3, RI seõ khoâng bò taùc ñoäng neáu bit thöù 9 thu ñöôïc laø 0 Cho pheùp boä thu phaûi ñöôïc ñaët leân 1 ñeå thu caùc kyù töï Bit 8 phaùt, bit thöù 9 ñöôïc phaùt trong cheá ñoä 2 vaø 3, ñöôïc ñaët vaø xoùa baèng phaàn meàm. B it 8 thu, bit thöù 9 thu ñöôïc Côø ngaét phaùt. Ñaët leân 1 khi keát thuùc phaùt kyù töï, ñöôïc xoùa baèng phaàn meàm Côø ngaét thu. Ñaët leân 1 khi keát thuùc thu kyù töï, ñöôïc xoùa baèng phaàn meàm MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 41  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Toùm taét thanh ghi cheá ñoä port noái tieáp SM0 SM1 Cheá ñoä Moâ taû Toác ñoä baud Thanh ghi dòch 0 0 Coá ñònh (Fosc /12 ) 0 1 1 Thay ñoåi ( ñaët baèng timer ) 0 UART 8 bit 2 0 Coá ñònh (Fosc /12 hoaëc Fosc/64 ) 1 UART 9 bit 3 1 Thay ñoåi ( ñaët baèng timer ) 1 UART 9 bit Caùc cheá ñoä port noái tieáp Tröôùc khi söû duïng port noái tieáp, phaûi khôûi ñoäng SCON cho ñuùng cheá ñoä. Ví duï, leänh sau: MOV SCON, #01010010B Khôûi ñoäng port noái tieáp cho cheá ñoä 1 (SM0/SM1=0/1), cho pheùp boä thu (REN=1) vaø côø ngaét phaùt (TP=1) ñeå boä phaùt saún saøng hoaït ñoäng. 2.2. Cheá ñoä 0 (Thanh ghi dòch ñôn 8 bit): - Cheá ñoä 0 ñöôïc choïn baèng caùc thanh ghi caùc bit 0 vaøo SM1 vaø SM2 cuûa SCON, ñöa port noái tieáp vaøo cheá ñoä thanh ghi dòch 8bit. Döõ lieäu noái tieáp vaøo vaø ra qua RXD vaø TXD xuaát xung nhòp dòch, 8 bit ñöôïc phaùt hoaëc thu vôùi bit ñaàu tieân laø LSB. Toác ñoä baud coá ñònh ôû 1/12 taàn soá dao ñoäng treân chip. - Vieäc phaùt ñi ñöôïc khôûi ñoäng baèng baát cöù leänh naøo ghi döõ lieäu vaøo SBUF. Döõ lieäu dòch ra ngoaøi treân ñöôøng RXD (P3.0) vôùi caùc xung nhòp ñöôïc göûi ra ñöôøng TXD (P3.1). Moãi bit phaùt ñi hôïp leä (treân RXD) trong moät chu kyø maùy, tín hieäu xung nhaäp xuoáng thaáp ôû S3P1 vaø trôû veà cao ôû S6P1. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 42  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Moät chu kyø maùy S1 OSC S2 P1 P2 P1 S3 P2 P1 S4 P2 S5 P1 P2 S6 P1 P2 P1 ALE Data Out Bit Data Hôïp Leä S3P1 Shift Clock WRITE to SBUF S6P1 Phoùng to ALE Data Out RXD Shift Clock (TXD) Giaûn ñoà thôøi gian Port noái tieáp phaùt ôû cheá ñoä 0 Vieäc thu ñöôïc khôûi ñoäng khi cho pheùp boä thu (REN) laø 1 vaø bit ngaét thu (RI) laø 0. Quy taéc toång quaùt laø ñaët REN khi baét ñaàu chöông trình ñeå khôûi ñoäng port noái tieáp, roài xoaù RI ñeå baét ñaàu nhaän döõ lieäu. Khi RI bò xoaù, caùc xung nhòp ñöôïc ñöa ra ñöôøng TXD, baét ñaàu chu kyø maùy keá tieáp vaø döõ lieäu theo xung nhòp ôû ñöôøng RXD. Laáy xung nhòp cho döõ lieäu vaøo port noái tieáp xaûy ra ôû caïnh ñöôøng cuûa TXD. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 43  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Moät chu kyø maùy Data out D0 D1 D2 D3 D4 D5 D6 D7 Shift clock Giaûn ñoà thôøi gian phaùt noái tieáp ôû cheá ñoä 0 2.3. Cheá ñoä 1 (UART 8 bit vôùi toác ñoä baud thay ñoåi ñöôïc): Ở cheá ñoä 1, port noái tieáp cuûa 8951 laøm vieäc nhö moät UART 8 bit vôùi toác ñoä baud thay ñoåi ñöôïc. Moät UART (Boä thu phaùt ñoàng boä vaïn naêng) laø moät duïng cuï thu phaùt döõ lieäu noái tieáp vôùi moãi kyù töï döõ lieäu ñi tröôùc laø bit start ôû möùc thaáp vaø theo sau bit stop ôû möùc cao. Ñoâi khi xen theâm bit kieåm tra chaün leû giöõa bit döõ lieäu cuoái cuøng vaø bit stop, Hoaït ñoäng chuû yeáu cuûa UART laø chuyeån ñoåi song song sang noái tieáp vôùi döõ lieäu nhaäp. ÔÛ cheá ñoä 1, 10 bit ñöôïc phaùt treân TXD hoaëc thu treân RXD. Nhöõng bit ñoù laø: 1 bit start (luoân luoân laø 0), 8 bit döõ lieäu (LSB ñaàu tieân) vaø 1 bit stop (luoân luoân laø 1). Vôùi hoaït ñoäng thu, bit stop ñöôïc ñöa vaøo RB8 trong SCON. Trong 8951 cheá ñoä baud ñöôïc ñaët baèng toác ñoä baùo traøn cuûa timer 1. Taïo xung nhòp vaø ñoàng boä hoùa caùc thanh ghi dòch cuûa port noái tieáp trong caùc cheá ñoä 1,2 vaø 3 ñöôïc thieát laäp baèng boä ñeám 4 bit chia cho 16, ngoõ ra laø xung nhòp toác ñoä baud. Ngoõ vaøo cuûa boä ñeám naøy ñöôïc choïn qua phaàn meàm Toác ñoä baud ÷ 16 Xung nhòp toác ñoä baud Thanh ghi dòch port noái tieáp MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 44  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 2.4 UART 9 bit vôùi toác ñoä baud coá ñònh (cheá ñoä 2): Khi SM1=1 vaø SM0=0, coång noái tieáp laøm vieäc ôû cheá ñoä 2, nhö moät UART 9bit coù toác ñoä baud coá ñònh, 11 bit seõ ñöôïc phaùt hgaëc thu:1bit start, 8 bit data, 1 bit data thöù 9 coù theå ñöôïc laäp trình vaø 1 bit stop. Khi phaùt bit thöù 9 laø baát cöù gì ñaõ ñöôïc ñöa vaøo TB8 trong SCON (coù theå laø bit Parity) .Khi thu bit thöù 9 thu ñöôïc seõ ôû trong RB8.Toác ñoä baud ôû cheá ñoä 2 laø 1/32 hoaëc 1/16 taàn soá dao ñoäng treân chip. 2.5. UART 9 bit vôùi toác ñoä baud thay ñoåi ñöôïc (cheá ñoä 3): Cheá ñoä naøy gioáng nhö ôû cheá ñoä 2 ngoaïi tröø toác ñoä baud coù theå laäp trình ñöôïc vaø ñöôïc cung caáp bôûi Timer.Thaät ra caùc cheá ñoä 1, 2, 3 raát gioáng nhau. Caùi khaùc bieät laø ôû toác ñoä baud (coá ñònh trong cheá ñoä 2, thay ñoåi trong cheá ñoä 1 vaø 3) vaø ôû soá bit data (8 bit trong cheá ñoä 1,9 trong cheá ñoä 2 vaø 3). 2.6. Khôûi ñoäng vaø truy xuaát caùc thanh ghi coång noái tieáp: ♦ Cho Pheùp Thu Bit cho pheùp boä thu (REN=Receiver Enable) Trong SCON phaûi ñöôïc ñaët leân 1baèng phaàn meàm ñeå cho pheùp thu caùc kyù töï thoâng thöôøng thöïc hieän vieäc naøy ôû ñaàu chöông trình khi khôûi ñoäng coång noái taeáp, timer … Coù theå thöïc hieän vieäc naøy theo hai caùch. Leänh: SETB REN ; ñaët REN leân 1 Hoaëc leänh MOV SCON,#XXX1XXXXB ; ñaët REN leân 1 hoaëc xoaù caùc bit khaùc treân SCON khi caàn (caùc X phaûi laø 0 hoaëc 1 ñeå ñaët cheá ñoä laøm vieäc) ♦Bit döõ lieäu thöù 9: Bit döõ lieäu thöù 9 caàn phaùt trong caùc cheá ñoä 2 vaø 3 phaûi ñöôïc naïp vaøo trong TB8 baèng phaàn meàm. Bit döõ lieäu thöù 9 thu ñöôïc ñaët ôû RB8. Phaàn meàm coù theå caàn hoaëc khoâng caàn bit döõ lieäu thöù 9, phuï thuoäc vaøo ñaëc tính kyõ thuaät cuûa thieát bò noái tieáp söû duïng (bit döõ lieäu thöù 9 cuõng ñoùng vai troø quan troïng trong truyeàn thoâng ña xöû lyù ) ♦Theâm 1 bit parity: Thöôøng söû duïng bit döõ lieäu thöù 9 ñeå theâm parity vaøo kyù töï. Nhö ñaõ nhaän xeùt ôû chöông tröôùc, bit P trong töø traïng thaùi chöông trình (PSW) ñöôïc ñaët leân 1 hoaëc bò xoaù bôûi chu kyø maùy ñeå thieát laäp kieåm tra chaún vôùi 8 bit trong thanh tích luõy. ♦Caùc côø ngaét: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 45  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Hai côø ngaét thu vaø phaùt (RI vaø TI) trong SCON ñoùng moät vai troø quan troïng trong truyeàn thoâng noái tieáp duøng 8951/8051. Caû hai bit ñöôïc ñaët leân 1 baèng phaàn cöùng, nhöng phaûi ñöôïc xoaù baèng phaàn meàm. 2.7. Toác ñoä baud port noái tieáp Nhö ñaõ noùi, toác ñoä baud coá ñònh ôû caùc cheá ñoä 0 vaø 2. Trong cheá ñoä 0 noù luoân luoân laø taàn soá dao ñoäng treân chip ñöôïc chia cho 12. Thoâng thöôøng thaïch anh aán ñònh taàn soá dao ñoäng treân chip nhöng cuõng coù theå söû duïng nguoàn xung nhòp khaùc. Dao ñoäng Xung nhòp treân chip Xung nhòp toác ñoä baud ÷ 12 a. Cheá ñoä 0 ÷ 64 Dao ñoäng treân chip Dao ñoäng treân chip ÷ 32 b. Cheá ñoä 2 ÷ 32 ÷ 16 SMOD=0 Xung nhòp toác ñoä baud SMOD=1 SMOD=0 SMOD=1 Xung nhòp toác ñoä baud c. Cheá ñoä 1 vaø 3 Caùc nguoàn taïo xung nhòp cho port noái tieáp Maëc nhieân sau khi reset heä thoáng, toác ñoä baud cheá ñoä 2 laø taàn soá boä dao ñoäng chia cho 64, toác ñoä baud cuõng bò aûnh höôûng bôûi 1 bit trong thanh ghi ñieàu khieån nguoàn cung caáp (PCON) bit 7 cuûa PCON laø bit SMOD. Ñaët bit SMOD leân 1 laøm gaáp ñoâi toác ñoä baud trong caùc cheá ñoä 1, 2 vaø 3. Trong cheá ñoä 2, toác ñoä baud coù theå bò gaáp ñoâi töø giaù trò maëc nhieân cuûa 1/64 taàn soá dao ñoäng (SMOD=0) ñeán 1/32 taàn soá dao ñoäng (SMOD=1) MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 46  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Vì PCON khoâng ñöôïc ñònh ñòa chæ theo bit, neân ñeå ñaët bit SMOD leân 1 caàn phaûi theo caùc leänh sau: MOV A,PCON ; laáy giaù trò hieän thôøi cuûa PCON SETB ACC.7 ; ñaët bit SMOD leân 1 MOV PCON,A ; ghi giaù trò ngöôïc veà PCON Caùc toác ñoä baud trong caùc cheá độ 1 vaø 3 ñöôïc xaùc ñònh baèng toác ñoä traøn cuûa timer 1. Vì timer hoaït ñoäng ôû taàn soá töông ñoái cao, traøn timer ñöôïc chia theâm cho 32 (hoaëc 16 neáu SMOD =1 ) tröôùc khi cung caáp toác ñoä xung nhòp cho port noái tieáp. 3. Toå chöùc ngaét trong 8051 Vi Ñieàu Khieån coù 5 nguoàn ngaét: 2 nguoàn ngaét ngoaøi, 2 ngaét timer vaø 1 ngaét Port noái tieáp, taát caû caùc nguoàn ngaét bò caám sau khi reset heä thoáng vaø cho pheùp bôûi phaàn meàm 3.1.Cho Pheùp vaø Khoâng Cho Pheùp Ngaét Moãi nguoàn ngaét ñöôïc cho pheùp hoaëc khoâng cho pheùp thoâng qua thanh ghi chöùc naêng ñaëc bieät coù caùc bit ñöôïc ñòa chæ hoùa IE (Interrupt Enable) taïi ñòa chæ 0A8H. BIT IE.7 IE.6 IE.5 IE.4 IE.3 IE.2 IE.1 IE.0 SYMBOL BIT ADDRESS EA EA ET2 AFH AEH ADH ACH ABH AAH A9H A8H       ES  ET1 EX1  ET0 EX0 DESCRIPTION (1:ENABLE,0:DISABLE) Global Enable/Disable Undefined Enable Timer 2 Interrupt (8052) Enable Serial Port Interrupt Enable Timer 1 Interrupt Enable External 1 Interrupt Enable Timer 0 Interrupt Enable External 0 Interrupt 3.2 VeùcTô Ngaét Khi ngaét ñöôïc chaáp nhaän giaù trò ñöôïc ñöa vaøo PC (Program Counter) goïi laø vector ngaét (Interrupt Vector) MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 47  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG INTERRUPT FLAG VECTOR ADDRESS System Reset External 0 Timer 0 External 1 Timer 1 Serial Port Timer 2 RST IE0 TF0 IE1 TF1 RI OR TI TF2 OR EXF2 0000 H 0003 H 000B H 0013 H 001B H 0023 H 002B H 3.3 Ngaét Port noái Tieáp Ngaét Port noái tieáp xaûy ra khi caû 2 côø ngaét truyeàn (TI) hoaëc côø ngaét nhaän (RI) ñöôïc ñaët. Ngaét truyeàn xaûy ra khi bit cuoái cuøng trong SBUF truyeàn xong töùc laø luùc naøy thanh ghi SBUF roãng .Ngaét nhaän xaûy ra khi SBUF ñaõ hoaøn thaønh vieäc nhaän vaø ñang ñôïi ñeå ñoïc töùc laø luùc naøy thanh ghi SBUF ñaày. Caû hai côø ngaét naøy ñöôïc ñaêt bôûi phaàn cöùng vaø xoùa baèng phaàn meàm. X . TOÙM TAÉT TAÄP LEÄNH CUÛA 8951: - Caùc chöông trình ñöôïc caáu taïo töø nhieàu leänh, chuùng ñöôïc xaây döïng logic, söï noái tieáp cuûa caùc leänh ñöôïc nghó ra moät caùch hieäu quaû vaø nhanh, keát quaû cuûa chöông trình khaû quan. - Taäp leänh hoï MSC-51 ñöôïc söï kieåm tra cuûa caùc mode ñònh vò vaø caùc leänh cuûa chuùng coù caùc Opcode 8 bit. Ñieàu naøy cung caáp khaû naêng 28= 256 leänh ñöôïc thi haønh vaø moät leänh khoâng ñöôïc ñònh nghóa. Vaøi leänh coù 1 hoaëc 2 byte bôûi döõ lieäu hoaëc ñòa chæ theâm vaøo Opcode. Trong toaøn boä caùc leänh coù 139 leänh 1 byte, 92 leänh 2 byte vaø 24 leänh 3 byte. 1. Caùc cheá ñoä ñònh vò ñòa chæ (addressing mode): - Caùc mode ñònh vò laø moät boä phaän thoáng nhaát cuûa taäp leänh. Chuùng cho pheùp ñònh roõ nguoàn hoaëc nôi gôûi tôùi cuûa döõ lieäu ôû caùc ñöôøng khaùc nhau tuøy thuoäc vaøo traïng thaùi cuûa ngöôøi laäp trình. 8951 coù 8 mode ñònh vò ñöôïc duøng nhö sau: √ Thanh ghi. √ Tröïc tieáp. √ Giaùn tieáp. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 48  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG √ Töùc thôøi. √ Töông ñoái. √ Tuyeät ñoái. √ Daøi. √ Ñònh vò. 1.1 Söï ñònh vò thanh ghi (Register Addressing): - Coù 4 daõy thanh ghi 32 byte ñaàu tieân cuûa RAM döõ lieäu treân Chip ñòa chæ 00H ÷ 1FH, nhöng taïi moät thôøi ñieåm chæ coù moät daõy hoaït ñoäng caùc bit PSW3, PSW4 cuûa töø traïng thaùi chöông trình seõ quyeát ñònh daõy naøo hoaït ñoäng. - Caùc leänh ñeå ñònh vò thanh ghi ñöôïc ghi maät maõ baèng caùch duøng bit troïng soá thaáp nhaát cuûa Opcode leänh ñeå chæ moät thanh ghi trong vuøng ñòa chỉ theo logic naøy. Nhö vaäy 1 maõ chöùc naêng vaø ñòa chæ hoaït ñoäng coù theå ñöôïc keát hôïp ñeå taïo thaønh moät leänh ngaén 1 byte nhö sau: Opcode n n n Register Addressing. - Moät vaøi leänh duøng cuï theå cho 1 thanh ghi naøo ñoù nhö thanh ghi A, DPTR … maõ Opcode töï noù cho bieát thanh ghi vì caùc bit ñòa chæ khoâng caàn bieát ñeán. 1.2 Söï ñònh ñòa chæ tröïc tieáp (Direct Addressing): - Söï ñònh ñòa chæ tröïc tieáp coù theå truy xuaát baát kyø giaù trò naøo treân Chip hoaëc thanh ghi phaàn cöùng treân Chip. Moät byte ñòa chæ tröïc tieáp ñöôïc ñöa vaøo Opcode ñeå ñònh roõ vò trí ñöôïc duøng nhö sau: Opcode Direct Addressing MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 49  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Tuøy thuoäc caùc bit baäc cao cuûa ñòa chæ tröïc tieáp maø moät trong 2 vuøng nhôù ñöôïc choïn. Khi bit 7 = 0, thì ñòa chæ tröïc tieáp ôû trong khoaûng 0÷127 (00H÷7FH) vaø 128 vò trí nhôù thaáp cuûa RAM treân Chip ñöôïc choïn. - Taát caû caùc Port I/O, caùc thanh ghi chöùc naêng ñaëc bieät, thanh ghi ñieàu khieån hoaëc thanh ghi traïng thaùi bao giôø cuõng ñöôïc quy ñònh caùc ñòa chæ trong khoaûng 128÷255 (80÷FFH). Khi byte ñòa chæ tröïc tieáp naèm trong giôùi haïn naøy (öùng vôùi bit 7 = 1) thì thanh ghi chöùc naêng ñaëc bieät ñöôïc truy xuaát. Ví duï Port 0 vaø Port 1 ñöôïc quy ñònh ñòa chæ tröïc tieáp laø 80H vaø 90H, P0, P1 daø daïng thöùc ruùt goïn thuaät nhôù cuûa Port, thì söï bieán thieân cho pheùp thay theá vaø hieåu daïng thöùc ruùt goïn thuaät nhôù cuûa chuùng. Chaún haïn leänh: MOV P1, A söï bieân dòch seõ xaùc ñònh ñòa chæ tröïc tieáp cuûa Port 1 laø 90H ñaët vaøo hai byte cuûa leänh (byte 1 cuûa port 0). 1.3 Söï ñònh vò ñòa chæ giaùn tieáp (Indirect Addressing): - Söï ñònh ñòa chæ giaùn tieáp ñöôïc töôïng tröng bôûi kyù hieäu @ ñöôïc ñaët tröôùc R0, R1 hay DPTR. R0 vaø R1 coù theå hoaït ñoäng nhö moät thanh ghi con troû maø noäi dung cuûa noù cho bieát moät ñòa chæ trong RAM noäi ôû nôi maø döõ lieäu ñöôïc ghi hoaëc ñöôïc ñoïc. Bit coù troïng soá nhoû nhaát cuûa Opcode leänh seõ xaùc ñònh R0 hay R1 ñöôïc duøng con troû Pointer. Opcode i 1.4. Söï ñònh ñòa chæ töùc thôøi (Immediate Addressing): - Söï ñònh ñòa chæ töùc thôøi ñöôïc töôïng tröng bôûi kyù hieäu # ñöôïc ñöùng tröôùc moät haèng soá, 1 bieán kyù hieäu hoaëc moät bieåu thöùc soá hoïc ñöôïc söû duïng bôûi caùc haèng, caùc kyù hieäu, caùc hoaït ñoäng do ngöôøi ñieàu khieån. Trình bieân dòch tính toaùn giaù trò vaø thay theá döõ lieäu töùc thôøi. Byte leänh theâm voâ chöùa trò soá döõ lieäu töùc thôøi nhö sau: Opcode Immediate Data 1.5 Söï ñònh ñòa chæ töông ñoái: - Söï ñònh ñòa chæ töông ñoái chæ söû duïng vôùi nhöõng leänh nhaûy naøo ñoù. Moät ñòa chæ töông ñoái (hoaëc Offset) laø moät giaù trò 8 bit maø noù ñöôïc coäng vaøo boä ñeám chöông trình PC ñeå taïo thaønh ñòa chæ moät leänh tieáp theo ñöôïc thöïc thi. Phaïm vi cuûa söï nhaûy naèm MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 50  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG trong khoaûng -128 ÷ 127. Offset töông ñoái ñöôïc gaén vaøo leänh nhö moät byte theâm vaøo nhö sau: Opcode Relative Offset - Nhöõng nôi nhaûy ñeán thöôøng ñöôïc chæ roõ bôûi caùc nhaõn vaø trình bieân dòch xaùc ñònh Offset Relative cho phuø hôïp. - Söï ñònh vò töông ñoái ñem laïi thuaän lôïi cho vieäc cung caáp maõ vò trí ñoäc laäp, nhöng baát lôïi laø chæ nhaûy ngaén trong phaïm vi -128÷127 byte. 1.6 Söï ñònh ñòa chæ tuyeät ñoái (Absolute Addressing): - Söï ñònh ñòa chæ tuyeät ñoái ñöôïc duøng vôùi caùc leänh ACALL vaø AJMP. Caùc leänh 2 byte cho pheùp phaân chia trong trang 2K ñang löu haønh cuûa boä nhôù maõ cuûa vieäc cung caáp 11 bit thaáp ñeå xaùc ñònh ñòa chæ trong trang 2K (A0÷A10 goàm A10÷A8 trong Opcode vaø A7÷A0 trong byte)vaø 5 bit cao ñeå choïn trang 2K (5 bit cao ñang löu haønh trong boä ñeám chöông trình laø 5 bit Opcode). Addr 10 ÷ Addr 8 Opcode Addr 7 ÷ Addr 0 - Söï ñònh vò tuyeät ñoái ñem laïi thuaän lôïi cho caùc leänh ngaén (2 byte), nhöng baát lôïi trong vieäc giôùi haïn phaïm vi nôi gôûi ñeán vaø cung caáp maõ coù vò trí ñoäc laäp. 1.7 Söï ñònh vò daøi (Long Addressing) : - Söï ñònh vò daøi ñöôïc duøng vôùi leänh LCALL vaø LJMP. Caùc leänh 3 byte naøy bao goàm moät ñòa chæ nôi gôûi tôùi 16 bit ñaày ñuû laø 2 byte vaø 3 byte cuûa leänh. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 51  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Opcode Addr 15 ÷ Addr 8 Addr 7 ÷ Addr 0 - Öu ñieåm cuûa söï ñònh daøi laø vuøng nhôù maõ 64K coù theå ñöôïc duøng heát, nhöôïc ñieåm laø caùc leänh ñoù daøi 3 byte vaø vò trí leä thuoäc. Söï phuï thuoäc vaøo vò trí seõ baát lôïi bôûi chöông trình khoâng theå thöïc thi taïi ñòa chæ khaùc. 1.8 Söï ñònh ñòa chæ phuï luïc (Index Addressing): - Söï ñònh ñòa chæ phuï luïc duøng moät thanh ghi cô baûn (cuõng nhö boä ñeám chöông trình hoaëc boä ñeám döõ lieäu) vaø Offset (thanh ghi A) trong söï hình thaønh 1 ñòa chæ lieân quan bôûi leänh JMP hgaëc MOVC. Base Register Offset PC (or PDTR) ACC Effective Address Index Address - Caùc baûng cuûa leänh nhaûy hoaëc caùc baûng tra ñöôïc taïo neân moät caùch deã daøng baèng caùch duøng ñòa chæ phuï luïc. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 52  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG PHAÀN B: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 53  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG THIEÁT KEÁ CHÖÔNG I : SÔ ÑOÀ KHOÁI – NGUYEÂN LYÙ HOAÏT ÑOÄNG I. SÔ ÑOÀ KHOÁI: CPU ROM XUNG CK KHUEÁCH ÑAÏI COÂNG SUAÁT GIAÛI MAÕ ÑÒA CHÆ ÑAÛO CÖÏC DTMF THU LED HIEÅN THÒ NGUOÀN CAÁP MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 54  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG II. CHÖÙC NAÊNG CAÙC KHOÁI 1. Khoái CPU: Laø boä naõo cuûa heä thoáng maùy tính, noù quaûn lyù taát caû caùc hoaït ñoäng trong heä thoáng vaø thi haønh caùc hoaït ñoäng ñeám vaø tính cuôùc ñieän thoaïi treân döõ lieäu. Noù laø taäp hôïp caùc maïch logic thöïc hieän caùc hoaït ñoäng ñem veà caùc leänh vaø thöïc thi caùc leänh. 2. Khoái EPROM : Ñaây laø khoái löu tröõ chöông trình hoaït ñoäng chính cuûa khoái CPU, noäi dung khoâng bò maát khi maát ñieän. Chöông trình phaàn meàm ñöôïc naïp ôû ñaây. 4. Khoái Giaûi Maõ Ñòa Chæ: Khi coù tín hieäu xung clock taùc ñoäng veà ngoõ vaøo cuûa xung clock. Khi coù tín hieäu töø CPU gôûi veà thì ngoõ ra seõ taùc ñoäng cho heä thoáng led 7 ñoaïn hoaït ñoäng. 5. Khoái Thu DTMF: Ñaây laø IC 8870 duøng ñeå giaûi maõ tone, giaûi maõ caùc soá töø baøn phím cuûa ñieän thoaïi vaø ñöa döõ lieäu veà coång xuaát nhaäp döõ lieäu qua bus döõ lieäu. 6. Khoái Khueách Ñaïi Coâng Suaát: Bao goàm caùc transistor daãn baûo hoøa khueách ñaïi coâng suaát cho heä thoáng led 7 ñoaïn,caùc transistor ñöôïc kích töø khoái giaûi maõ ñòa chæ vaø töø port 1 cuûa vi ñieàu khieån. 7. Khoái Xung CK: Taïo ra xung clock coù taàn soá coá ñònh ñeå caùc khoái trong maùy hoaït ñoäng ñoàng boä vôùi nhau. 8. Khoái Ñaûo Cöïc: Nhaän bieát ñöôïc vaø xöû lyù khi coù tín hieäu töø toång ñaøi göûi ñeán cho thueâ bao beân kia nhaác maùy thoâng thoaïi thì tính tieàn. 9. Khoái Hieån Thò: Hieån thò caùc thoâng soá veà giaù thaønh, thôøi gian vaø soá cuoäc goïi cuõng nhö tình traïng cuûa maùy ôû thôøi ñieåm hieän taïi. 10. Khoái Nguoàn: Taïo ra moät nguoàn ñieän aùp thoûa maõn yeâu caàu veà ñieän aùp cung caáp cho taát caû caùc linh kieän trong maïch. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 55  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG III. GIAÛI THÍCH SÔ LÖÔÏC VEÀ NGUYEÂN LYÙ HOAÏT ÑOÄNG CUÛA MAÏCH: Khi heä thoáng ñöôïc cung caáp nguoàn, nguoàn ñieän aùp seõ ñeán taát caû caùc vi maïch cuûa maùy. CPU ñöôïc caáp nguoàn seõ baét ñaàu hoaït ñoäng ôû ñòa chæ 0000H. Khi coù yeâu caàu thöïc hieän cuoäc goïi töùc laø maùy ôû cheá ñoä nhaác toå hôïp (offhook) CPU saün saøng tieáp nhaân soá goïi. Khi ngöôøi goïi thöïc hieän baám soá goïi, CPU seõ löu tröõ taïm thôøi soá goïi vaøo Ram vaø ñoàng thôøi ñöa ra maïch hieån thò ñeå hieån thò caùc soá vöøa goïi. Sau khi chaám döùt cuoäc goïi, maùy seõ hieån thò giaù tieàn vaø soá cuoäc goïi. ™ SÔ ÑOÀ NGUYEÂN LYÙ MAÏCH TÍNH CÖÔÙC SÔ ÑOÀ MAÏCH HIEÅN THÒ MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 56  CON4 J8 4 3 2 1 CON8 P2.4 P2.5 P2.6 P2.7 1 2 3 4 5 6 7 8 Y9 Y10 Y11 Y12 Y13 Y14 Y15 2.2K R16 A1015 Q2 U8 R17 2.2K U9 Q3 A1015 R18 2.2K U10 Q4 A1015 U11 2.2K R19 Q5 A1015 U12 2.2K R20 Q6 A1015 U13 2.2K R21 Q7 A1015 2.2K R29 U21 Q15 A1015 3 8 U14 2.2K R22 Q8 A1015 U15 2.2K R23 Q9 A1015 U16 2.2K R24 Q10 A1015 2.2K R25 U17 Q11 A1015 U18 2.2K R26 Q12 A1015 U19 2.2K R27 Q13 A1015 U20 2.2K R28 Q14 A1015 Q16 A1015 U22 2.2K R30 Q17 A1015 U23 2.2K R31 Q18 A1015 U24 2.2K R32 Q19 A1015 U25 2.2K R33 Q20 A1015 U26 2.2K R34 Q21 A1015 U27 2.2K R35 F G A B H E D C 10 9 7 6 5 1 2 4 V+ V+ 3 8 F G A B H E D C 10 9 7 6 5 1 2 4 V+ V+ 3 8 F G A B H E D C 10 9 7 6 5 1 2 4 V+ V+ 3 8 F G A B H E D C 10 9 7 6 5 1 2 4 V+ V+ 3 8 F G A B H E D C 10 9 7 6 5 1 2 4 V+ V+ 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 J7 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C 10 9 7 6 5 1 2 4 3 8 V+ V+ F G A B H E D C MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  10 9 7 6 5 1 2 4 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 Vcc Y1 Y2 Y3 Y4 Y5 Y6 Y7 1 2 3 4 5 6 7 8 CON8 J6 Vcc 1 2 3 4 5 6 7 8 J5 CON8 ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Trang 57  CON8 J2 1 2 3 4 5 6 7 8 100 R R R R R R R J1 R36 R37 R38 R39 R40 R41 R42 R43 1 2 3 4 P2.4 P2.5 P2.6 P2.7 U3 AT89C52 0 R13 10k Vcc 31 9 19 18 10 11 12 13 14 15 16 17 39 38 37 36 35 34 33 32 100u+ C15 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 25 26 P2.4/A12 P0.5/AD5 27 P2.5/A13 P0.6/AD6 28 P2.6/A14 P0.7/AD7 P2.7/A15 P3.0/RXD P3.1/TXD 1 P3.2/INT0 P1.0/T2 2 P1.1/T2-EX P3.3/INT1 3 P3.4/T0 4 P1.2 P3.5/T1 5 P1.3 P1.4 P3.6/WR 6 P1.5 P3.7/RD 7 8 P1.6 P1.7 XTAL1 XTAL2 30 ALE/PROG EA/VPP 29 RST PSEN 21 22 P2.0/A8 23 P2.1/A9 24 P2.2/A10 P2.3/A11 40 VC C GND 20 0.1u C16 47k R1 0.1u C6 R12 0 0 C14 33p 6 1 2 3 4 5 8 6 1 2 3 4 5 8 2.2k TOE Q4 Q3 Q2 Q1 STD C13 33p ZTA12 Y2 10 14 13 12 11 15 18 17 VCC 16 ST/GT EST Trang 58  Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 8 7 4 3 2 1 G1 A B C G2A G2B GND U7 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 HD74HC138 Vcc G1 A B C G2A G2B GND U6 Vcc OSC2 OSC1 VREF GS ININ+ 9 GND 6 GND 5 GND HD74HC138 U2 CM8870 16 VC C 16 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  VC C 15 14 13 12 11 10 9 7 15 14 13 12 11 10 9 7 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 Y9 Y10 Y11 Y12 Y13 Y14 Y15 Y1 1 2 3 4 5 6 7 8 0 R2 150k CON8 J3 CON8 J4 1 2 3 4 5 6 7 8 ZTA 150k R3 0.1u C7 DM74LS138 10k R14 Vcc Vcc Q1A 3 R8 560 100k R5 1 8 2 CS Vcc 7 3 SO Hold 6 4 WP SCK 5 GND SI U28 C17 0.1u 0 R4 2.2k C1815 2 1 Vcc 4 3 U5 C A 10k R15 PC817 CO 1 2 0.1u 1k E C8 R6 R9 2.2k 0.1 C9 0.1u 0.1u C11 2.2k R11 2.2k 2 1 0 E CO U4 PC817 C A 0.1u C12 3 4 R10 560 Vcc ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG SÔ ÑOÀ MAÏCH KHOÁI XÖÛ LYÙ TRUNG TAÂM ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG CHÖÔNG II : THIEÁT KEÁ PHAÀN CÖÙNG I. KHOÁI XÖÛ LYÙ TRUNG TAÂM (CPU): Vcc VCC 0.1u C6 1 2 3 J2 4 5 6 7 8 1 2 3 4 5 6 7 8 30 29 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P1.0/T2 P3.2/INT0 P1.1/T2-EX P3.3/INT1 P3.4/T0 P1.2 P3.5/T1 P1.3 P3.6/WR P1.4 P3.7/RD P1.5 P1.6 XTAL1 P1.7 XTAL2 ALE/PROG EA/VPP RST PSEN 20 CON8 R R R R R R R 25 26 27 28 VCC 40 J1 1 2 3 4 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 GND HD74HC138 21 22 23 24 1 2 3 6 R13 10k 0 47k R1 10 14 13 12 11 15 39 38 37 36 35 34 33 32 TOE Q4 Q3 Q2 Q1 STD CM8870 U3 AT89C52 18 17 ST/GT 16 EST 6 HD74HC138 10 11 12 13 14 15 16 17 VCC R12 19 18 Y2 VCC 2.2k 5 6 PI 27 24C64A C13 33p ZTA12 C14 33p 31 9 VCC C15 C16 100u+ 0.1u VCC Trong maùy tính cöôùc, khoái CPU chính laø phaàn quan troïng nhaát, noù tieáp nhaänvaø xöû lyù taát caû caùc thoâng tin hoaït ñoäng lieân quan ñeán vieäc tính cöôùc cuûa maùy.ÔÛ ñaây ta choïn Vi ñieàu khieån 8951 vì noù coù caùc ñaëc ñieåm noåi baät nhö maïch dao ñoäng ñöôïc tích hôïp saün beân trong ,vieäc laäp trình baèng ngoân ngöõ (Assembly) deã daøng ,ngöôøi laäp trình coù theå can thieäp vaøo töøng bit cuûa caùc port xuaát nhaäp baèng moät leänh duy nhaát. Khoái ñieàu khieån trung taâm coù nhieäm vuï ñieàu khieån moïi hoaït ñoäng cuûa maùy tính cöôùc, vieäc ñieàu khieån bao goàm caùc hoaït ñoäng sau: Nhaän bieát traïng thaùi nhaác maùy, gaùc maùy cuûa thueâ bao. Khi thueâ bao nhaác maùy, khoái ñieàu khieån seõ nhaän bieát traïng thaùi cuûa thueâ bao vaø hieån thò ñoàng hoà saún saøng nhaän tín hieäu xung töø baøn phím. Nhaän bieát xung quay soá vaø giaûi maõ xung quay soá (neáu thueâ bao söû duïng daïng pulse) hoaëc nhaän caùc bit döõ lieäu ñaõ ñöôïc giaûi maõ töø khoái giaûi maõ tone ñeå bieát soá maø thueâ bao muoán goïi. Sau ñoù CPU kieåm tra xem soá goïi laø quoác teá, lieân tænh hay noäi haït, CPU seõ ñieàu khieån cho ra giaù tieàn cuï theå cho töøng nöôùc, töøng tænh, noäi haït vôùi thôøi gian töông öùng khaùc nhau ñöôïc vieát trong chöông trình. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 59  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG II. KHOÁI ROM: Vcc C17 0.1u U28 1 2 3 4 CS Vcc SO Hold WP SCK GND SI 8 7 6 5 DM74LS138 16 CPU 17 R15 10k R14 .1. ROM : 10k - Boä nhôù ROM (Read Only Memory) laø boä nhôù ñöôïc thieát keá ñeå löu tröõ caùc döõ lieäu coá ñònh. Trong luùc hoaït ñoäng bình thöôøng, döõ lieäu môùi khoâng theå ñöôïc ghi vaøo ROM maø döõ lieäu chæ coù theå ñöôïc ñoïc töø ROM. Khi ROM ñöôïc laäp trình thì khi ngöøng caáp nguoàn caùc döõ lieäu beân trong ROM khoâng bò maát. - EPROM (Esarable Programable ROM) laø loaïi ROM coù theå laäp trình laïi ñöôïc Trong maïch tính cöôùc , ñeå coù theå thoûa maõn nhu caàu thò tröôøng do giaù tính cöôùc ôû moãi thôøi ñieåm coù theå khaùc nhau .Ta caàn phaûi coù loaïi ROM coù theå ñöôïc xoùa vaø laäp trình laïi nhieàu laàn ñeå caäp nhaät laïi giaù cöôùc ñieän thoaïi. - Xuaát phaùt töø yeâu caàu treân , ta choïn loaïi ROM coù khaû naêng môû roäng boä nhôù chöông trình leân ñeán 8 Kbytes. Ñoù laø ROM 24C64A Truy xuaát boä nhôù chöông trình ngoaøi : Trong moät chu kyø maùy seõ coù 2 xung ALE vaø 2 byte ñöôïc ñoïc töø boä nhôù chöông trình (neáu leänh hieän haønh laø leänh 2 byte thì byte thöù hai deõ ñöôïc loaïi boû) III. KHOÁI GIẢI Mà ÑÒA CHÆ: Vcc 16 J3 6 U6 A B C G2A G2B GND VCC 1 2 3 4 5 8 G1 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 15 14 13 12 11 10 9 7 Y9 Y 10 Y 11 Y 12 Y 13 Y 14 Y 15 1 2 3 4 5 6 7 8 HD74HC138 Vcc 1 2 3 4 5 8 CPU P2.0 P2.1 P2.2 P2.3 21 22 23 24 6 Trong maùy tính cöôùc naøy, MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  0 U7 A B C G2A G2B GND G1 VCC P0.7 32 CON8 J4 16 0 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 HD74HC138 15 14 13 12 11 10 9 7 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 1 2 3 4 5 6 7 8 CON8 CPU ñöôïc duøng laø vi ñieàu khieån 8951 coù ñaëc Trang 60  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG ñieåm laø 8 bit thaáp cuûa ñòa chæ ñöôïc ña hôïp vôùi 8 bit döõ lieäu. Vi maïch duøng ñeå choát ñòa chæ laø vi maïch choát 74HC138 Vi maïch 74HC138 duøng ñeå choát ñòa chæ do CPU xuaát ra: • 3 ngoõ vaøo cuûa 74HC138 ñöôïc keát noái vôùi 3 ngoõ A8 … A10 (Port 2) cuûa CPU 8951. • 8 ngoõ ra cuûa 74HC138 ñöôïc keát noái vôùi caùc ñöôøng ñòa chæ bus vào BJT ra Led Vi maïch 74HC138 coù 8 Flip-Flop D vaø 8 coång ñeäm ñieàu khieån. Tín hieäu ñieàu khieån choát ñòa chæ ñöôïc CPU ñöa ra ôû chaân A11 (P2.3)và chân AD7 ( P0.7) ñöôïc noái vaøo chaân G1 cuûa 74HC138. ÔÛ nöûa chu kyø ñaàu cuûa chöông trình laøm vieäc, caùc Flip-Flop D cuûa 74HC138 seõ choát caùc ñòa chæ do CPU ñöa tôùi, khi ñoù chaân G1 ôû möùc 1. ÔÛ nöõa chu kyø coøn laïi, G1 ôû möùc 0 döõ lieäu xuaát ra ôû Y0..Y7 chính laø döõ lieäu ôû caùc ngoõ vaøo tröôùc ñoù IV. KHOÁI THU DTMF Vcc C7 0.1u 47k R1 CPU P0.0 P0.1 P0.2 P0.3 P3.2 18 17 16 10 11 12 13 14 15 U2 CM8870 VCC ST/GT EST TOE Q1 Q2 Q3 Q4 STD 0.1u GND GND GND OSC2 OSC1 VREF GS ININ+ 9 6 5 8 7 4 3 2 1 R3 Y1 0 150k ZTA R2 150k * Giaûi maõ DTMF: IC MT8870 seõ giaûi maõ soùng DTMF ra soá BCD 4 bit vaø ñöa tôùi CPU, ñoàng thôøi cuõng taõo ra moät tín hieäu ngaét ôû chaân 15 (STD) ñöa tôùi chaân INT0\ (P3.2) cuûa CPU taïo ngaét khi nhaän moät tín hieäu Tone vaøo. Chaân 8 vaø chaân 7 cuûa MT8870 ñöôïc noái tôùi moät thaïch anh 3,579 MHz, taàn soá cuûa thaïch anh naøy seõ ñem so saùnh vôùi caùc taàn soá cuûa DTMF ñeå taïo ra caùc soá BCD 4 bit. Khi chaân 10 ôû möùc thaáp, MT8870seõ taïo xung baùo cho CPU bieát qua chaân INT0\ ñeå taïo ngaét, khi ñoù CPU phaûi chuyeån sang cheá ñoä Tone. Luùc ñoù, vi maïch MT8870 seõ nhaäp MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 61  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG caùc soá döôùi daïng tín hieäu caùc maõ soùng DTMF ñoàn thôøi caùc ngoõ ra Q1…Q4 ôû möùc toång trôû cao. - Khi RD\ cuûa CPU ôû möùc thaáp vaø chân 15 cuûa CPU ôû möùc cao khi ñoù chaân 10 (TOE) seõ ôû möùc cao, MT8870 xuaát ra döõ lieäu. - Yeâu caàu maïch naøy phaûi coù ngoõ ra ñeå giaûi maõ led 7 ñoaïn döïa vaøo caùc bit döõ lieäu ñöa veà töø maïch giaûi maõ baøn phím phía tröôùc. - Khi coù tín hieäu caùc bit döõ lieäu ghi treân boä nhôù ngoaøi cuûa CPU töø caùc ngoõ ra cuûa maïch giaûi maõ baøn phím, chöông trình phaàn meàm seõ xöû lyù cho ra caùc ñòa chæ caùc led ñeå cho pheùp caùc ñòa chæ led naøo hoaït ñoäng thoâng qua port 2 (P2.0 ÷P2.2 ),döõ lieäu naøy ñöa vaøo hai chaân G1 cuûa 74138 nhaèm xuaát ñòa chæ ra led 7 ñoaïn. - Tín hieäu xung clock vaøo ñeå ñeám nhòp xung cho vieäc giaûi maõ ra led 7 ñoaïn. Ñeå coù xung clock thì chaân A11 (P 2.3) và RD ( P 3.7) cuûa vi ñieàu khieån 8951 phaûi ôû möùc logic 1 . - Khi coù xung clock taùc ñoäng vaøo chaân G1 cuûa vi maïch 74138, keát hôïp vôùi döõ lieäu ôû (P2.0 ÷P2.2 ), cuûa vi ñieàu khieån 8951 ñeå xuaát caùc ngoõ ra Y0..Y7. Moãi ngoõ ra noái vôùi Anode chung cuûa moãi led 7 ñoaïn. - Vì caùc led 7 ñoaïn coù coâng suaát lôùn cho neân ta phaûi khueách ñaïi coâng suaát caùc tín hieäu ngoõ ra töø Y0..Y7 tröôùc khi ñöa vaøo Anode cuûa led 7 ñoaïn. ÔÛ ñaây ta söû duïng transistor A1015 vaø ñieän trôû R = 2.2kΩ ñeå laøm maïch khueách ñaïi. - Ñoàng thôøi cuøng luùc P2.0 ÷P2.2 , cuûa 8951 xuaát döõ lieäu ra 74138 thì caùc port I/O töø P1.0 ñeán P1.7 cuûa vi ñieàu khieån 8951 cuõng xuaát döõ lieäu ra tröïc tieáp Katod led 7 ñoaïn. Noù seõ ñieàu khieån ñoàng loaït Katod caùc thanh cuûa led 7 ñoaïn hoaït ñoäng. Döïa vaøo chöông trình phaàn meàm ñieàu khieån, caùc port I/O cuûa 8951 keát hôïp vôùi phaàn giaûi maõ ñòa chæ vôùi vi maïch 74138, ñeå taïo ra moät döõ lieäu sau cuøng ñöôïc hieån thò qua 20 led 7 ñoaïn maø ta coù theå hieåu ñöôïc thoâng qua caùc con soá hieån thò nhö soá giaù cöôùc cuoäc goïi, soá ñieän thoaïi ñaõ goïi, giôø cuoäc goïi, soá laàn goïi … Tính toaùn giaù trò R vaø BJT A1015 Transistor A1015 coù caùc thoâng soá : Loaïi Si coù : + Vγ (ñieän aùp ngöôõng VBE ) = 0,5V + Vδ (ñieän aùp khueách ñaïi BE) = 0.65V + VBES (ñieän aùp baõo hoøa BE) =0,8V + VCES (ñieän aùp baõo hoøa CE) = 0,2V + ICS =100mA + β (heä soá khueách ñaïi hfe) =70 → 240 + P (Coâng suaát lôùn nhaát) = 400mW + f (Taàn soá giôùi haïn ) = 80 MHz ÔÛ ñaây ta söû duïng Transistor nhö moät khoùa ñieän töû ñoùng/ ngaét MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 62  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Qsat → V0 = 0 → Coâng taéc ñoùng . Qoff → V0 = 0 VCC → Coâng taéc hôû . + Vi = 0 → Qoff Ic = 0 → V0 = Vcc + Vi = V(möùc 1) → Qsat VBE = VBES ; IB = IBS VCE = VCES ; IC = ICS Cho Vcc = 5 V ,βmin = 80 Ta coù : Ibs Ib = R12 = Ics   β min VCC − V BES IBS (VCC − V BES ) (5 − 0.8) β min ; R12 ≤ .70 = 2.94 K Ω IBS 0.1 Choïn R12 = 2,2 KΩ - Tính toaùn ñieän aùp vaø doøng ñeå Led saùng - Choïn aùp qua Led laø 2V - Doøng qua Led 20mA Ñieän trôû haïn doøng vaø aùp R → R12 ≤ R14 = Vcc − VCE1 − VCE 2 − VLED ILED R14 = 5 − 0.2 − 0.2 − 2 = 130Ω 0.02 Choïn R = 100 Ω MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 63  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG V. KHOÁI NHAÄN BIEÁT ÑAÛO CÖÏC J2 Vcc 1 2 100k THUE BAO 2 J1 C1815 1k Q1A 0.1u 0.1u 1 2 2.2k 1 1 3 0.1 DTMF 8870 2.2k TONG DAI 0.1u Vcc 2.2k Vcc 0 0 5,6K 5,6K 3 U29 4 CPU 2 1 PC 817 1 2.2k 0.1u U29 4 2 3 PC 817 P3.3/INT1 13 14 P3.4/TO Nguyeân Lyù Hoaït Ñoäng Chung: Maïch caûm bieán söû duïng Opto loaïi PC 817 ñeå nhaän bieát traïng thaùi nhaác maùy. Maïch caûm bieán ñöôïc maéc noái tieáp vôùi maùy ñieän thoaïi treân voøng thueâ bao. Khi gaùc maùy (on hook) trôû khaùng moät chieàu cuûa maùy ñieän thoaïi raát lôùn (RDC =20K), doøng qua maïch caûm bieán xaáp xæ baèng khoâng neân khoâng coù tín hieäu DC ôû ngoõ ra. Khi gaùc maùy (off hook) trôû khaùng moät chieàu giaûm (RDC < 2K) neân coù doøng moät chieàu qua maïch caûm bieán khoaûng (20 40) mA. Luùc naøy ngoõ ra maïch caûm bieán coù tín hieäu DC= +5V (töông öùng möùc logic [1]), tín hieäu naøy caáp cho MT8870 ñeå baét ñaàu chu trình ñoïc caùc tín hieäu phuïc vuï cho coâng vieäc tính cöôùc. * Khi thueâ bao khoâng ñöôïc ñaët ôû cheá ñoä ñaûo cöïc: Ñeå baét ñaàu cuoäc goïi khi thueâ bao baét ñaàu nhaác maùy, vaø ñieàu naøy baùo hieäu cho toång ñaøi bieát thueâ bao muoán thieát laäp cuoäc goïi, ñoàng thôøi ngoû ra P3.2 töùc laø chaân INT0 cuûa 89C51 xuaát ra möùc logic 1 qua DTMF 8870 ñeå phaân cöïc cho transitor C1815 hoaït ñoäng . Khi toång ñaøi nhaän bieát raèng coù thueâ bao muoán thieát laäp cuoäc goïi, thì toång ñaøi seõ ™ MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 64  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG göûi tín hieäu môøi quay soá. Tín hieäu ñoù seõ ñi qua J1( thueâ bao) ñi vaøo maïch. Khi thöïc hieän quay soá thueâ bao moät trong hai caëp tone seõ ñi vaøo laøm cho moät trong hai diode U13 hoaëc U14 seõ saùng ñeå taùc ñoäng laøm cho trangsitor daãn. Ñieàu naøy keùo theo chaân P3.3 hoaëc chaân P3.4 seõ bò daãn xuoáng mass. Luùc naøy khoái xöû lyù trung taâm seõ nhaän bieát ñöôïc thueâ bao nhaác maùy. Tín hieäu sau khi ñi qua Opto, seõ trôû laïi J2(toång ñaøi). Moät tín hieäu coøn laïi seõ ñi vaøo maïch giaûi maõ Tone, qua BJT C1815 qua tuï ñieän C7, qua ñieä trôû R3, ñi vaøo chaân ñaûo cöïc –IN cuûa MT8870. Tín hieäu ñoù sau khi vaøo boä thu DTMF hoaït ñoäng ôû cheá ñoä Tone. Sau ñoù tín hieäu quay ra theo ñöôøng chaân GS qua ñieän trôû R2 vaø chaïy ngöôïc ra toång ñaøi. Khi thueâ bao quay soá xong, tín hieäu thoâng qua chuyeån maïch töï ñoäng cuûa toång ñaøi, luùc naøy P3.3 hoaëc P3.4 vaãn ôû möùc logic 0, chaân STD cuûa MT8870 ñöa tín hieäu vaøo chaân INT0 vaø chöông trình phaàn meàm ñieàu khieån xöû lyù ñeå cho pheùp caùc bit döõ lieäu xuaát ra qua Q1…Q4 vaøo CPU ñeå xöû lyù ñeám thôøi gian vaø tính tieàn. * Khi thueâ bao ñöôïc ñaët ôû cheá ñoä ñaûo cöïc: Ñieàu kieän ñaàu tieân ñeå maùy tính cöôùc hoaït ñoäng ñöôïc ôû cheá ñoä naøy laø thueâ bao phaûi ñaêng kyù ñaûo cöïc taïi toång ñaøi. Ñeå tính tieàn cuoäc goïi, thueâ bao baét ñaàu nhaác maùy, cuõng töông töï nhö cuoäc goïi khoâng ñaûo cöïc khi toång ñaøi ñöôïc yeâu caàu phuïc vuï thì seõ phaùt tín hieäu môø quay soá cho thueâ bao. Tín hieäu seõ laøm cho diode U14 daãn vaø kích cho trans daãn keùo theo chaân P3.3 seõ ñöôïc daãn xuoáng mass töùc laø ôû möùc logic 0 vaø P3.4 thì ñöôïc noái vôùi Vcc neân vaãn ôû möùc logic 1. khoái xöû lyù trung taâm nhaän bieát ñöôïc thueâ bao ñaõ nhaác maùy. Thueâ bao baét ñaàu quay soá, tín hieäu vaøo maïch, luùc naøy Opto U14 daãn neân chaân P3.3 ôû möùc logic 0, coøn Opto U13 taét neân chaân P3.4 ôû möùc logic 1. chöông trình phaàn meàm seõ nhaän bieát vaø xöû lyù raèng vôùi möùc logic cuûa hai chaân naøy thì seõ cho pheùp hoaït ñoäng ôû cheá ñoä ñaûo cöïc. Sau khi toång ñaøi nhaän bieát ñöôïc thueâ bao naøy coù ñaêng kyù ñaûo cöïc taïi toång ñaøi thì toång ñaøi seõ baét ñaàu tính cöôùc cuoäc goïi sau khi thueâ bao beân kia nhaác maùy. Sau khi thueâ bao beân kia nhaác maùy thì ngoaøi vieäc toång ñaøi laøm nhieäm vuï chuyeån maïch thoâng thoaïi maø coøn ñöa tín hieäu ñaûo cöïc veà maùy thueâ bao. Tín hieäu ñaûo cöïc seõ ñöa vaøo chaân –IN cuûa MT8870. Laäp töùc seõ coù tín hieäu ngoõ ra chaïy veà INT0 cuûa 89C51 vaø chöông trình phaàn meàm seõ ñieàu khieån cho pheùp xuaát döõ lieäu vaøo CPU xöû lyù tính tieàn hieån thò qua led. Tín hieäu sau khi vaøo MT8870 ñeå xöû lyù thì trôû ra ñeå noái thoâng thoaïi vôùi maùy thueâ bao. Khi cuoäc goïi keát thuùc maùy seõ hieån thò toaøn boä thôøi gian vaø soá tieàn keå töø khi beân kia baét ñaàu nhaác maùy. MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 65  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG VI. KHOÁI TAÏO XUNG CK: Vi ñieàu khieån 8951 coù 2 Timer beân trong ,khi döôïc duøng laøm ñoàng hoà thì caùc Timer seõ ñeám giôø theo taàn soá thaïch anh gaén vaøo XTAL1 vaø XTAL2. Ta choïn thaïch anh coù taàn soá laøm vieäc laø 12 MHz. Caùc tuï C1 , C2 duøng ñeå oån ñònh taàn soá dao ñoäng cuûa thaïch anh. 2 VII. KHOÁI NGUOÀN : 4 + - 1 U32 0S 1 + VOUT 2 5v + C3 1000m 1000m 3 3 2 LM7805 VIN GND 1 0 0 0 0 - Cung caáp nguoàn 5V cho taát caû caùc vi maïch töø nguoàn beân ngoaøi 9V thoâng qua vi maïch oån aùp 7805, caùc tuï duøng keøm theo maïch ñeå naâng cao chaát löôïng nguoàn ñieän cho maïch. Nguyeân Lyù Hoaït Ñoäng : - Khi coù nguoàn 9V qua boä naén ñieän caàu , coâng taéc baät ON qua IC oån aùp 7805 ñöa vaøo nuoâi maïch - Choïn D1 laø loaïi 1N4007 +5V +5V - Vcc laø 5V - Suït aùp qua Diode laø 0.7V Maïch reset: R C RST R 0 Chaân Reset cuûa 8951 taùc ñoäng ôû möùc cao MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 66  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG - Khi cho nguoàn 5V vaøo, thì tuï ñöôïc naïp ñaày. Sau ñoù tuï ñöôïc phoùng qua chaân reset vaø toaøn boä maïch ñöôïc reset töø ñaàu.Maïch Reset phaûi thoûa maõn 2 chöùc naêng: Reset luùc caáp nguoàn vaø Reset baèng tay. Ñeå Reset CPU 8951 chaân RST (chaân reset cuûa 8951) ôû möùc cao. Bieán trôû caàn ñuû nhoû ñeå traùnh tröôøng hôïp doøng naïp cho tuï phaân cöïc beân trong 8951 choïn R1 = 0.1K. Ñieän aùp ôû chaân RST laø: Vrst = Vcc.e-T/t T V = ln cc t Vrst →t = T V ln cc Vrst e-T/t = Vcc / Vrst t = R.C : khoaûng thôøi gian töø luùc ñoùng nguoàn C= T V R ln cc Vrst Giaû söû ñieän aùp cuûa Vrst laø 3V ⇒ RC = 3.9 10-6 Do Vrst coù theå lôùn hôn → ñeå ñaûm baûo duøng reset ta choïn: C = 10μF ; R = 10 K MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 67  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG CHÖÔNG III : THIEÁT KEÁ CHÖÔNG TRÌNH VI XÖÛ LYÙ I. GIÔÙI THIEÄU VEÀ CAÙC VUØNG RAM NOÄI TRONG 8051: - Trong IC vi ñieàu khieån 8951 coù chöùa 128 byte RAM töø ñòa chæ 20H - 7FH. Trong ñoù caùc byte töø 20H – 7FH duøng cho caùc muïc ñích ñaëc bieät , coøn ñòa chæ töø 30H – 7FH duøng cho muïc ñích thoâng thöôøng . - Trong chöông trình ta söû duïng caùc vuøng RAM töø : 30H ÷ 4FH: Vuøng laøm vieäc daønh cho thueâ bao thöù 1. 50H ÷ 6FH: Vuøng laøm vieäc daønh cho thueâ bao thöù 2. Ñòa chæ cuûa EPROM tö ø: 0000H ÷ 0FFFH duøng ñeå löu chöông trình xöû lyù cho 8051. Ñòa chæ cuûa RAM töø : 1000H ÷ 13FFH duøng ñeå löu döõ lieäu cho caû 2 maùy. Caùc thoâng soá duøng cho keânh 1: 30H ÷ 38H :Löu Dial Tone. 39H ÷ 3CH :Löu thôøi gian . 3DH :Löu möùc cöôùc cuûa cuoäc goïi . 3EH ÷ 47H : Löu tröõ tieàn cöôùc cuûa moät cuoäc goïi. 48H : Löu taïm thôøi soá Dial Tone nhaän vaøo ñeå xöû lyù . 4AH : Löu Flag cho maùy 1. 4BH : Löu traïng thaùi cuõ cuûa maùy 1. Caùc thoâng soá duøng cho keânh 2 : 50 ÷ 58H : Löu Dial Tone 59 ÷ 5CH : Löu thôøi gian 5DH : Löu möùc cöôùc cuûa cuoäc goïi 5E ÷ 67H : Löu giöõ tieàn cöôùc cuûa moät cuoäc goïi 68H : Löu taïm thôøi soá Dial Tone nhaän vaøo ñeå xöû lyù . 6AH : Löu Flag cho maùy 2. 6BH : Löu traïng thaùi cuõ cuûa maùy 2. II. CAÙC KYÙ HIEÄU SÖÛ DUÏNG TRONG CHÖÔNG TRÌNH : - Ngoõ ra Delay Steering (STD) cuûa IC MT8870: + Khi STD = 1 :MT8870 ñaõ nhaän ñöôïc moät caëp aâm hieäu coù taàn soá keùp vaø ñaõ chuyeån sang maõ nhò phaân . + Khi STD = 0 : Caùc ngoõ ra cuûa Q1 ÷ Q4 cuûa MT8870 ôû traïng thaùi toång trôû cao. - Caùc côø hieäu söû duïng trong chöông trình : + Flag = 0 : Thueâ bao ñang gaùc maùy . + Flag = 1 : Thueâ bao nhaác maùy. + Flag = 2 : Thueâ bao ñang quay soá . + Flag = 3 : Thueâ bao chuaån bò thoâng thoaïi . MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 68  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG + Flag = 4 : Thueâ bao ñang thoâng thoaïi . + Flag = 5 : Thueâ bao gaùc maùy hay thueâ bao ñoái phöông gaùc maùy. + Flag = 6 : Thueâ bao ñaõ gaùc maùy . III. LÖU ÑOÀ GIAÛI THUAÄT : Löu ñoà chöông trình tính cöôùc : START LÖU ÑOÀ GIAÛI THUAÄT N NHAÁC MAÙY Y 3 N NHAÄP SOÁ Y CHÖÔNG TRÌNH NHAÄP SOÁ N GAÙC MAÙY DO SAI SOÁ Y HIEÄN THI SOÁ GOÏI N ÑAÛO CÖÏC Y MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  1 Trang 69  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 1 LÖU ÑOÀ GIAÛI THUAÄT TIEÁP THEO KIEÅM TRA SOÁ ÑIEÄN THOAÏI N KIEÛÂM TRA QUAÙ 60s Y TÍNH LAÏI TIEÀN CUOÄC GOÏI HIEÄN THÒ TIEÀN CUOÄC GOÏI HEÁT ÑAÛO CÖÏC N Y LÖU LAÏI SOÁ TIEÀN CUOÄC GOÏI 2 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 70  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 2 HIEÄN THÒ TOÅNG SOÁ TIEÀN CUOÄC GOÏI GAÙC MAÙY N Y NHAÁC MAÙY TIEÁP THEO 3 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 71  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG IV.CHÖÔNG TRÌNH 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: ORG 0000H LJMP MAIN ORG 000BH LJMP NGATTIMER ORG 0013H LJMP NHAPSO ORG 0030H MAIN: MOV IE,#86H MOV TMOD,#01H SETB IT1 MOV A,#0 MOV 51H,#0 MOV 52H,#0 NHACMAY: SETB P3.6 MOV P0,#0FFH MOV P2,#0FFH JB P3.3,$ ;Chôø nhaác maùy MOV R2,#0 XUATLED: MOV R0,#5FH CJNE R2,#1,$ MOTSO: MOV B,R0 MOV R1,B MOV A,@R1 ORL A,#0F0H MOV P0,#0FEH MOV P2,A LCALL DELAY MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 72  ÑOÀ AÙN TOÁT NGHIEÄP 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 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: GVHD :TRÖÔNG QUANG TRUNG JNB P3.3,SAISO ;Kieåm tra baám sai soá goi MOV P0,#0FFH MOV P2,#0FFH LJMP NHACMAY SAISO: CLR C MOV A,R2 SUBB A,#2 JC MOTSO HAISO: DEC R1 MOV A,@R1 ORL A,#0F0H MOV P0,#0FDH MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#3 JC MOTSO JB P3.4,BASO ;xeùt ñaûo cöïc LJMP TINHTIEN BASO: DEC R1 MOV A,@R1 ORL A,#0F0H MOV P0,#0FBH MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#4 JC MOTSO BONSO: DEC R1 MOV A,@R1 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 73  ÑOÀ AÙN TOÁT NGHIEÄP 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: 108: 109: GVHD :TRÖÔNG QUANG TRUNG ORL A,#0F0H MOV P0,#0F7H MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#5 JC MOTSO NAMSO: DEC R1 MOV A,@R1 ORL A,#0F0H MOV P0,#0EFH MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#6 JC MOTSO SAUSO: DEC R1 MOV A,@R1 ORL A,#0F0H MOV P0,#0DFH MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#7 JC NHAN BAYSO: DEC R1 MOV A,@R1 ORL A,#0F0H MOV P0,#0BFH MOV P2,A LCALL DELAY CLR C MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 74  ÑOÀ AÙN TOÁT NGHIEÄP 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: 146: 147: GVHD :TRÖÔNG QUANG TRUNG MOV A,R2 SUBB A,#8 JC NHAN TAMSO: DEC R1 MOV A,@R1 ORL A,#0F0H MOV P0,#7FH MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#9 JC NHAN CHINSO: DEC R1 MOV A,@R1 ANL A,#0FH ORL A,#0B0H MOV P0,#0FFH MOV P2,A LCALL DELAY CLR C MOV A,R2 SUBB A,#10 JC NHAN MUOISO: DEC R1 MOV A,@R1 ANL A,#0FH ORL A,#70H MOV P0,#0FFH MOV P2,A LCALL DELAY NHAN: LJMP MOTSO NHAPSO: MOV A,P1 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 75  ÑOÀ AÙN TOÁT NGHIEÄP 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: GVHD :TRÖÔNG QUANG TRUNG ANL A,#0FH CJNE A,#10,KHACKHONG MOV A,#0 LJMP THAI KHACKHONG: CJNE A,#11,KHACSAO LJMP TTHOAT KHACSAO: CJNE A,#12,THAI LJMP TTHOAT THAI: INC R2 INC R0 MOV @R0,A TTHOAT: RETI TINHTIEN: SETB TF0 ;Cho timer chaïy MOV 4FH,#0 MOV 50H,#0 MOV R5,#20 MOV R4,#60 MOV A,60H CJNE A,#0,XET1 LJMP DAU0 XET1: CJNE A,#1,NOIHAT ;Kieåm tra soá goïi LJMP DAU1 DAU0: MOV A,61H CJNE A,#0,XET3 LJMP QUOCTE XET3: CJNE A,#9,LIENTINH LJMP DIDONG DAU1: MOV A,61H CJNE A,#1,XET4 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 76  ÑOÀ AÙN TOÁT NGHIEÄP 186: 187: 188: 189: 190: 191: 192: 193: 194: 195: 196: 197: 198: 199: 200: 201: 202: 203: 204: 205: 206: 207: 208: 209: 210: 211: 212: 213: 214: 215: 216: 217: 218: 219: 220: 221: 222: 223: GVHD :TRÖÔNG QUANG TRUNG LJMP HAI1 XET4: CJNE A,#0,XET5 LJMP HAI0 XET5: CJNE A,#9,XET6 LJMP DICHVUTD XET6: CJNE A,#7,GIAIDAPDB1 LJMP DICHVU17X DICHVU17X: MOV A,64H CJNE A,#9,XET8 LJMP DV_DIDONG XET8: CJNE A,#0,DV_LIENTINH LJMP DV_QUOCTE HAI1: MOV A,62H CJNE A,#0,SOCANTHIET LJMP DANGKY_QT HAI0: MOV A,62H CJNE A,#1,TONGDAI LJMP DANGKY_TN NOIHAT: MOV 7EH,#12 MOV 7FH,#2 LJMP TINH GIAIDAPDB1: LJMP GIAIDAPDB LIENTINH: MOV 7EH,#15 MOV 7FH,#12 LJMP TINH DIDONG : MOV 7EH,#25 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 77  ÑOÀ AÙN TOÁT NGHIEÄP 224: 225: 226: 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: GVHD :TRÖÔNG QUANG TRUNG MOV 7FH,#15 LJMP TINH QUOCTE: MOV 7EH,#150 MOV 7FH,#145 LJMP TINH TONGDAI: MOV 7EH,#40 MOV 7FH,#30 LJMP TINH DV_LIENTINH: MOV 7EH,#12 MOV 7FH,#12 LJMP TINH DV_DIDONG: MOV 7EH,#20 MOV 7FH,#20 LJMP TINH DV_QUOCTE: MOV 7EH,#90 MOV 7FH,#90 LJMP TINH SOCANTHIET: MOV 7EH,#0 MOV 7FH,#0 LJMP TINH DANGKY_TN: MOV 7EH,#25 MOV 7FH,#25 LJMP TINH DANGKY_QT: MOV 7EH,#150 MOV 7FH,#145 LJMP TINH DICHVUTD: MOV 7EH,#25 MOV 7FH,#25 LJMP TINH MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 78  ÑOÀ AÙN TOÁT NGHIEÄP 262: 263: 264: 265: 266: 267: 268: 269: 270: 271: 272: 273: 274: 275: 276: 277: 278: 279: 280: 281: 282: 283: 284: 285: 286: 287: 288: 289: 290: 291: 292: 293: 294: 295: 296: 297: 298: 299: GVHD :TRÖÔNG QUANG TRUNG GIAIDAPDB: MOV 7EH,#25 MOV 7FH,#25 LJMP TINH TINH: MOV A,7EH CLR 7FH LCALL TLAITIEN XUATTIEN: MOV R6,70H MOV R7,71H LCALL BINTOBCD MOV P0,#0FEH MOV P2,#0F0H LCALL DELAY MOV P0,#0FDH MOV P2,#0F0H LCALL DELAY MOV A,R6 ORL A,#0F0H MOV P0,#0FBH MOV P2,A LCALL DELAY MOV A,R6 SWAP A ORL A,#0F0H MOV P0,#0F7H MOV P2,A LCALL DELAY MOV A,R7 CJNE A,#0,CHUCNGAN LJMP HIENTHIGIO CHUCNGAN: ORL A,#0F0H MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 79  ÑOÀ AÙN TOÁT NGHIEÄP 300: 301: 302: 303: 304: 305: 306: 307: 308: 309: 310: 311: 312: 313: 314: 315: 316: 317: 318: 319: 320: 321: 322: 323: 324: 325: 326: 327: 328: 329: 330: 331: 332: 333: 334: 335: 336: 337: GVHD :TRÖÔNG QUANG TRUNG MOV P0,#0EFH MOV P2,A LCALL DELAY MOV A,R7 SWAP A ORL A,#0F0H CJNE A,#0F0H,TRAMNGAN LJMP HIENTHIGIO TRAMNGAN: MOV P0,#0DFH MOV P2,A LCALL DELAY HIENTHIGIO: MOV A,4FH MOV B,#10 DIV AB MOV R6,B SWAP A ORL A,R6 MOV R6,A MOV A,50H MOV B,#10 DIV AB MOV R7,B SWAP A ORL A,R7 MOV R7,A MOV A,R6 ORL A,#0F0H MOV P0,#0BFH MOV P2,A LCALL DELAY MOV A,R6 SWAP A ORL A,#0F0H MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 80  ÑOÀ AÙN TOÁT NGHIEÄP 338: 339: 340: 341: 342: 343: 344: 345: 346: 347: 348: 349: 350: 351: 352: 353: 354: 355: 356: 357: 358: 359: 360: 361: 362: 363: 364: 365: 366: 367: 368: 369: 370: 371: 372: 373: 374: 375: GVHD :TRÖÔNG QUANG TRUNG MOV P0,#7FH MOV P2,A LCALL DELAY CLR P3.6 MOV A,R7 ORL A,#0B0H MOV P0,#0FFH MOV P2,A LCALL DELAY MOV A,R7 SWAP A ORL A,#070H MOV P0,#0FFH MOV P2,A LCALL DELAY JB P3.4,HETDAOCUC LJMP XUATTIEN HETDAOCUC: CLR TR0 JB 7FH,GACMAY JB P3.3,GACMAY LJMP XUATTIEN GACMAY: JNB P3.3,NHACMAYN SETB 7FH LJMP XUATTIEN NHACMAYN: MOV 51H,70H ;Löu cöôùc cuoäc goïi MOV 52H,71H ;Löu cöôùc cuoäc goïi MOV P0,#0FFH MOV P2,#0FFH LJMP NHACMAY NGATTIMER: CLR TR0 MOV TL0,#LOW(-50000) MOV TH0,#HIGH(-50000) MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 81  ÑOÀ AÙN TOÁT NGHIEÄP 376: 377: 378: 379: 380: 381: 382: 383: 384: 385: 386: 387: 388: 389: 390: 391: 392: 393: 394: 395: 396: 397: 398: 399: 400: 401: 402: 403: 404: 405: 406: 407: 408: 409: 410: 411: 412: 413: GVHD :TRÖÔNG QUANG TRUNG SETB TR0 DJNZ R5,THOAT MOV R5,#20 INC 4FH DJNZ R4,THOAT MOV 4FH,#0 MOV R4,#60 INC 50H LCALL TLAITIEN THOAT: RETI TLAITIEN: ; Tính laïi cöôùc PUSH ACC MOV B,50H MOV A,7FH MUL AB CLR C ADD A,7EH JNC KHONGNHO INC B KHONGNHO: CLR C ADD A,51H PUSH ACC MOV A,B ADDC A,52H MOV 71H,A POP 70H POP ACC RET DELAY: MOV R3,#5 LOOP: MOV 6FH,#250 DJNZ 6FH,$ DJNZ R3,LOOP RET BINTOBCD: ;Ñoåi Hex ra thaäp phaân PUSH ACC PUSH B MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 82  ÑOÀ AÙN TOÁT NGHIEÄP 414: 415: 416: 417: 418: 419: 420: 421: 422: 423: 424: 425: 426: 427: 428: 429: 430: 431: 432: 433: 434: 435: 436: 437: 438: 439: 440: 441: 442: 443: 444: 445: 446: 447: 448: 449: 450: 451: GVHD :TRÖÔNG QUANG TRUNG MOV B,#10 LCALL DIV_16_8 PUSH B MOV B,#10 LCALL DIV_16_8 PUSH B MOV B,#10 MOV A,R6 DIV AB PUSH B SWAP A POP B ORL A,B MOV R7,A POP ACC SWAP A POP B ORL A,B MOV R6,A POP B POP ACC RET DIV_16_8: PUSH 02H PUSH ACC MOV R2,#16 CLR A DIVIDE: XCH A,R6 CLR C RLC A XCH A,R6 XCH A,R7 RLC A XCH A,R7 RLC A CJNE A,B,NOT_EQUAL SJMP A_GREATER_EQ_B NOT_EQUAL: MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 83  ÑOÀ AÙN TOÁT NGHIEÄP 452: 453: 454: 455: 456: 457: 458: 459: 460: 461: 462: 463: GVHD :TRÖÔNG QUANG TRUNG JC BELOW A_GREATER_EQ_B: SUBB A,B XCH A,R6 ORL A,#1 XCH A,R6 BELOW: DJNZ R2,DIVIDE XCH A,B POP ACC POP 02H RET END MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 84  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG KEÁT LUAÄN VAØ HÖÔÙNG PHAÙT TRIEÅN KEÁT LUAÄN: - Maïch ñöôïc laép raùp nhö sô ñoà nguyeân lyù - Maïch chaïy ñöôïc töøng phaàn, chöa keát hôïp ñöôïc thaønh chöông trình lôùn - Phaàn cöùng ñaùp öùng ñöôïc nhöõng yeâu caàu cô baûn: caûm bieán ñöôïc traïng thaùi nhaác maùy,xöû lyù ñöôïc thôøi gian, hieån thò ñöôïc thoâng soá treân maûng Led, tính giaù cuoäc goïi nhö phaàn meàm qui ñònh. HÖÔÙNG PHAÙT TRIEÅN ÑEÀ TAØI: - Ñeà taøi “ Maïch Tính Cöôùc Ñieän Thoaïi” cuûa em hieän taïi chæ thieát keá tính cöôùc cho moät thueâ bao - Vì vaäy höôùng phaùt trieån ñeà taøi naøy laø thieát keá maïch vaø laäp trình tính cöôùc cho nhieàu thueâ bao vaø giao tieáp vôùi maùy tính qua coång COM baèng RS-232 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 85  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG PHUÏ LUÏC GIÔÙI THIEÄU CAÙC IC SÖÛ DUÏNG TRONG MAÏCH VAØ DATASHEET 1.IC 74138: 1 2 3 4 5 6 7 8 A B C G2A G2B G1 Y7 GND VCC Y0 Y1 Y2 Y3 Y4 Y5 Y6 16 15 14 13 12 11 10 9 74138 IC74138 laø IC duøng ñeå giaûi maõ 3 sang 8 ñöôïc söû duïng ñeå taïo tín hieäu choïn chip. Döôùi ñaây laø baûng hoïat ñoäng cuûa IC. INPUTS ENABLE OUTPUTS SELECT G1 G2* C B X H X X L X X X H L L L H L L L H L L H H L L H H L H L H L H L H L H H H L H H * G2 = G2A = G2B A X X L H L H L H L H Y0 H H L H H H H H H H MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Y1 H H H L H H H H H H Y2 H H H H L H H H H H Y3 H H H H H L H H H H Y4 H H H H H H L H H H Y5 H H H H H H H L H H Y6 H H H H H H H H L H Y7 H H H H H H H H H L Trang 86  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 2. IC MT8870 Laø moät maïch thu tín hieäu DTMF hoaøn chænh tích hôïp caû hai chöùc naêng maïch loïc taùch baêng thoâng vaø giaûi maõ tín hieäu DTMF ra tín hieäu soá boán bit nhò phaân. IC naøyñöôïc saûn xuaát baèng coâng ngheä CMOS, kích thöôùc nhoû, ít toán naêng löôïng vaø khaûnaêngöùng duïngroäng raõi. IC ñöôïc toång hôïp goàm nhieàu maïch chöùc naêng (nhö hình): VDD Vrref INH VSS Maïch Bias PWDN Q1 Nhoùm loïc Maïch loïc DTMF IN+ Xaùc ñònh phím thoâng cao IN- Chuyeån ñoåi soá Q2 vaø choát Nhoùm loïc thoâng thaáp GS Q3 Q4 GT OSC1 OSC2 St/GT Maïch laùi St TOE SÔ ÑOÀ KHOÁI CAÁU TAÏOBEÂNTRONG CUÛA IC MT8870 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 87  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG Chöùc naêng loïc taùch tín hieäu DTMF laøm hai nhoùm tone cao vaø tone thaáp. Giaûi maõ 16 caëp tín hieäu DTMF (töông öùng vôùi 16 phím treân baøn phím maùy ñieän thoaïi) thaønh maõ 4 bit nhò phaân. IC coøn ñöôïc cung caáp theâm phaàn khuyeách ñaïi vi sai ôû ngoõ vaøo, coù theå ñieàu chænh ñöôïc ñoä lôïi. IC hoaït ñoäng vôùi dao ñoäng thaïch anh 3.5795Mhz IC coù phaàn choát ba traïng thaùi ôû ngoõ ra giao tieáp vôùi bus döõ lieäu. Moät soá öùng duïng cuûa IC MT8870: - Ñieàu khieån töø xa. - Maïch thu cho toång ñaøi. - Maïch tính cöôùc ñieän thoïai .v.v. Teân vaø chöùc naêng cuûa caùc chaân IC MT8870 IC MT8870 laø vi maïch ñöôïc ñoùng goùi trong voû goàm coù 18 chaân chia laøm hai haøng. Teân vaø chöùc naêng cuûa MT8870 ñöôïc trình baøy toùm taét ôû baûng döôùi ñaây. TEÂN CHÖÙC NAÊNG 1 IN+ Ngoõ vaøo khoâng ñaûo maïch khueách ñaïi. 2 IN- Ngoõ vaøo ñaûo maïch khuyeách ñaïi. 3 GS Chaân hoài tieáp cuûa ngoõ ra maïch khueách ñaïi ñeå gaén vôùi ñieän trôû beân ngoaøi ñeå ñieàu khieån heä soá khueách ñaïi. 4 Vref Nguoàn bias. 5 INH INHIBIT (input) : Khi chaân naøy ôû möùc cao thì seõ khoâng nhaän bieát caùc phím nhaán A, B, C, D. Thöôøng chaân ñöôïc ñaët ôû möùc thaáp. Chaân 6 PWDN Power Down (input): taùc ñoäng möùc cao. Duøng ñeå tieát kieäm MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 88  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG naêng löôïng khi khoâng söû duïng IC. 7 OSC1 Chaân taïo xung clock (input). 8 OSC2 Chaân taïo xung clock (output). Thaïch anh 3.579545Mhz ñöôïc noái vôùi hai chaân OSC1 vaø OSC2 taïo thaønh maïch dao ñoäng noäi. 9 VSS Ground : Chaân noái ñaát. 10 TOE Three State Output Enable (input): Ñieàu khieån xuaát döõ lieäu ôû ngoõ ra TOE=0 : ngoõ ra ôû traïng thaùi Hi-Z. TOE=1 : ngoõ ra laø döõ lieäâu Q1-Q4. 11-14 Q1-Q4 Three State Data (output) : Boán ngoõ ra ba traïng thaùi ñöôïc ñieàu khieån bôûi chaân TOE. 15 StD Delay Steering (output): Tích cöïc möùc cao, thoâng baùo tín hieäu DTMF ñaõ ñöôïc giaûi maõ ñöôïc choát ôû ngoû ra, saün saøng xuaát ra ôû chaân Q1-Q4 khi TOE=1. Trôû veà möùc logic thaáp khi ñieän aùp treân chaân St/GT nhoû hôn ñieän aùp ngöôõng (VTSt). 16 Est Early Steering (output) :tích cöïc möùc cao, baùo coù tín hieäu DTMF, taïo thôøi gian ñeå giaõi maõ tone sang tín hieäu sang soá. Khi maát tín hieäu DTMF seõ trôû veà möùc thaáp. 17 St/GT Steering Input/Guard time (Output) Bidirectional: Khi ñieän aùp chaân naøy lôùn hôn ñieän aùp ngöôõng (VTSt) thì ghi nhaän giaûi maõ moät tone vaø choát döõ lieäu ôû ngoû ra. Khi ñieän aùp nhoû hôn ñieän aùp ngöôõng thì giaûi phoùng thieát bò ñeå chuaån bò nhaän moät tone môùi. 18 VDD Nguoàn cung caáp, thöôøng laø +5V. TOÙM TAÉT TEÂN VAØ CHÖÙC NAÊNG CAÙC CHAÂN CUÛA IC MT8870 MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 89  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG BAÛNG GIAÛI MAÕ CUÛA MT8870 Digit TOE INH ANY L X 1 H X 2 H X 3 H X 4 H X 5 H X 6 H X 7 H X 8 H X 9 H X 0 H X * H X # H X A H L B H L C H L D H L A H H B H H C H H D H H ESt H H H H H H H H H H H H H H H H H L L L L Q4 Q3 Q2 Q1 Z Z Z Z 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 0 0 0 khoâng giaõi maõ caùc giaù trò naøy ngoû ra vaãn giöõ giaù trò cuõ cuûa laàn giaûi maõ tröôùc ñoù L = LOGIC LOW, H = LOGIC HIGH, Z = HIGH IMPEDANCE X = DON'T CARE MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 90  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG 3. OPTOCOUPLERS: Optocouple hay coøn goïi laø Optoisolator laø moät loïai linh kieän quang ñöôïc söû duïng ñeå taïo maïch caùch ly veà ñieän. Cho pheùp ngöôøi thieát keá maïch ñieàu khieån ngoõ ra baèng thay ñoåi naêng löôïng caáp cho ngoõ vaøo. Tuy nhieân hai phaàn ngoõ vaøo vaø ngoõ ra cuûa maïch ñöôïc caùch ly veà ñieän baèng moät ñieän trôû voâ cuøng lôùn. Linh kieän naøy coù theå chöùa photodiode, transistor, opamp…. hoïaêc caùc linh kieän khaùc coù theå giao tieáp ñöôïc vôùi maïch ñieàu khieån ñieàu khieån bôûi. Maïch ñieàu khieån thöôøng söû duïng Led hoàng ngoïai. Nguyeân taéc hoïat ñoäng cuûa linh kieän: Khi coù doøng ñieän chaïy qua Led, led seõ phaùt ra soùng hoàng ngoïai vaø döôùi taùc ñoäng cuûa soùng hoàng ngoïai boä phaän thu nhö photodiode seõ bò taùc ñoäng vaø daãn ñieän. Nhö vaäy hai maïch ngoõ vaøo vaø ngoõ ra ñöôïc caùch ly vôùi nhau. Maïch ñieàu khieån töø xa söû duïng optocoupler loïai PC 817 laø loïai coù phaàn thu söû duïng transistor (nhö hình). Input Diode Forward DC Current: 60mA Reverse DC Voltage: 6V Peak Forward Current: 3A (t p=10us) Power Dissipation: 100mW Derate Linearly: 1.33mW/°C above 25°C Output Transistor Collector-Emitter Voltage: 30V Emitter-Collector Voltage: 7V Collector-Base Voltage: 70V Power Dissipation: 300mW Derate Linearly: 2.00mW/°C above 25°C MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 91  ÑOÀ AÙN TOÁT NGHIEÄP GVHD :TRÖÔNG QUANG TRUNG TAØI LIEÄU THAM KHAÛO 1. MAÏNG SOÁ LIEÂN KEÁT DÒCH VUÏ ISDN NGUYEÃN MINH HOAØNG- PHAÏM HOÀNG LIEÂN NXB- ÑAÏI HOÏC QUOÁC GIA TP HOÀ CHÍ MINH 2. HOÏ VI ÑIEÀU KHIEÅN 8051 HOÀ TRUNG MYÕ NXB- ÑAÏI HOÏC QUOÁC GIA TP HOÀ CHÍ MINH 3. TRANG WEB GOOGLE: DATASHEET 4. MOÄT SOÁ LUAÄN VAÊN TOÁT NGHIEÄP CUÛA KHOÙA TRÖÔÙC 5. HEÄ THOÁNG VIEÃN THOÂNG THAÙI HOÀNG NHÒ – PHAÏM MINH VIEÄT NXB – GIAÙO DUÏC MAÙY TÍNH CÖÔÙC ÑIEÄN THOAÏI  Trang 92 

Ngày đăng: 09/10/2015, 23:35

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan