<< Előző oldal Vissza a tartalomjegyzékhez Következő oldal >>
16.3. Compare üzemmód
A Compare (összehasonlítási) üzemmód működésekor a külső vagy belső jellel léptetett 16-bites Timer 1 számláló értéke kerül összehasonlításra a CCPRxL, CCPRxH regiszterpár beállított értékével. Az egyezés hatására a következő események generálódhatnak:
ˇ
a CCPx kivezetés logikai "1"-re váltása;
ˇ
a CCPx kivezetés logikai "0"-ra váltása;
ˇ
a PIRx regiszterben elhelyezett CCPxIF jelzőbit "1"-re váltása, vagyis megszakításkérés indul;
ˇ
a "Belső esemény indítása" jel (Special Event Trigger) aktiválása.
A Compare üzemmód kimenő jelének kiválasztása a CCP modul CCPxCON vezérlő regiszter alsó négy bitjének beállításával lehetséges:
Érték | Működés |
---|---|
0000 | CCP modul kikapcsolva |
1000 | Compare működés a kimeneten felfutóéllel, megszakításkéréssel |
1001 | Compare működés a kimeneten lefutóéllel, megszakításkéréssel |
1010 | Compare működés kimenő jel nélkül, megszakításkéréssel |
1011 | Compare működés kimenő jel nélkül, "Belső esemény indítása" jellel, megszakításkéréssel |
A Compare üzemmód működésének blokkvázlata:
16.3-1. Ábra
A Compare működés alkalmazásának lépései:
ˇ
a CCPx kivezetés iránybeállítása kimenetnek (ha szükséges);
ˇ
a Timer 1 számláló kezdőértékének beállítása (általában nullázás);
ˇ
a Timer 1 léptető jelének kiválasztása (csak szinkron léptetéssel működtethető);
ˇ
az összehasonlító érték betöltése a CCPRxL, CCPRxH regiszterpárba;
ˇ
a Compare üzemmód indítása és kimenő jelének kiválasztása a CCPxCON vezérlő regiszter CCPxM0, CCPxM1, CCPxM2 és CCPxM3 vezérlő bitjeinek beállításával;
ˇ
a Timer 1 indítása;
ˇ
a Compare esemény (egyezés) fellépése után a CCPxIF megszakításkérő jelzőbitet szoftverből kell nullázni.
A Compare üzemmód felhasználható:
ˇ
külső események hardveres számlálására és határérték-figyelésére (amikor a Timer 1 számlálót egy külső jel lépteti);
ˇ
külső folyamatok hardveres időzítési feladataira (a megadott idő letelte után a CCPx kivezetés leállítja a külső folyamatot);
ˇ
hardveres belső időzítési feladatokra (a megadott idő letelte után megszakítás generálódik);
ˇ
programozható ütemadó alkalmazások (mivel a "Belső esemény indítása" jel alkalmazásával a Timer 1 futási ciklusának hossza programozhatóvá válik);
ˇ
automatikus A/D-konverzió ismétlő megoldás (mivel a "Belső esemény indítása" jel A/D-konverziót indíthat).
A Timer 1 CCP modulhoz történő alkalmazásához, annak időzítő vagy szinkron számláló üzemmódban kell működnie. Aszinkron számláló üzemmódban a Capture üzemmód tiltva van.
A CCP modul, Compare üzemmód esetében, a CCPx kivezetéshez (amely általános I/O kivezetésként is működhet) a 13.10. fejezetben bemutatott módon kapcsolódik.
A Compare üzemmód azon eseteiben, amikor a CCPx kivezetés felhasználásra kerül, a kivezetés automatikusan a kiválasztott kimenő jelnek (fel- vagy lefutó él) megfelelő alapszintre ("0" vagy "1") áll be.
A PIRx regiszterben elhelyezett CCPxIF jelzőbit szoftverből történő logikai "1"-re állításával kiváltott megszakításkérés esetén a CCPx kivezetés állapota nem változik meg.
A mikrovezérlő készenléti üzemmódjának aktiválásakor a Timer 1 szinkron léptetése leáll, így a modul kimenő jelei nem változnak, megtartják a készenléti üzemmód indításakor érvényes logikai állapotukat. Az "ébresztést" követően a Compare működés folytatódik, de az időzítési vagy számlálási feladat már hibás eredményre vezet.
Bármely Reset-esemény hatására a CCP modul kikapcsolt helyzetbe áll be.
Tudomány és Technika (test@t-es-t.hu)
<< Előző oldal Vissza a tartalomjegyzékhez Vissza a lap tetejére Következő oldal >>