Turinys:

„Atmega328P-PU Bootloader“(„Optiboot“) įrašymo vadovas: 12 žingsnių
„Atmega328P-PU Bootloader“(„Optiboot“) įrašymo vadovas: 12 žingsnių

Video: „Atmega328P-PU Bootloader“(„Optiboot“) įrašymo vadovas: 12 žingsnių

Video: „Atmega328P-PU Bootloader“(„Optiboot“) įrašymo vadovas: 12 žingsnių
Video: HOW TO BURN BOOTLOADER IN ATMEGA328P MICROCONTROLLER . HELP OF USING ARDUINO UNO 2024, Liepa
Anonim
„Atmega328P-PU Bootloader“(„Optiboot“) degimo vadovas
„Atmega328P-PU Bootloader“(„Optiboot“) degimo vadovas

Dar vienas „Atmega“įkrovos įkrovos įrenginys. Bet šį kartą lažinuosi dėl pirmo bandymo, jums pavyks !!

Tai „Nick Gammons“įkrovos įkėlimo pamoka „Arduino“plokštėms.

1 žingsnis: keli žodžiai

Keli žodžiai
Keli žodžiai

„Atmega328P-PU“mikrovaldiklis yra vienas populiariausių „Arduino“lustų, plačiai naudojamas visame pasaulyje. Bet svarbiausia, kad pliki kaulai „Atmega“vis dar daro tai, ką gali standartinis „Uno R3“. Pagrindinė priežastis, kodėl man patinka šis mikrovaldiklis, yra „Mažos galios“režimas. Aš parašiau keletą naujų eskizų keliems jutikliams ir kurį laiką juos bandau.

Po kelerių metų, kai pradėjau žaisti su „Arduino“, pirmasis mano užsakymas buvo „Atmega328P“mikrovaldiklis. Vėliau supratau, kad tie, kuriuos užsisakiau iš „Aliexpress“, yra tušti lustai. Lustai „Ali“yra labai pigūs, juos galite nusipirkti nuo 1,40 USD. Tačiau juose nebuvo „Uno Bootloader“(„Optiboot“) ir be jo negalėjau įkelti eskizų. Sunki pertrauka ha ?? !! Man tai buvo tikrai šaltas dušas…. Aš išbandžiau 5 ar 6 metodus, bet nesėkmingai. Po savaitės svetainės forume radau temą, kurioje paminėta Nick Gammon įkrovos įkėlimo pamoka. Pirmas bandymas ir Sėkmės !!: D Dabar aš jums parodysiu, kaip lengvai įrašyti įkrovos tvarkyklę į tuščius „Atmega328P-PU“lustus, nesugadinant „Arduino IDE“dalykų.

2 veiksmas: kas yra įkrovos įkroviklis? („Optiboot“)

Įkrovos įkėlimo programa yra maža programa (HEX failas, 0,5 KB), leidžianti įkelti eskizus į „flash“atmintį tiesiai iš „Arduino IDE“. HEX failas visada paleidžiamas prieš pagrindinę programą, todėl jis reikalingas.

Be įkrovos tvarkyklės:

-Mikrovaldiklis vis dar gali būti užprogramuotas! (Taip, tai įmanoma), tačiau tam jums reikės specialaus AVR programuotojo. Ir tai nėra pigu!

- Jo negalima užprogramuoti per „Arduino IDE“.

Palaikomi šio metodo įkrovos įkrovikliai:

„Atmega8“(1024 baitai)

„Atmega168 Optiboot“(512 baitų)

„Atmega328 Optiboot“(skirtas „Uno“ir tt 16 MHz dažniu) (512 baitų)

„Atmega328“(8 MHz) „Lilypad“ir kt. (2048 baitai)

„Atmega32U4“, skirtas „Leonardo“(4096 baitai) „Atmega1280 Optiboot“(1024 baitai)

„Atmega1284 Optiboot“(1024 baitai)

„Atmega2560“su sargybos laikmačio problemos taisymais (8192 baitai)

„Atmega16U2“- įkrovos įkroviklis „Uno“USB sąsajos mikroschemoje

„Atmega256RFR2“- įkrovos įkėlėjas „Pinoccio Scout“lentoje

Toliau nurodytų įkrovos tvarkyklių kodas yra įtrauktas į eskizą ir bus atsisiųstas atsižvelgiant į tai, koks parašas aptiktas.

Taigi mes turime viską, ko mums reikia.

3 žingsnis: „Arduino“eskizų meistras

Arduino eskizų meistras
Arduino eskizų meistras
Arduino eskizų meistras
Arduino eskizų meistras
Arduino eskizų meistras
Arduino eskizų meistras

Pirmiausia jums reikia arduino bibliotekos.

Atsisiųskite jį iš čia:

Arba atsisiųskite jį iš čia.

Atsisiuntę ištraukite jį į „Arduino“bibliotekų forlder ir ieškokite „Board Programmer“. Atidarykite jį ir paleiskite Board Programmer.ino.

4 žingsnis: Aparatūros sąranka

Aparatūros sąranka
Aparatūros sąranka
Aparatūros sąranka
Aparatūros sąranka
Aparatūros sąranka
Aparatūros sąranka
Aparatūros sąranka
Aparatūros sąranka

