Vissza a főoldalra    Vissza a PIC főoldalra

<< Előző oldal   Vissza a tartalomjegyzékhez   Következő oldal >>

 


15.3. Timer 1


      A Timer 1 egy 16-bites felfelé számláló áramkör. (Nincs minden mikrovezérlő típusba beépítve.) Főbb jellemzői:
     ˇ a két 8-bites számlálólánc (TMR1L, TMR1H) és a T1CON üzemmód beállító vezérlő regiszter is az adatmemória-területen van elhelyezve, így kezelésük megegyezik egy általános adatregiszterével;
     ˇ tetszőleges időpontokban írható és olvasható, vagyis kezdőértékkel feltölthető, illetve állapota bármikor megvizsgálható;
     ˇ 3-bites programozható előosztóval rendelkezik, 1:1, 1:2, 1:4 és 1:8 beállítható osztási arányokkal;
     ˇ választható külső vagy belső léptetőjel, ahol a belső jel csak az utasításciklus órajele, tehát az oszcillátor órajelének negyede lehet;
     ˇ választható szinkron vagy aszinkron léptetés;
     ˇ a külső jel felfutó élére történik a léptetés;
     ˇ külön LP üzemmódú oszcillátor áramkör;
     ˇ túlcsordulás hatására megszakítást kezdeményezhet (megszakítás logika);
     ˇ a CCP modul számlálási feladatait is elláthatja kiolvasási és összehasonlítási üzemmódokban;
     ˇ egyes újabb mikrovezérlő típusoknál egy beépített tiltókapu áramkör segítségével külső vagy egy meghatározott belső jellel a számláló léptetése tiltható.

      A Timer 1 áramkörének elvi vázlata:

A Timer1 blokkvázlata
15.3-1. Ábra

Vissza a lap tetejére

      Az ábrán megfigyelhető, hogy a Timer 1 számláló áramkör léptetőjele:
     ˇ a T1CKI mikrovezérlő bemenetre kapcsolt külső jel;
     ˇ a T1OSO és T1OSI mikrovezérlő bemenetek közé kapcsolt kvarckristállyal kiegészített (T1OSC) belső oszcillátor áramkör órajele;
     ˇ vagy a mikrovezérlő órajelgenerátor frekvenciájának negyede lehet.
      A léptető jel kiválasztása a T1CON vezérlő regiszterben elhelyezett TMR1CS és bitek beállításával végezhető el.
      A külső léptetőjel állandó frekvenciájú órajel vagy véletlenszerű impulzus-sorozat egyaránt lehet, ha az, a szükséges időzítési feltételeknek megfelel.
      A 3-bites előosztó áramkör Timer 1-hez rendelése és az osztási arány beálítása a T1CON vezérlő regiszterben elhelyezett T1CKPS0 és T1CKPS1 bitek beállításával történhet.

      A Timer 1 számláló beállítható üzemmódjai:
     ˇ szinkron időzítő üzemmód, amikor a számláló, illetve az előosztó léptetését a belső utasításciklus órajele végzi, így a léptetés minden esetben szinkronizáltan megy végbe (TMR1CS = "0"). A mikrovezérlő készenléti állapotában, a számláló léptetése az órajel leállítása miatt természetesen szünetel.
     ˇ szinkron számláló üzemmód, amikor a számláló, illetve az előosztó léptetését egy külső léptető jel vagy a T1OSC beépített oszcillátor áramkör végzi és a beépített szinkronizáló áramkör aktiválva van (TMR1CS = "1", = "0"). Ebben az üzemmódban, a mikrovezérlő készenléti állapotában, a számláló léptetése szünetel a szinkronizáló áramkör kikapcsolása miatt, de az előosztó továbbra is működik.
     ˇ aszinkron számláló üzemmód, amikor a számláló, illetve az előosztó léptetését egy külső léptető jel vagy a T1OSC beépített oszcillátor áramkör végzi és a beépített szinkronizáló áramkör kikapcsolt helyzetű (TMR1CS = "1", = "1"). A számláló léptetése a mikrovezérlő készenléti állapotában is folytatódik és túlcsordulás esetén ébresztést vagy megszakítást generálhat. Az aszinkron számláló üzemmód kiválasztása tiltja a Timer 1 használatát a CCP modul számlálási feladataihoz. A Timer 1 számláló regiszterének növelése a külső léptető jelhez képest minimális késéssel történik meg, ezért az áramkör kiválóan alkalmas valós idejű időóra alkalmazásokhoz.

