Xem mẫu

  1. Chương 16 : GIAO TIEÁP GIÖÕA VI XÖÛ LYÙ VÔÙI 8255A Vi maïch 8255A coù theå giao tieáp vôùi vi xöû lyù theo 2 kieåu: kieåu nhaäp/xuaát (kieåu I/O) vaø kieåu boä nhôù. Khi vi xöû lyù giao tieáp vôùi 8255A theo kieåu I/O noù chæ duøng ñöôïc 8 ñöôøng ñòa chæ töø A0 – A7 maø thoâi coøn khi giao tieáp kieåu boä nhôù, noù duøng ñöôïc caû 16 ñöôøng ñòa chæ, vì vaäy dung löôïng giao tieáp kieåu I/O thaáp hôn dung löôïng giao tieáp kieåu boä nhôù. 1. Giao tieáp kieåu I/O. Khi thieát keá vi xöû lyù giao tieáp vôùi 8255A theo kieåu I/O thì döõ lieäu seõ ñöôïc truy xuaát baèng 2 leänh : IN addr-port vaø OUT addr-port. Döõ lieäu giao tieáp luoân chöùa trong thanh ghi A. Ñòa chæ coång (addr-port) coù ñoä daøi laø 8 bit. Cuõng gioáng nhö boä nhôù, vi xöû lyù coù theå giao tieáp vôùi nhieàu vi maïch 8255, vôùi 8 ñöôøng ñòa chæ thì coù taát caû 256 ñòa chæ, maø moãi vi maïch chieám 4 ñòa chæ (3 coång vaø thanh ghi ñieàu khieån) neân soá vi maïch 8255 toái ña coù theå giao tieáp cuûa vi xöû lyù laø 256/4 = 64 vi maïch.2A ñeán CS\ cuûa 8255A -1 Khi keáA3noái giöõa vi xöû lyù vôùi vi maïchn 8255A8255A -2 ng ñòa t DECODER ñeá CS\ cuûa thì ñöôø chæ A0 vaø A1 duøng ñeå TOa4 choïn caùc coång vaø nthanh a 8255A -3 khieån, 2 löï LINE ñeá CS\ cuû ghi ñieàu coøn caùc ñöôøng ñòa chæ coøn laïi töø A2 – A7 nduøng a 8255A -4 n vi ñeá CS\ cuû ñeå löïa choï maïch hoaït ñoäng, thoâng thöôøng caùc ñöôøng ñòa chæ naøy ñöôïc ñöa vaøo vi maïch giaûi maõ roài caùc ngoõ ra cuûa vi maïch giaûi maõ seõ ñöa ñeán CS\ cuûa caùc vi maïch 8255A. Moät ví duï khi thieát keá vi xöû lyù giao tieáp vôùi 4 vi maïch 8255A: Sô ñoà keát noái nhö hình veõ : (vi maïch 74139).
  2. A2 ñeán CS\ cuûa 8255A -1 A3 DECODER ñeán CS\ cuûa 8255A -2 2 TO 4 LINE ñeán CS\ cuûa 8255A -3 ñeán CS\ cuûa 8255A -4 Hình 6.9: Sô ñoà keát noái vi xöû lyù vôùi vi maïch 8255A Trong ñoù, ñöôøng A0 vaø A1 ñöôïc noái vôùi 8255A nhö ñaõ trình baøy ôû treân, ñöôøng A2, A3 ñöôïc ñöa vaøo vi maïch giaûi maõ 2 ñöôøng thaønh 4 ñöôøng ñeå löïa choïn vi maïch 8255A. Töø ñoù, ta coù baûng ñòa chæ cuûa caùc vi maïch 8255A nhö sau : IC A7 A6 A5 A4 A3 A2 A1 A0 Hex 8255A 0 0 0 0 0 0 0 0 00 -1 0 0 0 0 0 0 1 1 03 8255A 0 0 0 0 0 1 0 0 04 -2 0 0 0 0 0 1 1 1 07 8255A 0 0 0 0 1 0 0 0 08 -3 0 0 0 0 1 0 1 1 0B 8255A 0 0 0 0 1 1 0 0 0C -4 0 0 0 0 1 1 1 1 0F 2. Giao tieáp kieåu boä nhôù. Khi thieát keá 8255A giao tieáp vôùi vi xöû lyù theo kieåu boä nhôù thì chöùc naêng cuûa 8255A khoâng thay ñoåi, chæ thay ñoåi kieåu truy xuaát. Vôùi kieåu I/O thì ñòa chæ cuûa caùc coång vaø thanh ghi ñieàu khieån laø 8 bit thì ôû kieåu boä nhôù, ñòa chæ cuûa caùc coång vaø thanh
  3. ghi ñieàu khieån laø 16 bit, khi ñoù caùch keát noái cuõng töông töï nhö keát noái vi xöû lyù vôùi boä nhôù thoâng thöôøng, vaø moãi vi maïch 8255A cuõng ñöôïc coi nhö laø boä nhôù vôùi 4 oâ nhôù: 3 coång vaø thanh ghi ñieàu khieån, truy xuaát döõ lieäu baèng caùch duøng caùc leänh truy xuaát döõ lieäu cuûa boä nhôù. Caùch keát noái töông töï nhö khi vi xöû lyù keát noái vôùi boä nhôù neân ôû ñaây khoâng caàn trình baøy laïi.
  4. PHAÀN CÖÙNG VAØ PHAÀN MEÀM GIAO TIEÁP I. LÖU ÑOÀ VAØ CHÖÔNG TRÌNH TRUYEÀN DÖÕ LIEÄU 1. LÖU ÑOÀ TRUYEÀN DÖÕ LIEÄU: BEGIN KHÔÛI PHAÙT: GHI TÖØ CHEÁ ÑOÄ GHI LEÄNH : DTR, TxEN ÑOÏC TRAÏNG THAÙI: DSR, TxRDy Kieåm tra saün saøng: DSR = TxRDY =1 GHI SOÁ LIEÄU RA HÌNH 7.1 THANH GHI ÑEÄM SOÁ LIEÄU GHI LEÄNH PHAÙT: RTS END
  5. BEGIN 2. LÖU ÑOÀ NHAÄN DÖÕ KHÔÛI PHAÙT: GHI TÖØ LIEÄU: CHEÁ ÑOÄ GHI LEÄNH : DTR, A{RxEN,RTS ÑOÏC TRAÏNG THAÙI: DSR, RxRDy Kieåm tra saün saøng :DSR= RxRDY=1 HÌNH 7.2 ÑOÏC SOÁ LIEÄU TÖØ THANH GHI ÑEÄM SOÁ LIEÄU END