Përmbajtje:

Udhëzuesi i djegies së Atmega328P-PU Bootloader (Optiboot): 12 hapa
Udhëzuesi i djegies së Atmega328P-PU Bootloader (Optiboot): 12 hapa

Video: Udhëzuesi i djegies së Atmega328P-PU Bootloader (Optiboot): 12 hapa

Video: Udhëzuesi i djegies së Atmega328P-PU Bootloader (Optiboot): 12 hapa
Video: #gjesi: Kujdesi i madh ndaj vetes, egoizëm apo domosdoshmëri | T7 2024, Korrik
Anonim
Udhëzues për djegien e Atmega328P-PU Bootloader (Optiboot)
Udhëzues për djegien e Atmega328P-PU Bootloader (Optiboot)

Edhe një tjetër bootloader Atmega që djeg djallëzi. Por këtë herë vë bast në përpjekjen e parë që do të kesh sukses !!

Ky është mësimi i djegies së bootloader të Nick Gammons për bordet Arduino.

Hapi 1: Disa fjalë

Disa fjale
Disa fjale

Mikrokontrolluesi Atmega328P-PU është një nga çipat më të njohur Arduino që përdoren në një gamë të gjerë në të gjithë botën. Por më e rëndësishmja eshtrat e zhveshur Atmega ende bën atë që mund të bëjë standardi Uno R3. Arsyeja kryesore pse e dua këtë mikrokontrollues është modaliteti "Fuqia e ulët". Unë kam shkruar disa skica të reja për disa sensorë dhe po i testoj ato për një kohë tani.

Në disa vjet kur fillova të luaja me Arduino porosia ime e parë ishte një mikrokontrollues Atmega328P. Më vonë kuptova se ato që kam porositur nga Aliexpress janë patate të skuqura bosh. Patate të skuqura janë shumë të lira për Aliun, mund t'i blini nga 1.40 $. Por ata nuk kanë përmbajtur Uno Bootloader (Optiboot) dhe pa të nuk mund të ngarkoja asnjë skicë. Pushim i veshtire ha ?? !! Ishte një dush vërtet i ftohtë për mua ……. Kështu që unë po kërkoja një mënyrë për të djegur ngarkuesin në çipa. Kam provuar 5 ose 6 metoda, por nuk kam fat. Pas një jave gjeta një temë në një forum në internet që përmendte mësimin e djegies së bootloader të Nick Gammon. Përpjekja e parë dhe SUKSESI !!: D Tani do t'ju tregoj se si ta digjni ngarkuesin në patate të skuqura Atmega328P-PU lehtë pa i ngatërruar gjërat në Arduino IDE.

Hapi 2: Çfarë është Bootloader? (Optiboot)

Ngarkuesi i ngarkimit është një program i vogël (skedar HEX, 0.5Kbyte) që ju lejon të ngarkoni skica në kujtesën flash direkt nga Arduino IDE. Skedari HEX gjithmonë funksionon para programit kryesor dhe kjo është arsyeja pse është e nevojshme.

Pa ngarkuesin e nisjes:

-Mikrokontrolluesi ende MUND T BE PROGRAMOHET! (Po, është e mundur), por ju do të keni nevojë për një programues AVR të dedikuar për ta bërë këtë. Dhe nuk është e lirë!

- Nuk mund të programohet përmes Arduino IDE.

Ngarkuesit e mbështetur të kësaj metode:

Atmega8 (1024 bajt)

Atmega168 Optiboot (512 bajt)

Atmega328 Optiboot (për Uno etj. Në 16 MHz) (512 bajt)

Atmega328 (8 MHz) për Lilypad etj. (2048 bajt)

Atmega32U4 për Leonardo (4096 bytes) Atmega1280 Optiboot (1024 bytes)

Atmega1284 Optiboot (1024 bajt)

Atmega2560 me rregullime për problemin e kohëmatësit mbikëqyrës (8192 bajt)

Atmega16U2 - ngarkuesi i ngarkimit në çipin e ndërfaqes USB të Uno

Atmega256RFR2 - ngarkuesi i ngarkimit në tabelën Pinoccio Scout

Kodi për ngarkuesit e mëposhtëm të ngarkimit është i përfshirë në skicë dhe do të shkarkohet në varësi të nënshkrimit të zbuluar.

Pra, ne kemi gjithçka që na nevojitet.

Hapi 3: Arduino Sketches Master

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

Para së gjithash keni nevojë për bibliotekën arduino.

Shkarkoni atë nga këtu:

Ose shkarkoni nga këtu.

Pasi ta keni shkarkuar, nxirreni atë në bibliotekat Arduino dhe kërkoni për Bord Programmer. Hapeni atë dhe drejtoni Board Programmer.ino.

Hapi 4: Konfigurimi i harduerit

Konfigurimi i harduerit
Konfigurimi i harduerit
Konfigurimi i harduerit
Konfigurimi i harduerit
Konfigurimi i harduerit
Konfigurimi i harduerit
Konfigurimi i harduerit
Konfigurimi i harduerit

Ekzistojnë 3 mënyra për t'u lidhur para se të programoni:

- Përdorni mburojën AVR ISP

- Arduino A tek Arduino B