Vissza a lap tetejére

      A Timer 1 léptető jele egy szinkronizáló áramkörrel késleltethető olyan mértékben, hogy a léptetés egy jól meghatározott időpontban, a Q4 órajelciklus elején történjen meg, így ez a folyamat nincs hatással egy esetleges érték kiolvasásra, amely a Q2 órajelciklusban megy végbe. A szinkronizáló áramkör a T1CON vezérlő regiszterben elhelyezett vezérlő bittel kapcsolható be. Az áramkör késleltetése 3..7 órajelciklus, vagyis két utasításciklusnál minden esetben rövidebb.
      A Timer 1 számláló regiszterei, a TMR1L és TMR1H regiszterek az általános adatmemória regiszterekhez hasonlóan tetszőleges időpontban írhatóak és olvashatóak, nullázhatóak, kezdőértékkel feltölthetőek, pillanatnyi értékük tesztelhető. A TMR1L és TMR1H regiszterek a mikrovezérlő indulásakor nem kapnak előre meghatározott kezdőértéket, valamint Reset-események hatására értéküket nem változtatják. A TMR1L vagy TMR1H regiszterek írásakor a hozzárendelt előosztó léptetőregisztere nullázódik.
      Egy 16-bites számlálóérték kiolvasásánál vagy értékadásánál felléphet az a helyzet, amikor a két 8-bites regiszter olvasása, illetve írása közben megy végbe a regiszterek közötti átvitel, így az érték hibás lehet. A kiolvasásra és értékadásra a 15.03.03. fejezetben bemutatott algoritmusokat kell használni!

      A TMR1H regiszter túlcsordulásakor (átváltás H'FF'-ről H'00'-ra) a PIRx vezérlő regiszterben elhelyezett TMR1IF bit logikai "1" értékre áll be. Ha a Timer 1 túlcsordulás megszakítás a PIEx vezérlő regiszterben elhelyezett TMR1IE bittel engedélyezve van, valamint a periféria megszakítás és a megszakítások globálisan is engedélyezettek, létrejön egy megszakításkérés. (A TMR1IF jelzőbitet szoftverből kell nullázni.) Ez a megszakításkérés aszinkron számláló üzemmódban, a mikrovezérlő SLEEP állapotból való ébresztésére is felhasználható, mivel a Timer 1 ebben az üzemmódjában SLEEP állapotban is léptethető.

      A Timer 1 megszakítás logikája:

A Timer1 megszakítás logikája
15.3-2. Ábra

Vissza a lap tetejére

      Egy tiltókapu áramkörrel felszerelt Timer 1 számláló elvi vázlata (PIC16F688):

A tiltható Timer1 elvi vázlata
15.3-3. Ábra

      A tiltókapu áramkör a T1CON vezérlő regiszterben elhelyezett TMR1GE vezérlő bittel aktiválható és a T1GINV bittel még az aktiváló logikai szint is kiválasztható.
      A tiltókapu vezérelhető a mikrovezérlő bemenetéről vagy a C2 analóg komparátor kimenetéről, amely források közül a CMCON1 analóg komparátorokat vezérlő regiszterben elhelyezett T1GSS vezérlő bit választ.
      A tiltókapu áramkör lehetővé teszi a számláló gyors megállítását digitális vagy analóg események bekövetkeztekor. Ez a jellemző nagyban egyszerűsíti számos különleges áramkör, például a delta-szigma A/D átalakítók megvalósítását.

      A Timer 1 számlálót részleteiben bemutató fejezetek:

Vezérlő regiszterek
Külső léptetés
Olvasás, írás
Oszcillátor áramkör

 

  Tudomány és Technika (test@t-es-t.hu)


 

<< Előző oldal   Vissza a tartalomjegyzékhez   Vissza a lap tetejére   Következő oldal >>

Vissza a főoldalra    Vissza a PIC főoldalra