Cuprins:

Ghid de ardere Atmega328P-PU Bootloader (Optiboot): 12 pași
Ghid de ardere Atmega328P-PU Bootloader (Optiboot): 12 pași

Video: Ghid de ardere Atmega328P-PU Bootloader (Optiboot): 12 pași

Video: Ghid de ardere Atmega328P-PU Bootloader (Optiboot): 12 pași
Video: Am slabit in 60 de zile | Tehnica mea de ardere grasime 2024, Decembrie
Anonim
Ghid de ardere Atmega328P-PU Bootloader (Optiboot)
Ghid de ardere Atmega328P-PU Bootloader (Optiboot)

Încă un alt încărcător de încărcare Atmega arde Giude. Dar de data aceasta pariez pe prima încercare că vei reuși !!

Acesta este tutorialul de încărcare a bootloader-ului Nick Gammons pentru plăcile Arduino.

Pasul 1: câteva cuvinte

Câteva cuvinte
Câteva cuvinte

Microcontrolerul Atmega328P-PU este unul dintre cele mai populare cipuri Arduino care sunt utilizate într-o gamă largă din întreaga lume. Dar, cel mai important, oasele goale Atmega încă face ceea ce poate face Uno R3 standard. Principalul motiv pentru care îmi place acest microcontroler este modul „Low Power”. Am scris câteva schițe noi pentru câțiva senzori și le testez de ceva vreme.

În urmă cu câțiva ani când am început să joc cu Arduino prima mea comandă a fost un microcontroler Atmega328P. Mai târziu mi-am dat seama că cele pe care le-am comandat de la Aliexpress sunt jetoane goale. Cipurile sunt foarte ieftine pe Ali, le puteți cumpăra de la 1,40 $. Dar nu au conținut Uno Bootloader (Optiboot) și fără el nu aș putea încărca schițe. Pauza dura ha ?? !! A fost un duș cu adevărat rece pentru mine … Așadar, căutam o modalitate de a arde încărcătorul în jetoane. Am încercat 5 sau 6 metode, dar fără noroc. După o săptămână am găsit un subiect pe un forum de pe site care menționa tutorialul de încărcare a bootloader-ului lui Nick Gammon. Prima încercare și SUCCES !!: D Acum vă voi arăta cum să ardeți încărcătorul de încărcare pe cipurile goale Atmega328P-PU fără a încurca lucruri în Arduino IDE.

Pasul 2: Ce este Bootloader-ul? (Optiboot)

Bootloader-ul este un program mic (fișier HEX, 0,5Kbyte) care vă permite să încărcați schițe în memoria flash direct din Arduino IDE. Fișierul HEX rulează întotdeauna înainte de programul principal și de aceea este necesar.

Fără bootloader:

-Microcontrolerul POATE FI PROGRAMAT! (Da, este posibil), dar ai avea nevoie de un programator AVR dedicat pentru a face asta. Și nu este ieftin!

- Nu poate fi programat prin Arduino IDE.

Bootloadere acceptate pentru această metodă:

Atmega8 (1024 octeți)

Atmega168 Optiboot (512 octeți)

Atmega328 Optiboot (pentru Uno etc. la 16 MHz) (512 octeți)

Atmega328 (8 MHz) pentru Lilypad etc. (2048 octeți)

Atmega32U4 pentru Leonardo (4096 octeți) Atmega1280 Optiboot (1024 octeți)

Atmega1284 Optiboot (1024 octeți)

Atmega2560 cu remedieri pentru problema temporizatorului de pază (8192 octeți)

Atmega16U2 - bootloader-ul de pe cipul de interfață USB al Uno

Atmega256RFR2 - bootloader-ul de pe placa Pinoccio Scout

Codul pentru următoarele încărcătoare de încărcare este încorporat în schiță și va fi descărcat în funcție de semnătura detectată.

Deci avem tot ce ne trebuie.

Pasul 3: Arduino Sketches Master

Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master

În primul rând aveți nevoie de biblioteca arduino.

Descărcați-l de aici:

Sau descărcați-l de aici.

După ce ați descărcat extrageți-o în bibliotecile Arduino mai vechi și căutați Board Programmer. Deschideți-l și rulați Board Programmer.ino.

Pasul 4: Configurarea hardware-ului

Configurarea hardware
Configurarea hardware
Configurarea hardware
Configurarea hardware
Configurarea hardware
Configurarea hardware
Configurarea hardware
Configurarea hardware

Există 3 moduri de conectare înainte de programare:

- Folosiți scutul AVR ISP

