Vissza a főoldalra    Vissza a PIC főoldalra

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

 


7.1. A megszakítások általános jellemzői


      A közepes teljesítményű PIC mikrovezérlők felépítése lehetővé teszi belső perifériaesemények, valamint külső események kezelését megszakításos rendszerrel. Minden egyes megszakításforrás külön-külön vezérlőbittel engedélyezhető és tiltható, és a megszakítások együttesen is engedélyezhetők és tilthatóak egyetlen globális megszakításvezérlő bittel (GIE).
      A megszakításkérés hatására a mikrovezérlő normál sorrendű programvégrehajtása megszakad, a GIE bit nullára vált és a programszámláló értéke a verembe kerül. A programszámlálóba a 0004h megszakítás vektor kerül. A programmemóriában ettől a címtől kezdve kell elhelyezni a megszakításkezelő szubrutint.
      Mivel minden egyes megszakításforráshoz tartozik egy-egy jelzőbit, ezek vizsgálatával a megszakításkezelő szubrutin képes meghatározni a megszakítás típusát, és ennek megfelelően kiválasztani a válaszlépéseket. A megszakítások jelzőbitjeit szoftveresen kell törölni a megszakításkezelő szubrutinból. Ennek elmulasztása esetén a GIE bit automatikus visszaállásakor a megszakítás újrahívódik, majd újra és újra..., vagyis a programvégrehajtás végtelen ciklusba kerül. Ez a tulajdonság felhasználható az egyszerre befutó megszakításkérések prioritásos kezelésére. A megszakításkezelő szubrutin a jelzőbiteket fontossági sorrendben kell, hogy megvizsgálja és az első megtalált kérésnek megfelelő programrészt hajtja végre az adott jelzőbit nullázásával együtt. Így a további beérkezett kérések jelzőbitjei aktívak maradnak és a megszakításkezelő szubrutin végén, a GIE bit "1"-re váltásakor újabb megszakítás generálódik.
      A megszakításkezelő szubrutin befejező utasítása a RETFIE utasítás, amelynek hatására:
     ˇ a visszatérési cím a veremből a programszámlálóba töltődik;
     ˇ és a GIE bit "1"-re vált, tehát a megszakítások újra engedélyezettek lesznek.

      Az egyes mikrovezérlők a beépített perifériáktól függően a következő megszakításforrásokat tartalmazhatják:
     ˇ az INT csatlakozón fellépő külső megszakítás;
     ˇ Timer0 túlcsordulás megszakítás;
     ˇ Timer1 túlcsordulás megszakítás;
     ˇ Timer2 értékhatár átlépés megszakítás;
     ˇ A port állapotváltozás megszakítás (PIC16F875);
     ˇ B port felső négy bit állapotváltozás megszakítás;
     ˇ C port felső négy bit állapotváltozás megszakítás (PIC14000);
     ˇ GPIO port bitek állapotváltozás megszakításai (PIC12xxx);
     ˇ Komparátor átbillenés megszakítás;
     ˇ Párhuzamos Slave port (PSP) megszakítás;
     ˇ USART megszakítások;
     ˇ SSP megszakítás;
     ˇ CCP modul megszakítás;
     ˇ A/D átalakító konverzió vége megszakítás;
     ˇ A/D átalakító számláló túlcsordulás megszakítás (PIC14000);
     ˇ LCD modul megszakítás;
     ˇ Adat EEPROM írás vége megszakítás;
     ˇ Telep kimerülés-jelző modul (LVD) megszakítás;
     ˇ USB megszakítás.

      A felsorolt megszakításforrások jelzőbitjei az INTCON és PIRx; az engedélyezőbitek pedig az INTCON és PIEx vezérlő regiszterekben vannak elhelyezve.

      A jelzőbitek a megszakításforrás engedélyezettségétől függetlenül működnek, tehát minden esetben jelzik az adott esemény létrejöttét.

      Az INTCON regiszterben található GIE globális megszakítás engedélyező bitet nullázó utasítás hatására a már elfogadott megszakításkérések is érvénytelenítődnek. Ha a megszakítás elfogadás már annyira előrehaladott állapotú, hogy a GIE nullázó utasítás végrehajtása után a megszakítás kezelő szubrutin első utasítása következne, akkor a mikrovezérlő egy NOP utasítást hajt végre. Természetesen a megszakításkérés ilyenkor sem veszik el, csak várakozik a GIE bit "1"-re állításáig.

      A közepes teljesítményű PIC mikrovezérlők képesek kilépni a SLEEP üzemmódból bármely engedélyezett megszakításkérés hatására. A megszakításra történő ébredés és az azt követő működés a SLEEP üzemmód leírásánál már bemutatásra került.

  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