Egyszerű AVR programozó

Ezzel az egyszerű AVR programozóval többféle AVR mikrokontrollert is programozhatunk a PC párhuzamos portján keresztül. A programozást egy parancssoros felőleltű DOS alkalmazás teszi lehetővé. Amilyen egyszerű, olyan hatékony is. A programozó 12V és 5V tápfeszültséget igényel. 5V az általános működéshez szükséges, 12V-nak pedig a programozáskor van szerepe. A programozás folyamatát egy LED jelzi. A kapcsolásról nem is írnék többet, egyszerűen össze kell építeni, ahogy a rajzon van. A DIP8-as foglalat előtt van egy kis kapcsoló. erre azért van szükség, mert ebbe a foglalatba csatlakoztatható olyan AVR is aminek a lábkiosztás eltérő. Összerakva az áramkört, kapcsoljuk rá a tápfeszültségeket, majd csatlakoztassuk a PC LPT portjához.

A programról röviden

Használata DOS parancssorból lehetséges. Programozásra két alkalmazás is a rendelkezésünkre áll. Az egyik az avrsp.exe, a másik pedig az avrpp.exe. Az avrsp ISP programozót kezel, az avrpp pedig a párhuzamos programozót kezeli.

A programozó a következő kontrollereket támogatja:

  • AT90S 1200, 2313, 2323, 2333, 2343, 4414, 4433, 4434, 8515, 8535
  • ATtiny 12, 13, 15, 22, 24, 25, 26, 44, 45, 84, 85, 261, 461, 861, 2313
  • ATmega 8, 16, 32, 48, 48P, 64, 88, 88P, 103, 128, 161, 162, 163, 164P, 165, 168, 168P, 169, 323, 324P, 325/9, 328P, 3250/90, 603, 640, 644, 644P, 645/9, 1280, 1281, 2560, 2561, 6450/90, 8515, 8535
  • AT90CAN 32, 64, 128,  AT90PWM 2, 3

A vezérlési időzítéseket két metódus határozza meg. A késleltetési időt a Windows API QueryPerformanceCounter(), melynek egysége msec, és a QueryPerformanceFrequency() paraméter használatos. A késleltetési idő egysége az I/O port olvasása közben msec. Az átviteli sebesség a -d paraméterrel változtatható meg.

A párhuzamos programozási módnál elsőként a szoftver megpróbálja kiolvasni az eszköz ID azonosítóját. Ezt sikeresen kiolvasva a mikrovezérlő felismerése automatikusan megtörténik.

A programozó az -stb és a -selin parancsokkal vezérli a Vcc és a Vpp feszültségeket. Ez alapesetben logikai H szinten van, amíg a programozó szoftver be nem állítja. Amíg a LED világít az áramkörben addig ne csatlakoztassunk mikrokontrollert a foglalatba. A 12V megjelenése a RESET lábon programozói módba teszi a mikrokontrollert. A programozó csak 1200/2313-as lábkiosztású vezérlőket támogatja. Minden más eszköz programozásához konverterre van szükség. Ha megépíted ezt a programozót, célszerű több átalakítót is készíteni hozzá, hogy ménnél több kontrollert lehessen vele programozni.

A programozás menete

A csőre töltött programozóáramkörünk meglétét követően megkezdhetjük az eszköz felprogramozását, valamint más egyéb műveleteket is végezhetünk rajta. Programozáshoz használjuk az avrpp.exe alkalmazást.

A program künönböző kapcsolókkal vezérelhető.

  • -r Eszköz teszt. Kijelzi az eszköz típusát.
  • -rp A program kiolvasása Intel-Hex formátumban.
  • -re EEPROM tartalmának kiolvasása Intel-Hex formátumban.
  • -rf A konfigurációs bitek kiolvasása.
  • -v Ellenőrzés végrehajtása
  • -l[“bin”] Eszköz lezárása.
  • -e Chip törlése. Nem feltétlen szükséges, mert programozáskor a programmemória felülíródik
  • -fl”bin” programozói bájt átírása nullára. A bájt egy meghatározott hosszúságú bitekből álló bináris számsor “bin”. Ha nem állítassz be értéket, akkor az eszköz gyári értékei kerülnek beírásra.
  • -fh”bin” Programozói bájt átírása 1-re.
  • -fx”bin” Kiterjesztett programozói bájt.
  • -c Másolás beállító bájt
  • -pc”n” Megadható a használni kívánt COM port száma. Alapértelmezett a COM1.
  • -pl”n” Megadható a használni kívánt LPT port száma.
  • -8 HVS eszköz automatikus felismertetése.
  • -5 ATtiny15 automatikus felismertetése.
  • -q Quick power-up algoritmus engedélyezése.

Használati példák

Írjuk be prog1.hex tartalmát a program memóriába. Ne használjunk hosszú fájlneveket.

avrpp prog1.hex

Hasonlítsuk össze a beírt kódot az eredeti kóddal

avrpp -v prog1.hex

Adatok kiolvasása a programmemóriából

avrpp -rp

Az adatmemóriából

avrpp -re

Konfigurációs kapcsolók állapotainak kiolvasása

avrpp -rf

További kapcsolók a fenti leírásnak megfelelően használhatóak.

Az áramkört én csak légszerelt kivitelben szereltem össze, de mivel jól működött, így később tervezek majd neki egy NYÁK panelt.

Letölthető rajz

Forrás: http://elm-chan.org/works/avrx/report_e.html

Vissza a kapcsolási rajzokhoz