Tartalomjegyzék:

EXtreme Burner használata az AVR mikrokontroller programozásához: 8 lépés
EXtreme Burner használata az AVR mikrokontroller programozásához: 8 lépés

Videó: EXtreme Burner használata az AVR mikrokontroller programozásához: 8 lépés

Videó: EXtreme Burner használata az AVR mikrokontroller programozásához: 8 lépés
Videó: Основные ошибки при возведении перегородок из газобетона #5 2024, Július
Anonim
EXtreme Burner használata az AVR mikrokontroller programozásához
EXtreme Burner használata az AVR mikrokontroller programozásához

Minden AVR felhasználói testvériség odakint, és azok, akik csak belépnek a közvetítésbe. Néhányan PIC mikrokontrollerekkel, mások ATMEL AVR -ekkel kezdték, ez az Ön számára íródott!

Tehát USBASP -t vásárolt, mert olcsó és hatékony az Atmega -eszköz ROM -jának, vagy talán az ATTINY termékcsaládnak a villanása. Ezeket 5 dollár alatt lehet beszerezni, mint a nyílt forráskódú USB-ASP kínai klónjait! Az AVRdude az a program, amely programozza őket.

Kétségtelenül tudja, hogyan kell Hex fájlt létrehozni az Atmel Studio használatával (én továbbra is az AVR Studio v4.19 -et használom a legújabb v7 helyett, mert gyorsabb és gyorsabb a könnyű, egymagos CPU -n)/ Netbook és WINAVR telepítés, ha ezt olvassa. Minden, ami a DotNet -ben van, Lassan fut! a későbbi verziók pedig úgy lettek kialakítva, hogy a laptopod teknősként működjön! Használhatja a Studio v4.19 -et, a Studio legnagyobb verzióját az ATMEL for AVR mikrokontrollerekhez, átválthat a 7 -es verzióra, amikor valóban szüksége van rá a későbbi chipekhez, és produktívabbá teheti a laptopon töltött időt, várakozás helyett dolgozhat! Ezt ajánlom.

Egy tipikus AVR haver parancssor az Atmega programozásához Hex fájllal a következőképpen működik:

ÍRÁS VAKUHOZ: AVRdude -s -c avrisp -p t44 -P usb -U "flash: w: D: / ARDUINO / pwmeg1.hex: a"

itt a pwmeg1.hex az Intel hex fájl, amelyet "el kell égetni" vagy "be kell villanni" a Lingo mikrovezérlő "cél MCU -jába"

Ez ínycsiklandó emlék! Írhat egy kötegelt fájlt, és futtathatja azt a Windows parancssorában, írási_flash.bat néven. Hasonlóképpen a biztosítékok olvasásához, még egy falatnyi sor emlékezzen! Unalmassá válik.

olvasáshoz flash + eeprom: AVRdude -s -c avrisp -p t44 -P usb -U "flash: r: D: / ARDUINO / pwmeg1.hex: i" -U "eeprom: r:: i"

A megoldás az, hogy az AVRdude-hoz használja az egyik felhasználóbarát grafikus felhasználói felületet, például Bitburner, Khazama programozó, amelyek érdemben közel hasonlóak. eXtreme Burner. Sokat használtam az ingyenesen használható eszközt: eXtreme Burner, sokoldalú, megbízható, és ez az oktatóanyag erről szól. Nemcsak a hexafájlt / programot tudja villogtatni az MPU -val, az AVRdude számára kiadott parancsok segítségével a háttérben, hanem segíthet a FUSES beállításában is, amely egy bonyolult téma, amely gyakran összekeveri a kezdőket az AVR programozással. Itt van egy link egy kiváló oktatóanyaghoz a BIZTONSÁGOK témakörben, amelyet átnézhet vagy felfrissíthet. Figyelmeztetés: Az ATMEL a FUSE bit '1' állapotát használja az "alapértelmezett" állapot (unset vagy programozatlan állapot) és a "0" jelzi a programozott, beállított vagy aktivált állapotát! Ez éppen ellentétes azzal, amit a PUS mikrovezérlő FUSE bitjeivel végez. Legyen óvatos, amikor az óra biztosíték bitjeit módosítja, például a belső RC órát külső kristályra cseréli, mert ez problémákat okoz a chiphez való csatlakozásnál, külső kristálybeállítás nélkül. Hasonlóképpen legyen óvatos, amikor megváltoztatja a kritikus biztosítékok bitjeinek állapotát, mint például a SPIEN és a RESET DISABLE (ezeket mindig SPIEN = 0 és RESET DISABLE = 1 értékre kell állítani, ha továbbra is kommunikálni szeretne az MCU-val az USB-ASP-vel ISP / SPI módban ! Ha ezt elrontja, szüksége lesz egy nagyfeszültségű programozóra az AVR tégla feloldásához.

Ha kíváncsi, hogy "mi a fene a biztosíték" és "mit csinálnak"? Olvassa el ezt a kiváló írást:

Egy másik kapcsolódó téma az AVR MPU órajel -sebességének beállítása, amely képes 1Mhz -tól 16 vagy 20Mhz -ig terjedő sebességre. Van egy speciális, alacsony frekvenciájú, 31,25 kHz -es kristály opció is, amely megfelelően megtervezve az AVR -t 3 hónapig lemeríti az AA elemekkel!

Mindkét órajel biztosíték bit (mind a frekvencia, mind az óra típusa, belső RC/külső kristály, és egyéb biztosíték bitek) az eXtreme Burner FUSES fülén állítható be. Először megmutatjuk, hogy olvassa el a ROM -ot, majd hogyan kell villogni a hex fájlban az eXtreme Burner segítségével. Természetesen használhatja az online AVR biztosíték weboldalakat is, de az általam ismertetett opció használható offline állapotban is, bárhol.

1. lépés: Elvégzendő beállítások:

Elvégzendő beállítások
Elvégzendő beállítások
Elvégzendő beállítások
Elvégzendő beállítások
Elvégzendő beállítások
Elvégzendő beállítások
Elvégzendő beállítások
Elvégzendő beállítások

A képeken a munka megkezdése előtt elvégzendő BEÁLLÍTÁSOK láthatók. (csak egyszer). A „Hardverbeállítások” almenüben a 375 Hz-et választjuk, mert az ATMEL gyári MCU-jainak nagy része az 1 Mhz-es CPU órajel alapértelmezett beállítása a belső RC oszcillátoron. Az internetszolgáltató sebessége az F_cpu negyede. Ez 375 Khz -es legközelebbi sebességet biztosít számunkra, mehet alacsonyabb sebességre is, ez nem sokat változtat. Megpróbálhat csatlakozni, hagyja ezt az alapértelmezett értéket, és kiadhat egy „olvass el mindent”, ha nem sikerül, akkor átjöhet ide, és megváltoztathatja a sebességet, csökkentve azt.

Mert ha nem tud csatlakozni (az üzenet a programozóablakban fog megjelenni "nem tud kommunikálni a chipmel, nem tud SCK") azt jelenti, hogy a számítógépről származó órajel nem tud szinkronizálódni az Ön által olvasni kívánt chipével, vagy program)., nem tudná megváltoztatni a CPU órajelét, vagy megváltoztatni annak sebességét és típusát! Tehát a kapcsolódás mindennek az alapja! Olyan, mint az „ELSŐ KAPCSOLAT”, ahogy a Spielberg -filmekben látod. Ha ez sikerül, akkor mindig növelheti az MCU órajelét a biztosítékok megfelelő programozásával, és később nagyobb sebességgel használhatja a csatlakozást.

Tehát nézze át az itt található hardverbeállítások pillanatfelvételeit, majd állítsa be az eszköztípust is (a programozni kívánt chip, annak modellszáma).

2. lépés: Az eszköztípus beállítása

A készülék típusának beállítása
A készülék típusának beállítása
A készülék típusának beállítása
A készülék típusának beállítása
A készülék típusának beállítása
A készülék típusának beállítása

lásd a képernyőképet, 1. kép, beállítottuk az "ATTINY44A" értéket. Ez egy 14 tűs mikrokontroller, UART nélkül. Mostanában ezt használom, az SSU verziót. Ha az Extreme burner stock verzióját telepítette, az Attiny44A nem jelenik meg az eszközválasztó legördülő listában, akkor megjelenik egy Attiny44, amely minden célra felhasználható az Attiny44A programozására is, és olyan eszközök bemutatására, amelyek nem szerepelnek ebben a legördülő listában, olvassa el a másik utasítható "Hacking eXtreme Burner" -t.

Az Atmega88PA-AU-t az eXtreme Burnerrel is használtam, de ebben az utasításban mindenhol említjük az "Attiny44A" -t. Most hogyan készítsen kenyérsütő változatot az apró 7 mm -es négyzet alakú SMD chipből, és tesztelje a programjaival? (lásd a képeket, amelyek a chip méretét jelzik), Ehhez lásd a másik oktatható fejezetemet, ahol bemutatom, hogyan készítsem el a Breadboard alkalmas beépülő modulokat az Attiny44A-SSU és az ATmega88PA-AU használatával

Miután megtanulta ezt a technikát, képes lesz megnézni minden olyan chipet, amellyel kíváncsi lehet, legyen az SMD vagy DIL csomag. Például használtam még egy SMD chipet, amely 32 tűs, 0,8 mm-es tűs Quad csomagban (Atmega88A) érkezik hasonló módon!

. Vagy használhatja az Attiny44A 28 tűs DIL verzióját ehhez az utasításhoz vagy bármilyen AVR -hez, amelyet jelenleg használ, hogy kipróbálja az eXtreme Burner programot az AVR programozásához.

3. lépés: Olvasson el mindent, vagy olvassa el a VAKU -t

Olvasson el mindent, vagy olvassa el a VAKU -t
Olvasson el mindent, vagy olvassa el a VAKU -t
Olvasson el mindent, vagy olvassa el a VAKU -t
Olvasson el mindent, vagy olvassa el a VAKU -t

Csatlakoztassa USBasp -ját a laptop USB -portjához, feltételezem, hogy már betöltötte a programozóhoz kapott megfelelő illesztőprogramokat, és helyesen észlelte. Meg kell jelennie az "Eszközök és nyomtatók" alatt a Windows Start menüjében, ha igen, amint csatlakoztatta az USB -porthoz! Csatlakoztassa a céllapkát az alaplapra az USBasp -jával (a megfelelő SDI // ISP érintkezőket 6 vagy 10 tűs kábellel kell a kettő közé csatlakoztatni, nevezetesen a tűket: MOSI, RESET, MISO, SCK, Vcc, Ground).

Olvasson el mindent az Xtreme Burner menüjéből. Tekintse meg a kapott képeket és üzeneteket. Kezdetben a képernyőn az „FF” felirat volt látható az ROM -ban az égő első TAB -ján, miután mindent elolvasott, megjelenik a tényleges ROM -tartalom a chipen. Ha gyári friss chipet vagy törölt chipet használt, akkor az FF jelenik meg a tartalomban az "Olvasd el" után. Egy nem programozott chip „FF” feliratot fog megjeleníteni a memóriájában, így egy EEPROM (a programozó második lapja), az utolsó lapon a FUSES látható.

MINDEN OLVASÁS után a 3 fül a chipben található helyes információkat jeleníti meg. Ezt megelőzően nem, ezért azonnal olvasson el mindent, amint mindent csatlakoztat.

4. lépés: Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)

Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)
Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)
Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)
Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)
Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)
Írjon Flash -re (a Hex fájl a ROM -on villog a chipen)

Válasszon ki egy fájlt a Tallózás párbeszédpanel használatával, amely megnyílik, amikor rákattint a fenti MENÜ sáv első ikonjára. Egy fájlt választottunk ki, ahogy a képen látszik. Miután kiválasztotta a hexa fájlt (intel hex formátum), a "nincs fájl betöltve" feliratú menüsor megváltozott a betöltött fájlnévre.

Most adjon ki írási flash -t a szoftver menüjéből. Az üzenetek megmutatják, mi történik. lásd a képeket.