- Arduino A la Arduino B.

- Și metoda plăcii

Pe imagine puteți vedea cum să vă conectați. Pe panou, condensatorii ceramici nu sunt cu adevărat necesari, dar trebuie adăugat cristalul de 16 MHz.

De data aceasta folosesc scutul meu AVR ISP.

Scopul acestei metode este acela că programul folosește monitorul serial pentru a accesa memoria flash pentru a scrie Optiboot (bootloader)

Pasul 5: Programarea

Programarea!
Programarea!
Programarea!
Programarea!

După finalizarea configurării hardware, rulați Board Programmer.ino!

Compilați și încărcați pe Arduino, dar nu închideți fereastra !! Veți avea nevoie de ea:)

Încărcarea va dura câteva secunde.

Pasul 6: Deconectează-te

După ce ați încărcat schița, deconectați Arduino de pe computer și conectați totul dacă intenționați să faceți acest lucru pe panou.

Dacă utilizați scutul AVR, puneți cipul Atmega în soclul ZIF și „blocați-l”.

Foarte important: Atâta timp cât hardware-ul nu este configurat, procesorul nu trebuie să primească VCC !! În felul acesta riști o pagubă !!

Pasul 7: Conectați-vă

Conectați!
Conectați!

Bine! Hardware-ul este configurat și totul este la locul nostru, conectăm Arduino la computer.

Apoi deschideți monitorul serial și setați rata de transmisie 115200 și veți vedea acest lucru.

Pe monitorul serial puteți vedea că Arduino a intrat în modul de programare. Misto!!:)

Din moment ce dorim să programăm Uno (Atmega328P), tastați un „U” în mesajul prompt și apăsați Enter.

Pasul 8: Starea de programare

Starea de programare!
Starea de programare!

În fereastra următoare veți vedea acest lucru.

Nu vom renunța sau Verifica, tastați un G și apăsați Enter!

Pasul 9: Începe distracția!:)

Distracția începe!:)
Distracția începe!:)

După ce ați apăsat pe Enter, veți vedea acest lucru:

Ștergerea cipului … Scrierea încărcătorului de încărcare …

Pagină de validare începând de la 0x7E00 Pagină de validare începând cu 0x7E80

Pagină de comitere începând de la 0x7F00

Pagină de comitere începând de la 0x7F80

Scris. Se verifică …

Nu s-au găsit erori.

Scrierea siguranțelor … LFuse = 0xFF

HFuse = 0xDE

EFuse = 0xFD

Octet de blocare = 0xEF Calibrare ceas = 0x9E

Terminat.

Mod programare dezactivat. Tastați „C” când sunteți gata să continuați cu un alt cip …

Și zi fericită !!: D Cipul dvs. Atmega328P este acum gata pentru a încărca schițe!

A fost ușor, nu-i așa?:)

Pasul 10: un nou cip

Dacă doriți să programați un alt cip, deconectați Arduino de la computer, înlocuiți cipul cu unul gol. Reconectați Arduino și faceți din nou pașii.

Dacă monitorul serial nu răspunde după reconectarea Arduino, nu intrați în panică, închideți-l și deschideți unul nou.

Pasul 11: DISCLAIMER

NU DEȚIN NIMIC DIN ASTA !! Tot meritul îi revine lui Nick Gammon !!

Tocmai am arătat această metodă în acest instructabil.

Sper că veți găsi acest lucru util.

O zi plăcută.

Pasul 12: Când se întâmplă lucruri ciudate

Când se întâmplă lucruri ciudate
Când se întâmplă lucruri ciudate
Când se întâmplă lucruri ciudate
Când se întâmplă lucruri ciudate

Recent am primit acest Arduino Nano cu procesor Atmega328P-MU.

Așa că am încercat să încărc o schiță în ea, dar nu am putut. Procesorul nu a răspuns la nimic cu opțiunile Atmega328.

BINE! Deci, poate bootloader-ul este corupt și are nevoie de o rescriere. L-am conectat cu un alt arduino și am terminat încărcarea bootloaderului. Încă nimic……!!!!

Ok, atunci am nevoie de o frână (cafea și o țigară) !! Ca ultimă șansă, am selectat din nou Arduino Uno ca țintă. Încărcare completă: D

În acest moment am un Nano care acționează ca un Arduino Uno. Nu știu de ce s-a întâmplat acest lucru, dar cred că acest lucru se datorează semnăturii procesorului. Oricum mi-a făcut ziua cu adevărat și este cam amuzant:)

Recomandat: