AVR 5: USBtinyISP programator & avrdude

Do nedavna jsem pouzival programator STK-200 na paralelni port. Byl levny a jednoduchy, ale byl na paralelni port, ktery uz se dnes temer nevyskytuje. Delka dratu, se kterou mi programator fungoval byla jenom asi 30cm. Hledal jsem levnou nahradu na USB a skoncil jsem USBtinyISP.

Na eBay se da koupit do 200 Kc, pripadne se da i doma postavit, pokud by nekdo mel zajem (nevyplati se to). USBTinyISP umi pracovat s cipy do 64kB  flash. Na Arduino Mega desku s ATmega260 tak nelze pouzit.

Moje cinska verze ma 2 ISP konektory, 2×5 a 2×3 piny. 2×3 piny pouziva napr. oficialni Arduino deska. V balicku byla deska s programtorem a 2 ploche kabely (2×5 a 2×3).

Zapojeni 2 konektoru na desce programatoru je nasledujici:

na pripojeni k atmelu je potreba 6 dratu: MISO, MOSI, SCK, RESET, +5V, GND.

Takhle to pak vypada:

je dobre udelat si jednoduchy plosny spoj s patici na procesor.

Pokud ma atmel, ktery budeme programovat pomoci pojistek nastaven externi krystal, musime ho pripojit. Bez nej to nebude fungovat!

USBtinyISP programator nepotrebuje v Linuxu zadne ovladace (zkousel jsem ho v Ubuntu 12.10), Windowsaci si budou muset ovladac vygooglit.

Takhle se identifikuje po pripoojeni:

root@martin:/tmp/avr# dmesg
...
[ 2682.406995] usb 2-1.3.4: new low-speed USB device number 6 using ehci_hcd
[ 2682.504439] usb 2-1.3.4: New USB device found, idVendor=1781, idProduct=0c9f
[ 2682.504450] usb 2-1.3.4: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 2682.504457] usb 2-1.3.4: Product: USBtiny
 
root@martin:/tmp/avr# lsusb 
...
Bus 002 Device 007: ID 1781:0c9f Multiple Vendors USBtiny
 

V /dev se zadny seriovy port nevytvori, protoze usbtinyisp pouziva svuj vlastni usb protokol.

Na programovani je nejlepsi program avrdude. Avrdude je nutne pouzivat pod rootem, jinak si nepovida s pripojenym procesorem! Vsechny jeho parametry jsiou vyborne popsany v manualu (man avrdude), proto uvedu jen nekolik ukazek:

Bez dalsich parametru jen vypise informace.
root@martin:/tmp/avr# avrdude -c usbtiny -p m8
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9307
avrdude: safemode: Fuses OK
avrdude done.  Thank you.

-c – pouzity typ programtoru, -p model procesoru (zde atmega8)
 

Stahne program ulozeny ve flash v procesoru do PC do souboru flash.hex format Intel HEX.
root@martin:/tmp/avr# avrdude -c usbtiny -p m8 -U flash:r:flash.hex:i
 
-U operace s pameti (syntaxe je -U memtype:op:filename[:format] ), poradi je nasledujici typPametiFlash:cteni:nazevSouboru:formatVystupnihoSouboru
 
Zapise pojistky a flash z PC do atmelu:
root@martin:/tmp/avr# avrdude -p m8 -c usbtiny -U lfuse:w:0xa4:m -U hfuse:w:0xcc:m -U flash:w:program.hex
 
sekci -U muze byt vice v jednom prikazu, pripadne je mozne sestavit vice samostatnych prikazu.
 
Zapise pojistky a flash z PC do atmelu:
root@martin:/tmp/avr# avrdude -p m8 -c usbtiny -U flash:w:program.hex
 
nahraje pouze flash z PC do Atmelu.
 
 
Takhle vypada vystup (txt) avrdude u nahravani pojistek a flash.
 
Dalsi clanky o AVR.
 

Pouzite zdroje:

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *