![ATTiny85, ATTiny84 ir ATMega328P programavimas: „Arduino“kaip ISP: 9 žingsniai (su nuotraukomis) ATTiny85, ATTiny84 ir ATMega328P programavimas: „Arduino“kaip ISP: 9 žingsniai (su nuotraukomis)](https://i.howwhatproduce.com/images/003/image-8392-15-j.webp)
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-23 14:59
![ATTiny85, ATTiny84 ir ATMega328P programavimas: „Arduino“kaip IPT ATTiny85, ATTiny84 ir ATMega328P programavimas: „Arduino“kaip IPT](https://i.howwhatproduce.com/images/003/image-8392-16-j.webp)
![ATTiny85, ATTiny84 ir ATMega328P programavimas: „Arduino“kaip IPT ATTiny85, ATTiny84 ir ATMega328P programavimas: „Arduino“kaip IPT](https://i.howwhatproduce.com/images/003/image-8392-17-j.webp)
Pratarmė
Neseniai kūriau keletą ESP8266 pagrįstų IoT projektų ir pastebėjau, kad pagrindinis procesorius sunkiai atlieka visas užduotis, kurių man reikėjo valdyti, todėl nusprendžiau kai kurias mažiau svarbias veiklas paskirstyti kitam (-iems) mikrovaldikliui (-iams) tokiu būdu atlaisvinamas ESP8266, kad jis galėtų toliau dirbti kaip daiktų interneto įrenginys.
Kadangi norėjau paskelbti savo projektą kuo platesnei auditorijai, nusprendžiau naudoti „Arduino IDE“kaip pasirinktą kūrimo platformą, nes ji turi tokią plačiai remiamą bendruomenę.
Dizaino apribojimai
Siekdamas pagrįstai išplėsti tikslinius įtaisus, leidžiančius pasirinkti tinkamą mikrovaldiklį atitinkamai programai, aš nusprendžiau šias „Atmel“dalis; ATMega328P, ATTiny84 ir ATTiny85. Norėdami apriboti reikiamo programuotojo sudėtingumą, aš apribojau laikrodžio pasirinkimą vidiniam visiems įrenginiams ir 16 MHz išorinį tik ATMega328P ir ATTiny84.
Toliau pateikiamas užrašų apie programavimą su „Arduino“rinkinys ir aprašymas, kaip aš sukūriau paprastą „Arduino Uno“pagrindu sukurtą šių įrenginių programuotoją (nuotraukos aukščiau).
Kokių dalių man reikia?
Norėdami sukurti programuotoją, jums reikės šių dalių
- 1 nuolaida „Arduino Uno“
- 2 išjungti 28 kontaktų nulinės įterpimo jėgos (ZIF) DIP lizdai (ATMega328P, ATTiny85, ATTiny84)
- 1 nuo „Arduino“prototipo skydo (aš čia gavau;
- 2 išjungti 5 mm šviesos diodai
- 2 išjungti 1K rezistoriai
- 1 išjungtas 10K rezistorius
- 4 išjungti 22pF keraminiai kondensatoriai
- 2 išjungti 16MHz kristalai
- 3 išjungti 0,1uF keraminius kondensatorius
- 1 išjungtas 47uF elektrolitinis kondensatorius
- 1 išjungtas 10uF elektrolitinis kondensatorius
- Įvairaus ilgio vielos apvyniojimo viela.
Kokios programinės įrangos man reikia?
„Arduino IDE“1.6.9
Kokių įgūdžių man reikia?
- „Arduino IDE“žinios
- Kai kurios elektronikos ir litavimo žinios
- Didelis rankų miklumas
- Kantrybė ir geras regėjimas
Aptartos temos
- Bendras įvadas į „Atmel“mikrovaldiklių programavimą
- IPT arba „Bootloader“: viskas šiek tiek painu
- Grandinės apžvalga
- Programuotojo nustatymas
- Naudojant „Arduino“IPT programuotoją
- Kuriamas kodas jūsų tikslinėje sistemoje
- Gotchas
- Išvada
- Naudotos nuorodos
Atsisakymas
Kaip visada, šias instrukcijas naudojate savo rizika ir jos nepalaikomos
1 žingsnis: Bendras įvadas apie „Atmel“mikrovaldiklių programavimą
![Bendras įvadas apie „Atmel“mikrovaldiklių programavimą Bendras įvadas apie „Atmel“mikrovaldiklių programavimą](https://i.howwhatproduce.com/images/003/image-8392-18-j.webp)
![Bendras įvadas apie „Atmel“mikrovaldiklių programavimą Bendras įvadas apie „Atmel“mikrovaldiklių programavimą](https://i.howwhatproduce.com/images/003/image-8392-19-j.webp)
![Bendras įvadas apie „Atmel“mikrovaldiklių programavimą Bendras įvadas apie „Atmel“mikrovaldiklių programavimą](https://i.howwhatproduce.com/images/003/image-8392-20-j.webp)
Yra du „Atmel“mikrovaldiklių programavimo būdai;
- Sistemos programavime (IPT),
- Savarankiškas programavimas (naudojant įkrovos tvarkyklę).
Pirmasis metodas (1) tiesiogiai užprogramuoja mikrovaldiklį per SPI sąsają po to, kai pirmą kartą įjungiamas įrenginys. Jei nenurodyta kitaip, sukompiliuota vykdomojo kodo programa į įrenginį palaipsniui įrašoma į kodo atmintį, iš kurios ji vykdoma paleidžiant. Yra daug IPT įrenginių, galinčių programuoti „Atmel“įrenginius, iš kurių keletas yra (1 pav.); AVRISPmkII, Atmel-ICE, Olimex AVR-ISP-MK2, Olimex AVR-ISP500. 2 paveiksle parodyta, kaip IPT įrenginys jungiasi prie „ATMega328P“(keistai pažymėtas ICSP) „Arduino Uno R3“plokštėje (3 pav. Parodytas IPT kaištis). Taip pat galima programuoti „Atmel“mikrovaldiklį per jo SPI sąsają naudojant „Arduino Uno“kaip interneto tiekėją (4 pav.), Čia „Uno“naudojamas programuoti „ATMega328P“.
Pastarasis metodas (2) naudoja mažą kodo atotrūkį, vadinamą „įkrovos įkrovikliu“, nuolat esantį vykdomojo kodo atmintyje (paprastai užrakintas, kad būtų išvengta atsitiktinio 5 paveikslo perrašymo). Šis kodas pirmiausia vykdomas įjungus arba iš naujo nustatant įrenginį ir leidžia mikrovaldikliui iš naujo užprogramuoti naują kodą, gautą per vieną iš jo sąsajų iš išorinio šaltinio. „Arduino IDE“naudoja įkrovos įkėlimo metodą, kad iš naujo užprogramuotų „Arduinos“, susietas su kompiuterio USB prievadu (arba MAC, „Linux“dėžutė ir pan., 6 pav.), O „Arduino Uno“atveju su „Atmel“įrenginiu bendrauja per jį ATMega328P 2 ir 3 IC kaiščių nuosekli sąsaja. Taip pat „Arduino Uno“(su pašalintu „ATMega328P“mikrovaldikliu) galima naudoti programuojant „ATMega328P“naudojant įkrovos įkėlimo metodą, veiksmingai veikiantį kaip USB į nuoseklųjį adapterį (7 pav.).
Kas yra USB į nuoseklųjį adapterį?
USB į nuoseklųjį adapterį yra aparatūros dalis, kuri prijungiama prie jūsų kompiuterio USB prievado ir atrodo kaip nuoseklusis prievadas (palikimas iš ankstesnių laikų, kai kompiuteriai naudojo nuoseklaus ryšio standartą, žinomą kaip EIA-232, V24 arba RS232), leidžiantį siųsti ir gauti serijinius duomenis tais pačiais mikrovaldiklio elektriniais lygiais. Kai iš „Arduino IDE“pasirenkate Įrankiai -> Prievadas -> COMx, jūs jungiate/jungiate kompiuterį prie „Arduino“.
Toks įrenginys kartais vadinamas FTDI (8 pav., Kuris iš tikrųjų yra prekės ženklas) arba CH340G ir tt USB prie serijinio „Arduino uno“pasiekiamas naudojant ATMega16U2-MU (R) IC ZU4, kaip nurodyta „Arduino“schemoje žemiau.
Aiškumo dėlei 9 paveiksle identifikuojami du „Atmel“įrenginiai ir atitinkami „Arduino Uno R3“ISP jungtys.
1 pastaba: jei nuspręsite eiti FTDI įrenginių keliu, įsitikinkite, kad perkate iš patikimo pardavėjo, nes rinkoje buvo daug pigių padirbtų prietaisų, kurie nepavyko pritaikius „Windows“naujinimą.
Rekomenduojamas:
„Attiny85“vienu metu programavimas arba moliūgas su įvairiaspalvėmis akimis: 7 žingsniai
![„Attiny85“vienu metu programavimas arba moliūgas su įvairiaspalvėmis akimis: 7 žingsniai „Attiny85“vienu metu programavimas arba moliūgas su įvairiaspalvėmis akimis: 7 žingsniai](https://i.howwhatproduce.com/images/001/image-77-24-j.webp)
„Attiny85“programavimas vienu metu arba moliūgas su įvairiaspalvėmis akimis: Šis projektas parodo, kaip valdyti du 10 mm trijų spalvų bendrus anodo šviesos diodus (įvairiaspalves moliūgų Helovino blizgučių akis) su „Attiny85“mikroschema. Projekto tikslas - supažindinti skaitytoją su vienu metu veikiančio programavimo menu ir Adomo D
„ATtiny85“nešiojamas vibruojančios veiklos stebėjimo laikrodis ir programavimas „ATtiny85“su „Arduino Uno“: 4 žingsniai (su nuotraukomis)
![„ATtiny85“nešiojamas vibruojančios veiklos stebėjimo laikrodis ir programavimas „ATtiny85“su „Arduino Uno“: 4 žingsniai (su nuotraukomis) „ATtiny85“nešiojamas vibruojančios veiklos stebėjimo laikrodis ir programavimas „ATtiny85“su „Arduino Uno“: 4 žingsniai (su nuotraukomis)](https://i.howwhatproduce.com/images/002/image-4670-11-j.webp)
„ATtiny85“nešiojamas vibruojančios veiklos stebėjimo laikrodis ir programavimas ATtiny85 su „Arduino Uno“: kaip padaryti nešiojamą veiklos stebėjimo laikrodį? Tai nešiojama programėlė, sukurta vibruoti aptikus sąstingį. Ar daug laiko praleidžiate prie kompiuterio kaip aš? Ar tu sėdi valandas to nesuvokdamas? Tada šis įrenginys yra
„Attiny85“programavimas (skydas) naudojant „Arduino UNO“: 7 žingsniai
![„Attiny85“programavimas (skydas) naudojant „Arduino UNO“: 7 žingsniai „Attiny85“programavimas (skydas) naudojant „Arduino UNO“: 7 žingsniai](https://i.howwhatproduce.com/images/002/image-4786-88-j.webp)
„Attiny85“programavimas (skydas) „Arduino UNO“naudojimas: žaisti su „Arduino“yra labai smagu. Tačiau kartais dydis yra svarbus. „Arduino UNO“yra mažas, tačiau jei jums reikia, kad jūsų projektas būtų mažame korpuse, UNO gali būti per didelis. Galite pabandyti naudoti NANO arba MINI, bet jei tikrai norite
Lustų programavimas naudojant „Arduino“- AVR ISP, apimantis ATTiny85, ATTiny2313 ir ATMega328: 3 žingsniai
![Lustų programavimas naudojant „Arduino“- AVR ISP, apimantis ATTiny85, ATTiny2313 ir ATMega328: 3 žingsniai Lustų programavimas naudojant „Arduino“- AVR ISP, apimantis ATTiny85, ATTiny2313 ir ATMega328: 3 žingsniai](https://i.howwhatproduce.com/images/002/image-4916-30-j.webp)
Lustų programavimas naudojant „Arduino“- AVR IPT, apimantis ATTiny85, ATTiny2313 ir ATMega328: radau tai kaip juodraštį prieš daugelį metų. Tai bent man vis dar naudinga, todėl aš ją paskelbsiu! Ši instrukcija yra žinių, surinktų iš viso tinklo ir „nstructables“, kaupimas. Tai apima AVR Microco programavimą
Pigiausias „Arduino“-- Mažiausias „Arduino“-- „Arduino Pro Mini“-- Programavimas -- „Arduino Neno“: 6 žingsniai (su nuotraukomis)
![Pigiausias „Arduino“-- Mažiausias „Arduino“-- „Arduino Pro Mini“-- Programavimas -- „Arduino Neno“: 6 žingsniai (su nuotraukomis) Pigiausias „Arduino“-- Mažiausias „Arduino“-- „Arduino Pro Mini“-- Programavimas -- „Arduino Neno“: 6 žingsniai (su nuotraukomis)](https://i.howwhatproduce.com/images/003/image-6862-42-j.webp)
Pigiausias „Arduino“|| Mažiausias „Arduino“|| „Arduino Pro Mini“|| Programavimas || Arduino Neno: …………………………. Prenumeruokite mano „YouTube“kanalą, kad gautumėte daugiau vaizdo įrašų ……. .Šis projektas yra apie tai, kaip sujungti mažiausią ir pigiausią arduino. Mažiausias ir pigiausias arduino yra arduino pro mini. Tai panašu į arduino