Prieš programavimą yra trys būdai:

- Naudokite AVR ISP skydą

- nuo Arduino A iki Arduino B

- Ir duonos lentos metodas

Nuotraukoje galite pamatyti, kaip prijungti. Ant duonos lentos keraminiai kondensatoriai tikrai nereikalingi, tačiau reikia pridėti 16Mhz kristalų.

Šį kartą naudoju savo AVR IPT skydą.

Šio metodo tikslas yra, kad programa naudotų nuoseklųjį monitorių, kad pasiektų „flash“atmintį ir rašytų „Optiboot“(įkrovos įkėlimo programą)

5 žingsnis: programavimas

Programavimas!
Programavimas!
Programavimas!
Programavimas!

Kai aparatūros sąranka bus baigta, paleiskite Board Programmer.ino!

Sudarykite ir įkelkite į „Arduino“, bet neuždarykite lango !! Tau reiks:)

Įkėlimas užtruks kelias sekundes.

6 žingsnis: atjunkite

Įkėlę eskizą, atjunkite „Arduino“iš savo kompiuterio ir viską sujunkite, jei planuojate tai padaryti duonos lentoje.

Jei naudojate AVR skydą, įdėkite „Atmega“mikroschemą į ZIF lizdą ir „užrakinkite“.

Labai svarbu: kol aparatūra nėra nustatyta, procesorius neturi gauti VCC !! Taip rizikuojate pakenkti !!

7 žingsnis: prisijunkite

Prisijungti!
Prisijungti!

Gerai! Techninė įranga yra nustatyta ir viskas yra vietoje, mes prijungiame „Arduino“prie kompiuterio.

Tada atidarykite serijinį monitorių ir nustatykite duomenų perdavimo spartą 115200 ir pamatysite tai.

Serijiniame monitoriuje galite pamatyti, kad „Arduino“įjungė programavimo režimą. Saunus!!:)

Kadangi norime užprogramuoti „Uno“(„Atmega328P“), pranešimo eilutėje įveskite „U“ir paspauskite „Enter“.

8 žingsnis: būsenos programavimas

Programavimo būsena!
Programavimo būsena!

Kitame lange tai pamatysite.

Mes neišeisime ir nepatvirtinsime, įveskite G ir paspauskite „Enter“!

9 žingsnis: Pramogos prasideda!:)

Pramogos prasideda!:)
Pramogos prasideda!:)

Paspaudę „Enter“pamatysite tai:

Ištrinamas lustas … Rašomas įkrovos įkėlimo programa …

Įsipareigojimo puslapis prasideda nuo 0x7E00 Įsipareigojimo puslapis prasideda nuo 0x7E80

Įsipareigojantis puslapis nuo 0x7F00

Įsipareigojantis puslapis nuo 0x7F80

Parašyta. Tikrinama …

Klaidų nerasta.

Rašymo saugikliai… LFuse = 0xFF

HFuse = 0xDE

EFuse = 0xFD

Užrakinti baitą = 0xEF Laikrodžio kalibravimas = 0x9E

Padaryta.

Programavimo režimas išjungtas. Įveskite „C“, kai būsite pasiruošę tęsti kitą lustą…

Ir laimingos dienos !!: D Jūsų „Atmega328P“lustas dabar paruoštas įkelti eskizus!

Tai buvo lengva, ar ne?:)

10 žingsnis: naujas lustas

Jei norite užprogramuoti kitą lustą, atjunkite „Arduino“nuo kompiuterio, pakeiskite lustą tuščiu. Iš naujo prijunkite „Arduino“ir pakartokite veiksmus.

Jei serijinis monitorius nereaguoja iš naujo prijungus „Arduino“, nepanikuokite, tiesiog uždarykite jį ir atidarykite naują.

11 žingsnis: ATSISAKYMAS

Aš NIEKO TAI NETURIU !! Visas nuopelnas priklauso Nickui Gammonui !!

Aš tiesiog parodžiau šį metodą šioje instrukcijoje.

Tikimės, kad tai jums bus naudinga.

Geros dienos.

12 žingsnis: kai nutinka keistų dalykų

Kai nutinka keistų dalykų
Kai nutinka keistų dalykų
Kai nutinka keistų dalykų
Kai nutinka keistų dalykų

Neseniai gavau šį „Arduino Nano“su „Atmega328P-MU“procesoriumi.

Taigi bandžiau įkelti eskizą, bet nepavyko. Procesorius nieko neatsakė pasirinkdamas „Atmega328“.

GERAI! Taigi galbūt įkrovos tvarkyklė yra sugadinta ir ją reikia perrašyti. Aš prijungiau jį prie kito arduino ir įrašiau įkrovos įkroviklį. Vis dar nieko……!!!!

Gerai, man reikia stabdžio (kavos ir cigaretės) !! Paskutinė proga aš vėl pasirinkau „Arduino Uno“kaip taikinį. Įkėlimas baigtas: D

Šiuo metu turiu „Nano“, kuris veikia kaip „Arduino Uno“. Nežinau, kodėl taip atsitiko, bet manau, kad taip yra dėl procesoriaus parašo. Bet kokiu atveju tai labai pagyvino mano dieną ir buvo šiek tiek juokinga:)

Rekomenduojamas: