Turinys:
- 1 žingsnis: ko jums reikia?
- 2 žingsnis: Padarykite „Mega-ISP“programuotoją ant duonos lentos
- 3 žingsnis: eskizo įkėlimas
- 4 veiksmas: naudojimas su „Avrdude“
- 5 veiksmas: USBtinyISP programinės įrangos įrašymas į „Attiny2313“
- 6 veiksmas: „Arduino“įkrovos įkėlimas
- 7 žingsnis: trikčių šalinimas
Video: Kaip užprogramuoti AVR (arduino) naudojant kitą „Arduino“: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:51
Ši instrukcija yra naudinga, jei:
* arduino turite su atmega168 ir vietinėje elektronikos parduotuvėje nusipirkote atmega328. Jame nėra „arduino“įkrovos tvarkyklės *, kurį norite sukurti projektui, kuriame nenaudojamas „arduino“- tik įprastas AVR lustas (pvz., „USBTinyISP“) - turite švarų „attiny2313/attiny48“ir tt, kuriame norite įrašyti programinę įrangą. Paprastai, norėdami užprogramuoti naują lustą, turėsite turėti ISP („System Programmer“), pvz., „USBTinyISP“. Turėdami arduino, galite išmokyti jį būti programuotoju dėl nuostabaus Randalo Bohno darbo. Jis sukūrė „Mega -ISP“- arduino eskizą, kuris veikia kaip programuotojas.
1 žingsnis: ko jums reikia?
* veikiantis „Arduino“(arba klonas - aš naudoju BBB - „BareBonesBoard“ir RBBB - „RealBareBonesBoard by ModernDevices“) * mikroschema, kurią norite užprogramuoti (išbandyta naudojant „atmega8“, „atmega168“, „atmega368“, „attiny2313“, „attiny13“) * duonos lentą arba plokštė su ISP antrašte * 3 šviesos diodai + 3 rezistoriai * duonos plokštės laidai
2 žingsnis: Padarykite „Mega-ISP“programuotoją ant duonos lentos
Yra du būdai, kaip prijungti „Arduino“prie lusto programavimo.
Galite prijungti savo avr lustą prie duonos lentos ir prijungti 5v ir GND prie atitinkamų kaiščių (patikrinkite duomenų lapą!) + Ištraukimo rezistorių, kad iš naujo nustatytumėte ir prijungtumėte kaiščius nuo jūsų arduino prie lusto. Tai yra „Arduino“linijos ir jų funkcija 13 - SCK 12 - MISO 11 - MOSI 10 - RST (iš naujo nustatyti) Arba galite sukurti 2x3 kontaktų ISP antraštę, kurią galite prijungti prie plokštės, kurioje yra viena (kita arduino plokštė). IPT antraštės kontaktas yra trečiame paveikslėlyje. Yra 3 šviesos diodai, rodantys programuotojo būseną. 9 kaištis - mėlyna lemputė - tai programuotojo švytėjimas. 8 smeigtukas - raudonas šviesos diodas - rodo klaidą smeigtukas 7 - žalias šviesos diodas - rodo, kad programavimas vyksta (buvau tingus, todėl neatitikau nustatymų spalvų) Čia yra brėžiniai, padaryti „Fritzing“. MEGA-ISP skydas. Jaroslavas Osadchyy sukūrė skydą iš erelio. Erelio failus galite gauti jo svetainėje:
3 žingsnis: eskizo įkėlimas
Atsisiųskite eskizą iš „mega-isp“„Google“kodo. (Avrisp.03.zip rašymo metu). Išpakuokite jį ir paleiskite arduino ide ir atidarykite avrisp.pde. Įkelkite jį į savo arduino lentą. Širdies plakimas turėtų pradėti plakti.
4 veiksmas: naudojimas su „Avrdude“
Norėdami naudoti su avrdude (ir visomis jį naudojančiomis GUI), turite pasirinkti „avrisp“programuotoją. saugiausias bitų greitis yra 19200.
Norėdami išbandyti savo naująjį „atmega168“iš komandinės eilutės, pabandykite: $ avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 /dev /USB0 yra prievadas, kuriame arduino yra prijungtas prie mano „Linux“dėžutės (jūsų gali būti „com5“). Tai galima patikrinti naudojant arduino IDE, esantį Įrankiai -> Serijinis prievadas. Turėtumėte gauti: [kabturek@hal -9000 ~]# avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 avrdude: AVR įrenginys inicijuotas ir paruoštas priimti instrukcijas Skaitymas | ############################################### | 100% 0.13s avrdude: Įrenginio parašas = 0x1e9406 avrdude: saugus režimas: saugikliai OK avrdude done. Ačiū. Tai reiškia, kad viskas gerai. Jei gaunate klaidų - patikrinkite paskutinį veiksmą.
5 veiksmas: USBtinyISP programinės įrangos įrašymas į „Attiny2313“
„USBTinyISP“yra puikus „LadyAda“programuotojas, kuris yra tikrai pigus - 22 USD. Turėjau atsarginį „attiny2313“ir kai kurias dalis, todėl nusprendžiau pasigaminti pats. Jei neturite patirties gaminant PCB, patariu pirkti rinkinį, nes jis yra kokybiškesnis nei galite pasigaminti patys:). Bent jau nusipirkite PCB, jei norite ją sukurti. Jį galite gauti iš „Adafruit“. Prijunkite „ATtiny2313“Paveikslėlis yra iš „LadyAda avr“mokymo programos. Firmware įrašymas: išpakuokite USBTinyISP programinę -aparatinę įrangą. Eikite į „spi dir“ir paleiskite $ avrdude -p pt2313 -P /dev /ttyUSB0 -c avrisp -b 19200, kad patikrintumėte, ar viskas gerai su lustu. Dabar nustatykite saugiklius: $ avrdude -P /dev /ttyUSB0 -c avrisp -b 19200 -pt2313 -U hfuse: w: 0xdf: m -U lfuse: w: 0xef: m Dabar prie mikroschemos pritvirtinkite 12 MHz išorinį osciliatorių. Ir įrašykite programinę -aparatinę įrangą: $ avrdude -B 1 -pt2313 -U flash: w: main.hex -P /dev /ttyUSB0 -c avrisp -b 19200 Voila. Jūsų attiny2313 turi USBTinyISP programinę įrangą.
6 veiksmas: „Arduino“įkrovos įkėlimas
Aš šiek tiek sukčiavau, nes norėjau supaprastinti ryšius naudodamas RBBB. Schema yra 2 paveiksle. Jei naudojate 2 arduinus, naudokite 3 paveikslėlį ir prijunkite ISP kaištį prie ICSP 2x3header ant antrojo (slave) arduino. USB jungtį prijunkite tik prie pirmosios plokštės. GUI būdas Tai šiek tiek sudėtinga, nes jūs negalite tiesiog naudoti Įrankiai-> Įrašyti įkrovos įkėlimo programą-> su AVR ISP, nes numatytasis greitis yra per didelis mega-ISP. Raskite avrdude.conf, pateiktą kartu su arduino IDE (programoje arduino/hardware/tools/avrdude.conf), ir pakeiskite avrisp programuotojo ribą nuo 115200 iki 19200 (aplink 312 eilutę) Raskite ir pakeiskite avrdude.conf programmer id = "avrisp"; desc = "Atmel AVR ISP"; baudos sparta = 115200; # numatytasis yra 115200 tipas = stk500;; to: programuotojas id = "avrisp"; desc = "Atmel AVR ISP"; baudos sparta = 19200; # numatytasis yra 115200 tipas = stk500;; Dabar galite naudoti Įrankiai -> Įrašyti įkrovos tvarkyklę -> su AVR ISP (pasirinkę tinkamą plokštę meniu Įrankiai) Komandinė eilutė Taip pat galite naudoti komandų eilutę: Redaguoti arduino/hardware/bootloaders/atmega/Makefile ir pakeisti ISPTOOL/PORT /SPEED: sudegink blinky!
7 žingsnis: trikčių šalinimas
Avrdude klaidos: avrdude: ser_open (): negaliu atidaryti įrenginio "/dev/ttyUSB0": Nėra tokio failo ar katalogo Nurodytas neteisingas prievadas (-P) arba jūsų arduino neprijungtas. patikrinkite ryšį avrdude: Įrenginio parašas = 0x000000 avrdude: Taip! Netinkamas įrenginio parašas. Dar kartą patikrinkite jungtis ir bandykite dar kartą arba naudokite -F, kad nepaisytumėte šio patikrinimo. Tai yra bendra klaida. Jūsų mikroschema neatpažįstama. Patikrinkite plokštės jungtį (GND/5V prijungta prie kaiščių?) Šią klaidą gausite, kai jūsų lustas sukonfigūruotas naudoti išorinį osciliatorių ir jis neveikia (jo nėra arba jis tinkamai nesvyra - 22pf dangteliai) dingęs ?)
Rekomenduojamas:
Kaip užprogramuoti ir įkelti ATtiny85 naudojant USBasp: 5 žingsniai
Kaip užprogramuoti ir įkelti ATtiny85 naudojant USBasp: Šioje instrukcijoje jūs tiksliai sužinosite, kaip įkelti ir užprogramuoti ATtiny85 mikroschemą paprasčiausiu būdu, kurį galėčiau išsiaiškinti. Tai yra mano pirmasis nurodymas, todėl jei turite kokių nors patarimų ar patarimų, kaip sukurti geresnius vadovus, nedvejodami bendradarbiaukite
Kaip užprogramuoti PIC MCU naudojant „PICkit“programuotoją naudojant „Breadboard“: 3 žingsniai
Kaip užprogramuoti PIC MCU naudojant „PICkit“programuotoją naudojant „Breadboard“: norint žaisti su PIC (ar bet kuriuo kitu) mikrovaldikliu, jums nereikia brangių ir sudėtingų įrankių. Viskas, ko jums reikia, yra duonos lenta, kurioje išbandysite savo grandinę ir programavimą. Žinoma, tam tikras programuotojas ir IDE yra būtini. Šioje instrukcijoje
Kaip užprogramuoti „Arduino Pro Mini“naudojant „Arduino Uno“: 4 žingsniai
Kaip užprogramuoti „Arduino Pro Mini“naudojant „Arduino Uno“: aš tai parašiau kaip kito projekto dalį, bet tada nusprendžiau naudoti „Pro Micro“, kurį galima užprogramuoti tiesiai iš nešiojamojo kompiuterio. Tačiau tai gali būti naudinga kada nors (arba kam nors) Paliksiu čia
Kaip užprogramuoti „NodeMCU“naudojant „Arduino IDE“: 5 žingsniai
Kaip užprogramuoti „NodeMCU“naudojant „Arduino IDE“: „Osoyoo NodeMCU“yra iš anksto užprogramuotas naudojant „Lua“vertėją, tačiau jums nereikia jo naudoti! Vietoj to galite naudoti „Arduino IDE“, kuris gali būti puikus atspirties taškas „Arduino“mėgėjams susipažinti su technologijomis, supančiomis aplinką
Kaip užprogramuoti AVR plokštę naudojant „Arduino“lentą: 6 žingsniai
Kaip užprogramuoti AVR plokštę naudojant „Arduino“plokštę: Ar turite AVR mikrovaldiklio plokštę? Ar sudėtinga jį programuoti? Na, jūs esate tinkamoje vietoje. Čia aš jums parodysiu, kaip užprogramuoti „Atmega8a“mikrovaldiklio plokštę, naudojant „Arduino Uno“plokštę kaip programuotoją. Taigi be to