- Dhe metoda e bukës

Në foto ju mund të shihni se si të lidheni. Në tabelën e bukës kondensatorët qeramikë nuk janë vërtet të nevojshëm, por duhet shtuar kristali 16Mhz.

Unë jam duke përdorur mburojën time AVR ISP këtë herë.

Qëllimi i kësaj metode është që programi po përdor monitorin serik për të hyrë në memorjen flash për të shkruar Optiboot (bootloader)

Hapi 5: Programimi

Programimi!
Programimi!
Programimi!
Programimi!

Pasi të ketë përfunduar konfigurimi i harduerit, drejtojeni Bord Programmer.ino!

Përpiloni dhe ngarkoni në Arduino tuaj, por mos e mbyllni dritaren !! Ju do të keni nevojë:)

Ngarkimi do të zgjasë disa sekonda.

Hapi 6: Shkëputeni

Pasi të keni ngarkuar skicën e shkëputjes së Arduino nga kompjuteri juaj dhe lidhni gjithçka nëse planifikoni ta bëni këtë në tryezën e bukës.

Nëse përdorni mburojën AVR vendosni çipin Atmega në prizën ZIF dhe "bllokojeni" atë.

Shumë e rëndësishme: Për sa kohë që pajisja nuk është e vendosur, procesori nuk duhet të marrë VCC !! Në këtë mënyrë ju rrezikoni një dëm !!

Hapi 7: Lidhu

Lidhu!
Lidhu!

Ne rregull! Pajisja është konfiguruar dhe gjithçka është në vend, ne e lidhim Arduino me PC.

Tjetra hapni monitorin Serial dhe vendosni normën e baudit 115200 dhe do ta shihni këtë.

Në monitorin serik mund të shihni që Arduino ka hyrë në modalitetin e programimit. E ftohte !!:)

Meqenëse duam të programojmë Uno (Atmega328P), shkruani një "U" në mesazhin e shpejtë dhe shtypni enter.

Hapi 8: Programimi i gjendjes

Shteti i Programimit!
Shteti i Programimit!

Në dritaren tjetër do ta shihni këtë.

Ne nuk do të lëmë ose Verifikojmë, shkruani një G dhe shtypni enter!

Hapi 9: Argëtimi Fillon!:)

Argëtimi Fillon!:)
Argëtimi Fillon!:)

Pasi të godisni enter, do të shihni këtë:

Fshirja e çipit … Shkrimi i ngarkuesit …

Faqja e angazhimit duke filluar nga 0x7E00 Faqja e angazhimit duke filluar nga 0x7E80

Angazhimi i faqes duke filluar nga 0x7F00

Angazhimi i faqes duke filluar nga 0x7F80

Shkruar. Verifikimi…

Asnjë gabim nuk u gjet.

Shkrimi i siguresave… LFuse = 0xFF

HFuse = 0xDE

EFuse = 0xFD

Bajti i bllokimit = 0xEF Kalibrimi i orës = 0x9E

U krye

Modaliteti i programimit është i fikur. Shtypni 'C' kur të jeni gati për të vazhduar me një çip tjetër…

Dhe ditë të mbarë !!: D Çipi juaj Atmega328P tani është gati për të ngarkuar skica!

Kjo ishte e lehtë, apo jo?:)

Hapi 10: Një çip i ri

Nëse doni të programoni një çip tjetër të shkëputur Arduino nga kompjuteri juaj, zëvendësoni çipin me një bosh. Rilidhni Arduino dhe bëni përsëri hapat.

Nëse monitori serik nuk përgjigjet pas rilidhjes së Arduino, mos u shqetësoni vetëm mbyllni atë dhe hapni një të ri.

Hapi 11: Mospranimi !

NUK KAM PRON AN P THR KISTO !! E gjithë merita shkon për Nick Gammon !!

Unë thjesht e tregova këtë metodë në këtë Instructable.

Shpresoj se do ta gjeni të dobishme.

Kalofshi nje dite te bukur.

Hapi 12: Kur ndodhin gjëra të çuditshme

Kur ndodhin gjëra të çuditshme
Kur ndodhin gjëra të çuditshme
Kur ndodhin gjëra të çuditshme
Kur ndodhin gjëra të çuditshme

Kohët e fundit kam marrë këtë Arduino Nano me procesor Atmega328P-MU.

Kështu që unë kam provuar të ngarkoj një skicë në të, por nuk munda. Procesori nuk iu përgjigj asgjë me opsionet Atmega328.

NE RREGULL! Pra, ndoshta ngarkuesi i ngarkimit është i korruptuar dhe ka nevojë për një rishkrim. E lidha me një arduino tjetër dhe bëra djegien e ngarkuesit. Akoma asgje……!!!!

Ok atëherë, kam nevojë për një frenë (kafe dhe një cigare) !! Si shansi i fundit unë zgjodha Arduino Uno përsëri si objektiv. Ngarkimi përfundoi: D

Në këtë kohë unë kam një Nano që vepron si një Arduino Uno. Unë nuk e di pse ndodhi kjo, por mendoj se kjo është për shkak të nënshkrimit të Procesorit. Gjithsesi më bëri vërtet ditë dhe është pak qesharake:)

Recommended: