Oldal embedder - avr sárkány
A család a mikrokontroller AVR építészet vált de facto szabványa amatőr kézműves. Elkezdtem tanulmányozni a vezérlők ennek a családnak, de most gyakran saját tervez.
Több mint egy éve a hibakeresés firmware használom AVR sárkány.
AVR Dragon - a legolcsóbb debugger mikrokontoller Atmel AVR támogatása debugWire.
Mi a különbség a programozó debugger?
Programozó - ez csak egy eszköz, amely rögzíti, hogy a program a vezérlő. Ezután a program végrehajtása ellen, és ha valami elromlik, akkor tudjuk, hogy ez - ez nagyon nehéz. A debugger segítségével állítsa le a program végrehajtásához bármely pontján, és megtalálni az értékeket a változók, regiszterek és a memória általában a hibakereső lehetővé teszi, hogy a program futtatásához lépésről lépésre, hogy a köteg függvény hívások, és egy csomó más finomságok. Általában a debugger - ez jó!
Ahhoz, hogy megértsük, miért kellett megvenni ezt a debugger, és nem gyűjt, például azt, hogy az ilyen. röviden ismertesse a különböző programozási és hibakeresési interfészek használt AVR vezérlők.
ISP (In System Programming) - circuit programozási felület, amely lehetővé teszi, hogy a vezérlőegység programozására nem vypaivaya a tábláról. Keresztül ISP szabályozó úgy van programozva egy kis sebességet, de ISP van egy nagy előnye a kezdők - programozó interfész számára négy vezetékek. Főleg azért, mert ezen a felületen, Atmel vezetője lett az amatőr tervez. Ahhoz, hogy a vezérlőegység programozására, akkor szükséges, hogy a jel 4 - MISO MOSI, sclk-t azaz RESET.
HV prog - nagyfeszültségű programozás. Tudja, hogyan kell gyorsan programozható használt vezérlések tömegtermelés, az amatőr gyakorlatban szinte használhatatlan. (Ezt fel lehet használni, hogy visszaállítsa az ISP, ha véletlenül megszakad tévedésből). Ha szabályozni kell csatlakoztatni 18 jelek - PD [7 ... 0] PC [7 ... 0] XTAL, RESET.
JTAG - a legszélesebb körben használt hibakereső felületet. Róla már sokat írtak, úgyhogy nem ismétlem. Jelen lévő vezérlők sok lába. Kapcsolathoz öt jelek (TCK, TDO, TMS, TDI, RESET).
debugWire - egy saját hibakereső felületet Atmel, amely lehetővé teszi, hogy figyelemmel kíséri a belső folyamatok egyetlen vezetékes vezérlő (RESET). Tehát, mint az amatőr gyakorlatban általánosan használt vezérlők kis számú láb, ez csak egy csodálatos alternatívája JTAG'u.
Sajnos, a Atmel kicsit elrontotta a csodálatos ötlet, hogy debugwire az új vezérlő alapértelmezésben le van tiltva, és engedélyezve van az ISP interfész (vagyis meg kell először csatlakozik a vezérlő mint 4 kapcsolatok, beleértve debugwire, és csak akkor kell kikapcsolni a 3 tűs SPI ).
AVR Sárkány lehetővé teszi, hogy debug memória vezérlők 32kBayt, és be lehet programozni általában minden szabályozó AVR (kivéve atxmega).
Természetesen az AVR sárkány áron lehet kapni egy csomó nagy vezérlők (33 db atmega16, például), és használja őket, hogy a AVR JTAG ICE klón. úgy, hogy a sárkány repülni, akár nem - úgy dönt. Személy szerint szeretem használni egy jó eszköz, így vettem.
Szinte minden kézműves gyűjtöm a vezérlők: atmega48, atmega88, atmega168 és ATtiny13. Ez egy nagyon jól kiegyensúlyozott vezérlők! Mindannyian debugWire felület.
Az első probléma találkoztam, a vásárlás avrDragon - mint az azonos, hogy csatlakoztassa a vezérlő? Az a tény, hogy csak a blokk jelenik meg a hibakereső fórumon is. A szemközti oldalon a levont következtetések térkép található, de azok összhangban - nem egyértelmű! Egyszer hibázott a kapcsolatot, így terjedt elrendezése kapcsolatok.
Minden jel kell csatlakoztatni egy ilyen jól a vezérlő. VTG jelet (Target feszültség) arra szolgál, hogy állítsa be a logikai szinten hibakereső hibakeresési a logikai szintek, és a kontroller csatlakoztatva a tápfeszültség.
A második probléma - DebugWire nem működik, ha az adatkezelő nem rendelkezik az órát! Már dolgozunk a probléma megoldásán a sárkány és vezetékek, de kiderült, hogy csak kvarc pálya megsérült.
A harmadik probléma - rögzítő sebesség AVR Studio szignifikánsan magasabb volt, mint az IAR. Mivel az elsődleges eszköz a fejlődő összes IAR, ez nem tetszett nekem. Szerencsére, a sebesség a debugWire jelentősen nőtt az utóbbi változat IAR'a.
Kapcsolódni a vezérlők a sárkány, én forrasztott két vezetéket. Néhány ezek vannak forrasztva közvetlenül a pálya, a második helyezünk a csatlakozó az alaplapon. Mivel a sárkány csatlakozó nincs kulcs, tettem - írta TOP. By the way, a vezeték nagyon kényelmes címkézni ilyen technológia - írja marker heat-set jelet és egy hőre zsugorodó nevét - a címkék most kicsi, krasivenkie és nem slezut vezetékekkel!
Most, egy tipikus műveleti sorban. Indítsuk el a IAR. A projekt lehetőséget változtatni debugger Sárkány (Project-> beállítások-> Debugger, meg a sárkány). Csatlakozó a sárkány, hogy a tábla feszültség. Most válassza ki a Dragon-> Biztosíték Handler menüben. Állítsa Fyuz azok, hogy mi tetszik, mi teszi debugWire (Fyuz DWEN). A készülék kikapcsolása, tiltsa ISP a kontroller (hagyhatja, ha az SPI nem használják), így csak reset, VTG és GND csatlakoztatva. A készülék bekapcsolása, kattintson a gombra „Letöltés és Debug”. íme:
Ha meg akarjuk változtatni fyuzy van, hogy csatlakoztassa az ISP kapcsolatok újra. A túlnyomó többsége a projektek SPI nem használják, így tud csatlakozni egyszerre, és ne nyúljon semmihez.
A sárkány számos lehetősége van (Project-> beállítások-> Debugger-> Dragon):
Elnyomja letöltése - Ha bejelöli, akkor meg fogja kérdezni - letölthető az új programot a vezérlő, vagy tartsa a régit? Használt (erősen megkérdőjelezhető), hogy időt és erőforrásokat flash memória.
Hagyjuk a letöltést RAM - néha a hibakeresési folyamat, a menteni kívánt RAM adatokat, majd töltsd vissza a vezérlő. Ez az opció lehetővé teszi, hogy ezt. Még soha nem használtam, úgyhogy semmi igazán nem lehet mondani.
Célzása konzisztencia ellenőrzése - ellenőrzi az érvényességét a rögzített adatokat.
Ezek a beállítások csak ritkán kell használni, és nem nagyon fontos, de a második fülön van egy nagyon fontos lehetőség:
Fuss időzítést megállt mód - Controller időzítő akkor is működik, ha a program leáll. Például nagyon fontos Shimov ha megáll egy váratlan pillanatban, realties sikertelen lehet.
Megkérdeztem - ez lehet programozni a vezérlő által debugWire, vagy ez csak egy hibakereső felületet? Válasz - ez lehetséges. De megint, ugyanaz lesz, hogy először engedélyeznie debugWire keresztül ISP.
Nemrég próbáltam használni JTAG AVR s. Saját benyomások pozitívak. Árvizek firmware sokkal gyorsabb, mint debugWire. Fyuzy tudja, hogyan kell programozni.
Prototípus területén
A sárkány vannak breadboard területen. Azt mondják, ha forrasztani a ZIF-foglalat, akkor nagyon könnyen programozható vezérlők tömegesen. Személy szerint én nem csinálok, így nem tudok mondani semmit.
A probléma a stabilizátort.
Van egy másik probléma. A Sárkány rendszer élelmiszer fejlesztők hibázott, és a tápegység IC bizonyos esetekben sérülést okoz. Atmel ajánlást tesz vypayat égetett chip forrasztani egy kiküldetés, a garancia a sárkány nem vész el.
Ez a probléma manifesztálódik egyetlen érintéssel a chip, a feszültség stabilizátor, ami izgatott, és túlmelegedett. Ebben az esetben az alaplap áram korlátozására és ki a sárkány, de olcsó alaplapok nem éget, és a sárkányt. A fenti képen látható, ahol ez nem szükséges, hogy megérintse.
Más ügyekben, míg az IC van leégett, megváltoztatása nem éri meg. A legfontosabb dolog - a sárkány ki, ha sokáig távol tőle, hogy ne, hogy tüzet. A sárkány lehet a tűzokádó!
Ami rossz, helyes, miután ezt a cikket írta én stabilizátor sárkány égett. Csináltam egy káosz, és minden működött (még jobban, mint korábban - kevesebb kapcsolat szünetek). Megváltoztatása nagyon egyszerű. Meg kell vypayat stabilizátor chip jegesedés és hozzászólásokat az USB csatlakozót a tantál kondenzátor. Chip-stabilizátor termalpad, kiforrasztó és így elég nehéz.
Felmerül a kérdés - miért Atmel rábízták stabilizátort, ha könnyen helyettesíthető egyszerűen vezetékeket? Atmel maga válaszol erre a kérdésre, mert -A legtöbb összetevőjét a fedélzeten van tápfeszültség tartomány 4,5-5,5 voltot. Azonban, USB szabvány azt a feszültséget az USB busz a legrosszabb esetben is lemenni 4,15 volt (ha USB hub hajtott a számítógépen). Annak érdekében, hogy növelje a feszültséget 4,15-5 használjuk stabilizátort.
Így, ha csatlakoztatja a sárkány közvetlenül a számítógéphez, vagy az agy egy külső tápegység, miután a változtatás Sárkány továbbra is működni fog, mintha semmi sem történt volna.