loader
Foto

Szimuláció megvalósítása az MPLABX keretkörnyezetben

Könnyen előfordulhat, hogy a PIC32 család megismerésének során nem rendelkezünk (még) fejlesztőpanellel, illetve programozóval. Az MPLABX használatakor ugyanakkor lehetőségünk nyílik arra, hogy szimulátort alkalmazzunk egy projekt elkészítése során. Ebben a cikkben áttekintjük tehát a szimulátor használatát.

Indítsuk el az MPLABX-et és az új projekt létrehozásakor lehetőségünk nyílik kiválasztani a programozók helyett a szimulátort (1. ábra).

kep
1. ábra   Szimulátor kiválasztása egy új projekt létrehozásakor
 

A szimulátor kiválasztására természetesen később is lehetősségünk van. Ha a projekt "Properties" linkjére kattintunk, akkor új eszközt tudunk kiválasztani, módosítani tudjuk a "C" fordítót, de akár a programozók kiválasztása helyett a szimulátort is alkalmazhatjuk (2. ábra).

kep
2. ábra   A projekt néhány tulajdonságának módosítása
 

Ahhoz, hogy az MPLABX szimulátorát alkalmazni tudjuk, további beállítások szükségesek. Kattintsunk a "Tools/Options" menüpontra (3. ábra).

kep
3. ábra   "Tools/Options" menü
 

Ezután a felbukkanó "Options" ablakban az "Embedded" fülnél a "Debug startup"-nál állítsuk be a "Halt at Main""-t (4. ábra).

kep
4. ábra   "Halt at Main" beállítása
 

Adjuk hozzá a projektünkhöz a következő kódot.

#include <p32xxxx.h>

#define LED0        LATDbits.LATD0
#define LED0Tg()    { LED0 = ~LED0; }

int gDarab;

void Keses(unsigned int hatar);

main()
{
    TRISB = 0x0000;
    TRISD = 0x0000;

    while(1)
    {
        LED0Tg();
        Keses(10);
        LATB = gDarab;
    }
}

void Keses(unsigned int hatar)
{
    int k;
    for(k = 0; k < hatar; k++);
    gDarab++;
}

 

Ebben a példában találunk makrót, globális változót, és még egy függvényt is. A "Window/Debugging" menü segítségével (5. ábra) tudunk különböző ablakokat megjeleníteni, amelyeken a szimulációs eredmények majd nyomon követhetők. Megjeleníthetünk tehát változókat, speciális file regisztereket (SFR), sőt, az I/O regiszter értékei külön ablakban is nyomon követhetők, módosíthatók.

kep
5. ábra   Szimulációs lehetőségek
 

A Toolbar-on lévő "Debug Main Project" ikonra kattintva megtörténik a példa alkalmazásunk lefordítása, és megjelenik a Toolbar-on a következő menüsor (6. ábra).

kep
6. ábra   Plusz menülehetőségek a Toolbar-on
 

Ekkor megjelennek a 6. ábrán lévő ablakok is.

kep
6. ábra   Ablakok, ahol a szimulációs eredménye nyomon követhetők
 

A "Watches" fülnél kattintsunk az "<Enter new watch>" sorra, és megjelenik a "New Watch" ablak (7. ábra), ahol azokat a globális változókat, illetve speciális file regisztereket tudjuk felvenni, amelyeknek az értékét a szimuláció során szeretnénk nyomon követni.

kep
7. ábra   Új globális változók, SFR-ek felvétele
 

Most már készen állunk arra, hogy a szimulációt elindítsuk. Elindíthatjuk a "Play" ikonra (Continue (F5)) történő kattintással, ekkor érdemes beállítani töréspontokat is. A másik lehetőség az, hogy a szimulációt lépésről lépésre hajtjuk végre. Ekkor a "Step Into (F7)" ikonra kell kattintani (ezt persze többször...).

A szimulációs eredményt mutatja a 8. ábra, ahol az MPLABX pirosssal jelöli azt az értéket, amelyik a korábbi szimulációs eredményhez képest megváltozott.

kep
8. ábra   Első szimulációs eredmény
 

Újabb szimulációs eredményt láthatunk a 9. ábrán, ahol már a függvényhívás is nyomon követhető. Láthatjuk az átadott paraméter (hatar) értékét, illetve a lokális "k" változó értékét is. A szimulációs eredményen látszik, hogy a "Keses()" függvény sikeresen lefutott (de még nem léptünk ki a függvényből), a "gDarab" globális változó értéke még nem változott meg (ez a következő lépésben történik meg), illetve, a "D" port 0. bitje logikai 0-ból 1-re váltott. Ez az értékváltás még a függvény meghívása előtt megtörtént.

kep
9. ábra   Függvényhívás eredménye a szimulációs ablakok egyikében
 

Látható tehát az, hogy az MPLABX-ben található szimulátor használata kényelmes, könnyen alkalmazható akár közepes méretű projekteknél is.



Egyéb cikkek

További cikkeink ebben a témakörben

Régebbi cikkeink

Október közepén elindítjuk az Atmel 8 bites mikrovezérlőkről szóló sorozatunkat. Ehhez használnunk kell természetesen egy fejlesztőkörnyezetet is. Több ilyen is létezik, például a WinAVR, vagy az Atmel Studio. Mi az Atmel Studio-t fogjuk használni, e. . . .

A PIC18F mikrovezérlők ma is népszerű a fejlesztők körében. Noha 8 bites architektúráról beszélünk, számos érdekes és hasznos alkalmazás megvalósítható vele. Elég csak az USB-re, vagy akár az Ethernetre gondolnunk. Ezért a Szerkesztőség egy sorozat k. . . .

A Microchip által javasolt fejlesztőkörnyezet az MPLABX, amely felváltja az MPlab-ot. Használata nehézkesnek tűnhet, ezért megnézzük ennek az IDE környezetnek a használatát, készítünk egy egyszerű projektet, amely egy PIC32 mikrovezérlőre épül.. . . .