Indítsuk el az Atmel Studio-t és hozzunk benne létre egy projektet, a használni kívánt mikrovezélrő ATmega8.
Írjuk meg az első ábrán látható programot (ez a kép már a szimulációnál készült). A main() függvény tartalmaz int, float és char változók deklarálását, illetve egy függvény meghívását is. A változók megadása után beállítjuk a B, a C és a D portregiszterek irányát kimenetre.

1. ábra Példaprogram
A while végtelenciklusban a portok mindig ugyanazt az értéket kapják. Tekintettel arra, hogy portokról beszélünk, a végtelen ciklust így is megadhattuk volna :
PORTB = ch2;
PORTC = f;
PORTD = Szoroz(x,y);
while(1);
Kattintsunk a Toolbar-on a No Tool-ra (2. ábra), ezután lehetőségünk lesz kijelölni, hogy a szimulátort szeretnénk használni (3. ábra).

2. ábra "No Tool"

3. ábra A szimulátor kiválasztása
A szimulátor kiválasztása után lehetőségünk nyílik megadni egy stimuli file-t, amelynek segítségével a szimuláció könnyebbé válik, de nekünk ilyen jelenleg nincs.
Ezután kattintsunk a Toolbar-on lévő Start Debugging-ra, vagy nyomjuk meg az F5-öt (4. ábra). Ekkor a Debug üzemmódban lehetőségünk nyílik a szimulációs eredmények vizsgálatára.

4. ábra Debug üzemmód indítása
Vizsgáljuk meg először a regisztereket. Ehhez a Toolbar-on kattintanunk kell a Registers ikonra (5. ábra).
5. ábra Register ikon, Alt+5
Ezután szimuláljuk lépésenként (F11) a programunk működését. Annál a regiszternél, ahol az érték változik, piros színnel kerül jelölésre (6. ábra).

6. ábra R18-as regiszter értéke megváltozik
Látjuk a 6. ábrán, hogy az R18-as regiszter értéke 0x68 (decimális : 104) lett, tehát a ch2 változó értéke itt került eltárolásra.
Most kattintsunk a Toolbar-on a Processors ikonra és ismételjük meg a szimulációt, haladjunk ismét lépésenként (7. ábra). Ennél az ablaknál szintén meg tudjuk nézni az előző 32 regiszter tartalmát, de itt további lehetőség is van. Láthatjuk a PC értékét, a veremmutatót, de még a Status regisztert is.

7. ábra Processor ablak
Nézzük most meg az IO ablakot, ezen belül például a PORTB-t. Ha a szimulációt lépésenként hajtjuk végre, akkor láthatjuk piros színnel jelölve az aktuális értékváltozást. Először a DDRB regiszternek változik meg az értéke, 0xFF-et (1111 1111) írunk be, ezáltal minden portbit kimenet lesz (8. ábra).

8. ábra A B port regisztereinek értékei
A while végtelen ciklusban a PORTB regiszter is értéket kap, binárisan a 01101000 érték kerül eltárolásra, amely a 0x68-nak felel meg, amelyet a ch2 char típusú változó tartalmaz.
Hasonló módon győzödhetünk meg a C port, illetve a D port regisztereinek értékeiről is.
Kattintsunk a PORTC-re (9. ábra). Ekkor a C port regisztereinek az értékeit tudjuk ellenőrizni.

9. ábra A C port regiszterei
Végül ellenőrizzük a D port regisztereinek a tartalmát is (10. ábra).

10. ábra A D port regisztereinek tartalma
Ha további parancsokat, szimulációs ablakokat szeretnénk felvenni a Toolbar-ra, akkor az Add or Remove Buttons-ra kell kattintanunk (11. ábra) és a Customize-t kell kiválasztanunk.

11. ábra További parancsok felvétele a Toolbar-ra
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. . . .
Megnézzük most néhány példa segítségével a Watchog Timer (WDT) használatát. Írni fogunk közvetlenül regisztert, de használni fogunk makrókat is.. . . .