Fórum témák
» Több friss téma |
Cikkek » AVR programozás Ubuntu-n AVR programozás Ubuntu-n
Szerző: mosomate, idő: Dec 5, 2014, Olvasva: 11871, Oldal olvasási idő: kb. 2 perc
Az elkészült programunkat már csak le kell tölteni az AVR-be. Ehhez az AVRDUDE-ot fogjuk használni, ami nagyon sok programozót és AVR-t támogat. Hobbista körökben saját megfigyeléseim szerint a három legnépszerűbb programozó-klón az STK500, az AVRISP mkII és a JTAG-ICE. Én egy STK500v2-t fogok használni ISP interfésszel a vezérlő felé, de bármelyik típushoz van az interneten forrás. Megmutatom, hogy ezt hogyan lehet működésre bírni AVRDUDE-al. sudo apt-get install avrdude
Ha csak azt a parancsot adjuk ki, hogy avrdude, akkor kiírja az opcióit, ezek közül néhány fontosabb: Ha szeretnénk letölteni a frissen elkészített prog.hex fájt akkor:
flash:w:prog.hex Kiolvassuk az alsó fuse bájtot az lfuse.hex-be:
lfuse:r:lfuse.hex:i Több példa, és részletesebb bemutatás az alábbi oldalon található: http://www.ladyada.net/learn/avr/avrdude.html A legtöbb programozó klón valamilyen soros portként jelenik meg a rendszerünkben, így az avrdude-ot alapból csak rendszergazdai jogosultsággal, vagyis sudo-val tudnánk használni, de, ezt is ki lehet játszani. Ha megkeressük az eszközünket a /dev struktúrában, akkor látszik, hogy a dialout a tulajdonos csoport, amihez magunkat hozzáadva már meg is oldottuk ezt a problémát. crw-rw---- 1 root dialout 188, 0 nov 29 14:28 ttyUSB0
Adjuk magunkat hozzá a dialout csoporthoz: sudo adduser felhasználónév dialout
Ezek után vígan használható sudo nélkül. Ha mégsem, akkor jelentkezzünk ki, majd újra be, és akkor már működni fog. Konkrét példák: avrdude -c stk500v2 -p t45 -P /dev/ttyUSB0 -b 115200 -U flash:w:prog.hex
Ha minden rendben történt, akkor az avrdude ezt írja ki: avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.07s avrdude: Device signature = 0x1e9206 avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "prog.hex" avrdude: input file prog.hex auto detected as Intel Hex avrdude: writing flash (136 bytes): Writing | ################################################## | 100% 0.08s avrdude: 136 bytes of flash written avrdude: verifying flash memory against prog.hex: avrdude: load data flash data from input file prog.hex: avrdude: input file prog.hex auto detected as Intel Hex avrdude: input file prog.hex contains 136 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.07s avrdude: verifying ... avrdude: 136 bytes of flash verified avrdude: safemode: Fuses OK (H:FF, EF, L:62) avrdude done. Thank you. Először kiolvassa a flasht. Ha van benne értelmes program, akkor azt törölni kell, ezt meg is teszi, majd kiírja a programunkat, végül ismét kiolvassa, és meggyőződik róla, hogy nem történt hiba az írás során. Alsó fuse bájt kiolvasása: avrdude -c stk500v2 -p t45 -P /dev/ttyUSB0 -b 115200 -U lfuse:r:lfuse.hex:i
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.07s avrdude: Device signature = 0x1e9206 avrdude: reading lfuse memory: Reading | ################################################## | 100% 0.02s avrdude: writing output file "lfuse.hex" avrdude: safemode: Fuses OK (H:FF, EF, L:62) avrdude done. Thank you. A fájl tartalma: A cikk még nem ért véget, lapozz! Értékeléshez bejelentkezés szükséges! |
Bejelentkezés
Hirdetés |