A sikeres írás után az „FF” jelenik meg, amely friss vagy törölt ROM -változást jelez a programban vagy a hexa fájlban. A fájl méretének vagy bájtjának a ROM -ban elfoglalt mérete is ismert, ha megnézi ezt a képernyőt, amely megmutatja a célzip tényleges ROM -tartalmát, amelyet most villogtatott.

Az ellenőrzési lépés a chip olvasásával is történik, az első lépésben elvégzett BEÁLLÍTÁSOK szerint. Ez látható az üzenetekben, hogy az ellenőrzés is sikeres volt.

5. lépés: BIZTONSÁGOK: Hogyan kell őket beállítani az EXtreme Burner programban

BIZTONSÁGOK: Hogyan állítsuk be őket az EXtreme Burner programban
BIZTONSÁGOK: Hogyan állítsuk be őket az EXtreme Burner programban

Amikor kiadott egy OLVASÁS -t, a biztosítékokat kiolvasták a chipről. Ez az első kép a fuses.jpg.

Most talán másra kell cserélni őket. A biztosítékok 4 dobozból állnak az eXtreme Burner képernyő utolsó lapján. Nevezetesen LOW FUSE BYTE, HIGH FUSE BYTE, EXTENDED FUSE BYTE, LOCK FUSE BYTE és CALIBRATION BYTE. ebben a sorrendben jelennek meg.

Egyszerűen használhat egy ONLINE biztosítékkalkulátort, és kitöltheti azokat. Mint a

eleccelerator.com/fusecalc/fusecalc.php?

Vagy használhatja az eXtreme égőt az Ön számára. offline bármikor: Válassza ki a legördülő listából, amely akkor jelenik meg, ha rákattint a RÉSZLETEK gombra, amely az egyes típusú biztosítékok bájtja alatt található. Csak kattintson duplán a RÉSZLETEK képernyő bármelyik sorára, és nézze meg, hogyan változik SET -ről CLEARED -re, és váltsa át állapotát az egyes sorokra való egérkattintással. A fenti mezőben lévő Fuse Byte ennek megfelelően változik.

Ha kíváncsi, hogy "mi a fene a biztosíték" és "mit csinálnak"? Olvasd el ezt a remek írást:

www.instructables.com/id/Avr-fuse-basics-Running-an-avr-with-an-external-cl/

6. lépés: Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral

Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral
Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral
Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral
Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral
Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral
Biztosítók beállítása EXtreme Burner biztosítékkalkulátorral

Láthatja a Részletek képernyőt, amely megjelenik minden egyes biztosítékbájton (LOW, HIGH, EXTENDED, LOCK és Calibration). A Kalibrációs bájtot változatlanul kell hagyni, mivel az a kalibrációs adatbájtot mutatja az AVR -ben, amely a belső RC oszcillátorra vonatkozik. A LOCK bájt általában csak FF, (ezt a fenti képek nem tárgyalják), mivel a Flash vagy az EEPROM nem zárolható tanulás közben. Csak az LOW, HIGH és EXTENDED bájtokat változtatná meg. Légy óvatos !

Ha a SPIEN bitet 1 -re változtatja (a programozatlan állapot 1 az AVR mikrokontrollerekben), akkor nem tud kommunikálni a chipjével USBASP vagy bármely programozó segítségével! Az alapértelmezett állapot minden biztosíték bitnél megjelenik a képernyőn is. Ez figyelmeztet, hogy a SPIEN alapértelmezett értéke mindig 0 (programozott állapot), hogy lehetővé tegye az SPI mód használatát az ISP programozáshoz. Ha a SPIEN értéke 0, akkor a hibakeresési vezeték vagy a DW bit mindig 1 marad (nem programozott). Ez az alapértelmezett állapot is. Továbbá, az Extended Fuse bitekben az „Self Programming Enable” értéknek „1” -nek kell lennie (nem programozott), ha az USB-ASP-t használja a célchip programozásához (nem a rendszerbetöltő ROM-ját használja, mint az ARDUINO-ban).

A CLOCK bitek (3 szám) megváltoztatásával kiválaszthatja a belső RC -t vagy a külső kristályt. Általában a belső RC -re hagyom, ami lehetővé teszi, hogy 2 extra tűt szerezzen be, amelyek felszabadítják a külső kristályt, és PORT -csapként használják az AVR -projektekhez. Általában külső kristályra van szükség, ha nagy pontosságú időzítésre van szüksége a projektben. A tanulók számára elegendő a belső RC.

Általában, ha valamilyen biztosítékkombinációra helyezkedik, nem változtatja meg. Egyszeri lenne. Csak a ROM -ot vagy néha az EEPROM -ot villogná. Az EEPROM villogásához külön.eep fájlt hoz létre a WINAVR / ATMEL stúdió, ha a program egyáltalán használja az EEPROM -ot az adatok tárolására. Ellenkező esetben az EEPROM használaton kívül marad, tele van az „FF” adatokkal, amelyek az EEPROM „NO DATA state” állapotát mutatják.

7. lépés: A biztosítékok végső értéke

Biztosíték bitek végső értéke
Biztosíték bitek végső értéke

Az összes biztosíték bit beállítása és a használt RÉSZLETEK mező bezárása után láthatja a biztosíték bitek program által számított értékét (lásd a képen). Nincs más hátra, mint kiadni egy "Írásbiztosítékokat" a menü segítségével. És nézze meg a sikeres írásról szóló üzeneteket. Később kiadhat egy READ ALL -t is a menüből, és ellenőrizheti, hogy az égő képernyő utolsó lapján olvasott biztosítékok egybeesnek -e azzal, amit a chipre akartak írni. (Biztosíték ellenőrzés).

Észre fogja venni, hogy ennek az utasításnak a kezdetén, amikor egy OLVASÓZÁSZLÓT készítettünk, a képernyő ugyanazokat a FUSE értékeket mutatja, amelyeket itt látunk! Ennek az az oka, hogy ezeket a biztosítékokat gyakran használom, és ritkán cserélem, ha beállítottam őket az MCU -ban, hacsak nem változtatom meg a frekvenciát 1 Mhz -ről 4 Mhz -re egyes projekteknél. Az AVR maximum 20Mhz -re állítható (egyes chipek csak 16Mhz -ig). Az F_cpu számára beállított frekvencia attól is függ, hogy milyen feszültséggel szállítja a chipet! Például, ha a chip 1,8 V -tól 5,5 V -ig működik (adatlap), akkor nem számítana arra, hogy a chipet 20 mhz -en fogja futtatni, ha csak 1,8 V -ot szállított hozzá! túl sokat vársz tőle! Az adatlapban található táblázat azt mutatja meg, hogy a frekvencia milyen feszültségnél emelkedik. Minél magasabb a forgácsolási gyakorisága, annál több a hő és annál több energiát fogyaszt. Gondolj a Frekvenciára, mint egy állat szívverésére. A magas hevítésű kolibri nagyobb energiaégetéssel járna percenként, mint egy bálna vagy elefánt, amelynek szívverése sokkal alacsonyabb! De akkor sokkal többre képes rövidebb idő alatt. Az MCU pont ilyen.

8. lépés: Fejezze be

Most befejezte az eXtreme író minden lépését, elolvasta egy chip ROM -ját, kinyitott egy HEX fájlt, és a chiphez villantotta, és ellenőrizte, hogy a vaku rendben van -e, és megtanulta a biztosítékok beállítását és a chipre való villogását is.

Ha bármilyen kérdése van, szívesen válaszolok vagy módosítom az oktatóanyagot, hogy világosabb legyen.

Egyes chipek esetében előfordulhat, hogy a bejegyzés hiányzik a chipkiválasztó legördülő listából a menüben. Vagy írási hibákkal szembesülhet, és ellenőrizheti a hibákat. Ilyen esetekben kérjük, olvassa el a másik utasítható "Hacking eXtreme Burner" című dokumentumot a probléma megoldásához.

Boldog programozást.

Ajánlott: