<< Előző oldal Vissza a tartalomjegyzékhez Következő oldal >>
13.3. Kétirányú digitális I/O áramkör (2. változat)
A közepes teljesítményű PIC mikrovezérlőkben a kétirányú digitális I/O áramkörök három változata található meg, akár együttesen is alkalmazva. Ez a fejezet az újabb, második változatot mutatja be, amely a kimeneti áramkörben különbözik az előző változattól. (Az áramköri vázlatokon az áramkorlátozó ellenállások, a digitális áramköri egységek tápfeszültség csatlakozásai és alaphelyzetbe állító áramkörei nem minden esetben szerepelnek.)
A következő ábrán a digitális kimeneti áramkör látható, amely a teljes port áramkörből csak a kimenetet megvalósító részegységeket tartalmazza.
13.3-1. Ábra
A kivezetéshez tartozó PORT regiszter írásakor az adatbusz logikai szintje bekerül a DT tárolóba. A PORT regiszter írása jel valójában a Q4 belső órajel. A DT tároló a Q4 órajel lefutó élére lép működésbe, vagyis a kimeneten a kimenő jel az utasításciklus legvégén jelenik meg.
A kivezetésre kapcsolt két dióda a túlfeszültségvédelmet látja el.
A következő ábrán a digitális bemeneti áramkör látható, amely a teljes port áramkörből csak a bemenetet megvalósító részegységeket tartalmazza.
13.3-2. Ábra
Ez az áramkör teljes egészében megegyezik az előző változattal.
A kivezetés feszültségszintje egy TTL vagy Schmitt-trigger bemenetű pufferen keresztül folyamatosan jelen van a DT tároló bemenetén. A Schmitt-trigger hiszterézise hozzávetőlegesen 0,1V.
A kivezetéshez tartozó PORT regiszter olvasásakor a kivezetés logikai szintje bekerül a DT tárolóba és egyúttal megjelenik az adatbuszon is. A PORT regiszter olvasása jel valójában a Q2 belső órajel. A DT tároló a Q2 órajel felfutó élére lép működésbe, vagyis a kivezetés logikai szintje kis késéssel belép a tárolóba és megjelenik annak kimenetén. Ha a kivezetés szintje ezután meg is változik, az már nincs hatással a tárolóba beíródott értékre. A DT tároló kimenetén elhelyezett három állapotú puffer kimenetét is a Q2 órajel engedélyezi, így az adatbuszon a bemenő jel csak a Q2 logikai "1" szintjének ideje alatt van jelen.
Egy kétirányú port esetében szükség van az adatirány kiválasztására és a ki- és bemenő áramkörök működésének ez alapján történő engedélyezésére.
A következő ábrán a teljes kétirányú port áramkör látható.
13.3-3. Ábra
A DT1 tároló a kimenő jelet tárolja.
A DT2 tároló az adatirány jelet tárolja.
A DT3 tároló a bemenő jelet tárolja.
A tárolók Ck beléptető bemenete a bemenő jel lefutó élét érzékeli és erre lép működésbe.
Az olvasást a Q2, az írást a Q4 belső órajel vezérli.
A kivezetéshez tartozó TRIS adatirány kiválasztó regiszter írásakor az adatbusz logikai szintje a DT2 tárolóba kerül. Ha a tároló állapota logikai "0", a kivezetés kimenetként, ha "1", bemenetként működik. A mikrovezérlő bekapcsolási reset folyamatának hatására a DT2 tároló kimenete automatikusan logikai "1" szintűre áll be, vagyis a kivezetés nagy-impedanciás bemenetként konfigurálódik.
A TRIS regiszter olvasásakor a DT2 tároló tárolt értéke az adatbuszra kerül.
Az I/O kivezetések kezelése bizonyos esetekben akaratlan hibás működéshez vezethet. A hibaforrásokat az előző fejezet részletesen bemutatja.
Tudomány és Technika (test@t-es-t.hu)
<< Előző oldal Vissza a tartalomjegyzékhez Vissza a lap tetejére Következő oldal >>