|
USB-s programozó
Ez egy univerzális programozó/letöltő áramkör. A lényege, hogy gyakorlatilag
bárminek a programozására használható. A legtöbb mai mikrokontroller,
konfigurációs flash, CPLD és RAM bázisú FPGA áramkörbe beépítve valamilyen
keveés vezetékkel megoldott, soros adatátviteli vonalon programozható.
Legtöbbjüknek nincs szüksége semmilyen emelt feszültségre a programozáshoz.
Így egyetlen programozóval tudjuk az összes általunk használt áramkört
programozni.
Ez egy bus-powered áramkör, azaz az USB-ről kapja a működéséhez szükséges
tápellátást, így nincs szükség külön hálózati adapterre (tápegységre).
Van rajta 8 darab I/O pont, amik mindíg a programozandó készülék
tápfeszültségével megegyező jelszinten működnek. Ezzel 2.5 - 5V áramkörök
programozhatók. A programozó a célkészülékekkel különböző kábelekkel köthető
össze. A kábeleknek saját (48 bites) azonosítójuk van, így nem fordulhat elő
félreprogramozás .
A nyolc I/O láb mellett van még a csatlakozón egy TTL jelszintű sorosvonal
is, ami a sorosvonalon programozható áramkörök esetén jól használható.
Ilyen mikrokontrollerek például az NXP (LPC2xxx) és Atmel (AT91SAM7) ARM magos
mikrokontroller családjai vagy a Renesas (Hitachi) H8/300H alapú sorozata.
A csatlakozón ezen felül kint van az USB +5V is.
A programozóban van egy ATmega128 mikrokontroller, ezzel biztosítva a
precíz időzítéseket és a host oldali sw-ek könnyebb megírását. JTAG, i2c, SPI
műveletek benne vannak, ezekre csak hivatkoznia kell a host oldali programnak.
Jelenleg a következő eszközöket lehet vele programozni:
- ATMEL: AVR mikrokontrollerek
- Xilinx: xcf01s, xcf02x, xcf04s, xc18v01, xc18v02, xc18v04
- ATMEL: AT17C256, AT17LV010
- Microchip: PIC 16F84, 16F84A (Plusz elektronikát igényel a 12V miatt...)
További eszközök hozzáadása könnyen megoldható, ha ismert az adott eszköz
programozási algoritmusa. Folyamatban van a Xilinx CPLD-k programozásának
megírása, valamint az NXP ARM magos LPC sorozatához szükséges programok
elkészítése.
A programozón van három LED, ami státuszinformációk megjelenítését szolgálja,
valamint egy nyomógomb, aminek állapotát a host oldali program le tudja kérdezni,
és annak függvényében indítani a programozást. Ez sorozatos programozásoknál
kényelmesebbé teszi a munkát.
|