Sadržaj:
- Korak 1: Šta vam treba?
- Korak 2: Izrada Mega-isp programera na pločici
- Korak 3: Otpremanje skice
- Korak 4: Korištenje s Avrdudeom
- Korak 5: Snimanje USBtinyISP firmvera na Attiny2313
- Korak 6: Paljenje Arduino Bootloader -a
- Korak 7: Rješavanje problema
Video: Kako programirati AVR (arduino) s drugim Arduinom: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:10
Ove upute su korisne ako:
* Imate svoj arduino sa atmega168 i kupili ste atmega328 u lokalnoj trgovini elektronike. Nema arduino bootloader * za koji želite napraviti projekt koji ne koristi arduino - samo običan AVR čip (poput USBTinyISP) - imate čist attiny2313/attiny48 itd. Na koji želite narezati firmver. Obično biste morali imati ISP -a (u sistemskom programatoru) poput USBTinyISP -a da biste programirali svoj novi čip. Imajući arduino, možete ga naučiti da bude programer zahvaljujući sjajnom poslu koji je obavio Randall Bohn. On je stvorio Mega -ISP - arduino skicu koja radi kao programer.
Korak 1: Šta vam treba?
* radni Arduino (ili klon - koristim BBB - BareBonesBoard i RBBB - RealBareBonesBoard by ModernDevices) * čip koji želite programirati (testirano sa atmega8, atmega168, atmega368, attiny2313, attiny13) * ili ploča sa ISP zaglavljem * 3 LED diode + 3 otpornika * žice za matičnu ploču
Korak 2: Izrada Mega-isp programera na pločici
Postoje dva načina povezivanja vašeg Arduina za programiranje čipa.
Možete priključiti svoj avr čip na matičnu ploču i spojiti 5v i GND na odgovarajuće pinove (provjerite tablicu s podacima!) + Otpornik za povlačenje za resetiranje i povezivanje pinova s vašeg arduina na čip. Ovo su linije na Arduinu i njihova funkcija 13 - SCK 12 - MISO 11 - MOSI 10 - RST (Reset) Ili možete napraviti 2x3pin ISP zaglavlje koje možete priključiti na ploču koja pruža jednu (drugu arduino ploču). Ispis za ISP zaglavlje nalazi se na trećoj slici. Postoje 3 LED diode koje označavaju status programera. pin 9 - plava LED dioda - to je zvuk programatora. pin 8 - crvena led lampica - označava grešku pin 7 - green led - označava da se programiranje odvija (bio sam lijen pa nisam odgovarao bojama u postavkama) Evo crteža napravljenih u Fritzingu Možete i napraviti MEGA-isp štit. Yaroslav Osadchyy dizajnirao je štit u orlu. Datoteke orla možete pronaći na njegovoj web stranici:
Korak 3: Otpremanje skice
Preuzmite skicu sa mega-isp google koda. (Avrisp.03.zip u vrijeme pisanja). Raspakirajte ga i pokrenite arduino ide i otvorite avrisp.pde. Prenesite ga na svoju arduino ploču. LED otkucaja srca trebao bi početi kucati.
Korak 4: Korištenje s Avrdudeom
Za korištenje s avrdudeom (i svim grafičkim sučeljima koja ga koriste) morate odabrati programer 'avrisp'. najsigurniji bitrate je 19200.
Da biste testirali svoj novi atmega168 iz komandne linije, pokušajte: $ avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 /dev /USB0 je port koji je arduino povezan na moj linux box (vaš je možda com5). To se može provjeriti u arduino IDE -u u Alati -> Serijski port. Trebali biste dobiti: [kabturek@hal -9000 ~]# avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 avrdude: AVR uređaj inicijaliziran i spreman za prihvaćanje uputa Čitanje | ################################################# | 100% 0.13s avrdude: Potpis uređaja = 0x1e9406 avrdude: safemode: Osigurači OK avrdude učinjeno. Hvala ti. To znači da je sve u redu. Ako dobijete greške - provjerite posljednji korak.
Korak 5: Snimanje USBtinyISP firmvera na Attiny2313
USBTinyISP je odličan programer iz LadyAde koji je zaista jeftin - 22 USD. Imao sam rezervni attiny2313 i neke dijelove pa sam odlučio napraviti sam. Ako nemate iskustva u izradi PCB -a, savjetujem vam da kupite komplet jer je kvalitetniji nego što ga možete sami napraviti:). Barem kupite PCB ako ga želite izgraditi. Možete ga nabaviti od Adafruit -a. Povežite ATtiny2313Na posljednjoj slici možete vidjeti attiny2313 sa pinovima koji se koriste za ISP -a u crvenoj boji. Slika je iz vodiča LadyAda avr. Snimanje firmvera: Raspakirajte USBTinyISP firmver. Idite na spi dir i pokrenite $ avrdude -p pt2313 -P /dev /ttyUSB0 -c avrisp -b 19200 da provjerite je li sve u redu sa čipom. Sada postavite osigurače: $ avrdude -P /dev /ttyUSB0 -c avrisp -b 19200 -pt2313 -U hfuse: w: 0xdf: m -U lfuse: w: 0xef: m Sada biste trebali priključiti vanjski oscilator od 12 mhz na čip. I narežite firmver: $ avrdude -B 1 -pt2313 -U flash: w: main.hex -P /dev /ttyUSB0 -c avrisp -b 19200 Voila. Vaš attiny2313 ima USBTinyISP firmver.
Korak 6: Paljenje Arduino Bootloader -a
SpajanjeIzvadio sam malo jer sam upotrijebio RBBB da pojednostavim veze. Shema je na slici #2. Ako koristite 2 arduina, upotrijebite sliku #3 i spojite ISP pin na ICSP 2x3glavlje na drugom (slave) arduinu. Samo priključite USB napajanje na prvu ploču. Način grafičkog sučelja Ovo je malo zeznuto jer ne možete samo koristiti Tools-> Burn Bootloader-> w/ AVR ISP jer je zadana brzina prevelika za mega-isp. Pronađite avrdude.conf koji dolazi s arduino IDE -om (u arduino/hardware/tools/avrdude.conf) i promijenite granicu za programere avrisp sa 115200 na 19200 (oko retka 312) Pronađite i promijenite u avrdude.conf programer id = "avrisp"; desc = "Atmel AVR ISP"; baudrate = 115200; # zadano je 115200 type = stk500;; do: programer id = "avrisp"; desc = "Atmel AVR ISP"; baudrate = 19200; # zadano je 115200 type = stk500;; Sada možete koristiti Alati -> Burn Bootloader -> w/AVR ISP (nakon što odaberete odgovarajuću ploču iz izbornika Alati) Commanline Također možete koristiti naredbenu liniju: Uredi arduino/hardware/bootloaders/atmega/Makefile i promijeni ISPTOOL/PORT /SPEED za: # unesite parametre za avrdude isp alat ISPTOOL = avrisp ISPPORT = /dev /ttyUSB0 ISPSPEED = -b 19200 ne možete napisati $ make diecimila_isp za spaljivanje osigurača i pokretačkog programa. Test Sada spojite novi arduino na USB i spali trepćući!
Korak 7: Rješavanje problema
Greške Avrdude: avrdude: ser_open (): ne može otvoriti uređaj "/dev/ttyUSB0": Nema takve datoteke ili direktorija Imate naveden pogrešan port (-P) ili vaš arduino nije povezan. provjerite vezu avrdude: Potpis uređaja = 0x000000 avrdude: Svaka čast! Nevažeći potpis uređaja. Dvaput provjerite veze i pokušajte ponovo ili koristite -F da biste poništili ovu provjeru. Ovo je neka opšta greška. Vaš čip nije prepoznat. Provjerite vezu na ploči (GND/5V spojeno na pinove?) Dobit ćete ovu grešku kada je vaš čip konfiguriran za korištenje vanjskog oscilatora i ne radi (nema ga ili ne oscilira pravilno - 22pf kape nedostaje?)
Preporučuje se:
Kako programirati Arduino Pro Mini sa Arduino Uno: 4 koraka
Kako programirati Arduino Pro Mini s Arduino Uno: Ovo sam napisao kao dio drugog projekta, ali onda sam odlučio koristiti Pro Micro koji se može programirati izravno s prijenosnog računala. Međutim, ovo bi moglo biti korisno jednog dana (ili nekome) pa Ostaviću to ovde
Kako programirati Arduino Pro Mini pomoću Arduino UNO .: 4 koraka
Kako programirati Arduino Pro Mini pomoću Arduino UNO .: Zdravo momci, Danas dijelim jednostavan način programiranja Arduino Pro mini pomoću Arduino UNO. Ovaj vodič je za one koji tek počinju s arduinom i žele smanjiti veličinu svog projekta pomoću Arduino Pro mini.Arduino Pro mini
Kako programirati AVR ploču pomoću Arduino ploče: 6 koraka
Kako programirati AVR ploču pomoću Arduino ploče: Imate li oko sebe ploču za mikrokontroler AVR? Je li teško programirati ga? Pa, na pravom ste mjestu. Ovdje ću vam pokazati kako programirati ploču mikrokontrolera Atmega8a koristeći Arduino Uno ploču kao programera. Dakle bez drskosti
Arduino/Android mjerač vremena (s aplikacijom!). Upravljajte svjetlima i drugim stvarima: 6 koraka
Arduino/Android mjerač vremena (s aplikacijom!). Upravljajte svjetlima i drugim stvarima: Zdravo! Evo me s drugim mjeračem vremena. Pomoću ovog projekta možete postaviti hoće li tajmer biti " UKLJUČEN " ili " ISKLJUČEN " za svaki sat u toku dana. Pomoću android aplikacije možete postaviti više od jednog događaja dnevno. Kombinacijom Arduina i Androida
Kako napraviti RC vazdušni brod! S 3D ispisanim dijelovima i drugim stvarima: 5 koraka (sa slikama)
Kako napraviti RC vazdušni brod! S 3D ispisanim dijelovima i drugim stvarima: Zračni čamci odlični su jer su zaista zabavni za vožnju i rade na nekoliko vrsta podloga, poput vode, snijega, leda, asfalta ili bilo čega drugog, ako je motor dovoljno snažan. nije jako složeno, a ako već imate elektron