Talaan ng mga Nilalaman:

Atmega328P-PU Bootloader (Optiboot) Gabay sa Pag-burn: 12 Mga Hakbang
Atmega328P-PU Bootloader (Optiboot) Gabay sa Pag-burn: 12 Mga Hakbang

Video: Atmega328P-PU Bootloader (Optiboot) Gabay sa Pag-burn: 12 Mga Hakbang

Video: Atmega328P-PU Bootloader (Optiboot) Gabay sa Pag-burn: 12 Mga Hakbang
Video: How To Run Atmega 328,168,88,8 without XTAL, How to Burn bootloader on Atmega without crystal, xtal 2024, Hulyo
Anonim
Atmega328P-PU Bootloader (Optiboot) Gabay sa Pag-burn
Atmega328P-PU Bootloader (Optiboot) Gabay sa Pag-burn

Ngunit ang isa pang Atmega bootloader na nasusunog na bastos. Ngunit sa pagkakataong ito ay tumaya ako sa unang pagtatangka na magtatagumpay ka !!

Ito ang Nick Gammons bootloader burn tutorial para sa Arduino boards.

Hakbang 1: Ilang mga Salita

Ilang mga Salita
Ilang mga Salita

Ang Atmega328P-PU microcontroller ay isa sa pinakatanyag na Arduino chips na ginagamit sa isang malawak na saklaw sa buong mundo. Ngunit ang pinakamahalaga sa mga hubad na buto na ginagawa pa rin ng Atmega kung ano ang magagawa ng karaniwang Uno R3. Ang pangunahing dahilan kung bakit gusto ko ang microcontroller na ito ay ang mode na "Mababang Kapangyarihan". Nagsulat ako ng ilang mga bagong sketch para sa ilang mga sensor at sinusubukan ko sila para sa isang oras ngayon.

Bumalik sa ilang taon nang nagsimula akong maglaro kasama ang Arduino ang aking unang order ay isang microcontroller ng Atmega328P. Maya maya ay napagtanto ko na ang mga inorder ko mula sa Aliexpress ay mga blangko na chips. Ang mga chips ay napaka mura sa Ali, maaari mo itong bilhin mula sa 1.40 $. Ngunit hindi nila nilalaman ang Uno Bootloader (Optiboot) at kung wala ito ay hindi ako makakapag-upload ng anumang mga sketch. Matigas na pahinga ha ?? !! Ito ay isang talagang malamig na shower para sa akin ……. Kaya naghahanap ako ng isang paraan upang masunog ang bootloader sa mga chips. Sinubukan ko ang 5 o 6 na pamamaraan, ngunit walang swerte. Matapos ang isang linggo nakakita ako ng isang paksa sa isang forum ng website na binanggit ang tutorial sa pagsusunog ng bootloader ni Nick Gammon. Unang pagtatangka at tagumpay !!: D Ngayon ipapakita ko sa iyo kung paano sunugin ang bootloader upang blangko ang Atmega328P-PU chips nang madali nang hindi ginugulo ang mga bagay sa Arduino IDE.

Hakbang 2: Ano ang Bootloader? (Optiboot)

Ang bootloader ay isang maliit na programa (HEX file, 0.5Kbyte) na nagbibigay-daan sa iyo upang mag-upload ng mga sketch sa flash memory nang direkta mula sa Arduino IDE. Palaging tumatakbo ang HEX file bago ang pangunahing programa at iyon ang dahilan kung bakit kinakailangan ito.

Alinman sa bootloader:

-Ang microcontroller ay MAAARING MA-PROGRAMA! (Oo, posible), ngunit kakailanganin mo ang isang nakatuon na AVR programmer upang magawa iyon. At hindi ito mura!

- Hindi ito maaaring mai-program sa pamamagitan ng Arduino IDE.

Mga sinusuportahang bootloader ng pamamaraang ito:

Atmega8 (1024 bytes)

Atmega168 Optiboot (512 bytes)

Atmega328 Optiboot (para sa Uno atbp sa 16 MHz) (512 bytes)

Atmega328 (8 MHz) para sa Lilypad atbp (2048 bytes)

Atmega32U4 para kay Leonardo (4096 bytes) Atmega1280 Optiboot (1024 bytes)

Atmega1284 Optiboot (1024 bytes)

Ang Atmega2560 na may mga pag-aayos para sa problema ng timer ng watchdog (8192 bytes)

Atmega16U2 - ang bootloader sa USB interface chip ng Uno

Atmega256RFR2 - ang bootloader sa board ng Pinoccio Scout

Ang code para sa mga sumusunod na bootloader ay isinasama sa sketch, at mai-download depende sa kung aling signature ang napansin.

Kaya nasa atin ang lahat ng kailangan natin.

Hakbang 3: Arduino Sketches Master

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

Una sa lahat kailangan mo ng arduino library.

I-download ito mula dito:

O i-download ito mula dito.

Matapos mong ma-download i-extract ito sa Arduino libraries forlder at hanapin ang Board Programmer. Buksan ito at patakbuhin ang Board Programmer.ino.

Hakbang 4: Ang Pag-setup ng Hardware

Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware
Ang Pag-setup ng Hardware

Mayroong 3 mga paraan upang mag-wire up bago mag-program:

- Gamitin ang kalasag na AVR ISP

- Arduino A hanggang Arduino B

- At ang paraan ng breadboard

Sa larawan maaari mong makita kung paano mag-wire up. Sa breadboard ang mga ceramic capacitor ay hindi talaga kinakailangan, ngunit dapat idagdag ang 16Mhz na kristal.

Gumagamit ako ng aking AVR ISP kalasag sa oras na ito.

Ang layunin ng pamamaraang ito ay, ang programa ay gumagamit ng serial monitor upang ma-access ang flash memory upang isulat ang Optiboot (bootloader)

Hakbang 5: Ang Programming

Ang Programming!
Ang Programming!
Ang Programming!
Ang Programming!

Matapos makumpleto ang pag-setup ng hardware patakbuhin ang Board Programmer.ino!

Compile at i-upload sa iyong Arduino, ngunit huwag isara ang window !! Kakailanganin mo ito:)

Ang pag-upload ay tatagal ng ilang segundo.

Hakbang 6: Idiskonekta

Matapos mong i-upload ang idiskonekta ang sketch ang Arduino mula sa iyong PC at i-wire ang lahat kung pinaplano mong gawin ito sa breadboard.

Kung gagamitin mo ang kalasag na AVR ilagay ang Atmega chip sa ZIF socket at "lock" ito pababa.

Napakahalaga: Hangga't ang hardware ay hindi na-set up, ang processor ay hindi dapat makakuha ng VCC !! Sa ganoong paraan pinagsapalaran mo ang isang pinsala !!

Hakbang 7: Kumonekta

Kumonekta!
Kumonekta!

Ok! Ang hardware ay naka-set up at lahat ay nasa lugar na ikinonekta namin ang Arduino sa PC.

Susunod na buksan ang Serial monitor at itakda ang baud rate 115200 at makikita mo ito.

Sa serial monitor maaari mong makita na ang Arduino ay pumasok sa mode ng pag-program. Malamig!!:)

Dahil nais naming i-program ang Uno (Atmega328P) i-type ang isang "U" sa ang prompt ng mensahe at pindutin ang enter.

Hakbang 8: Programming State

Programming State!
Programming State!

Sa susunod na window makikita mo ito.

Hindi kami titigil o Patunayan, magta-type ng G at pindutin ang enter!

Hakbang 9: Nagsisimula Ang Kasayahan!:)

Nagsisimula Ang Kasayahan!:)
Nagsisimula Ang Kasayahan!:)

Pagkatapos ng pagpindot ipasok makikita mo ito:

Binubura ang chip… Sumusulat ng bootloader…

Ang pahina ng paggawa ay nagsisimula sa 0x7E00Pahina ng pag-committing simula sa 0x7E80

Gumawa ng pahina na nagsisimula sa 0x7F00

Ang pahina ng paggawa ay nagsisimula sa 0x7F80

Nakasulat. Pinatutunayan…

Walang nahanap na mga error.

Pagsulat ng mga piyus … LFuse = 0xFF

HFuse = 0xDE

EFuse = 0xFD

Lock byte = 0xEF Clock calibration = 0x9E

Tapos na.

Naka-off ang mode ng programming. I-type ang 'C' kapag handa nang magpatuloy sa isa pang maliit na tilad…

At masayang araw !!: D Ang iyong Atmega328P chip ay handa na ngayong mag-upload ng mga sketch!

Ito ay madali di ba?:)

Hakbang 10: Isang Bagong Chip

Kung nais mong mag-program ng isa pang chip idiskonekta ang Arduino mula sa iyong PC, palitan ang maliit na tilad ng isang blangko. Ikonekta muli ang Arduino at gawin muli ang mga hakbang.

Kung ang serial monitor ay hindi tumugon pagkatapos muling kumonekta sa Arduino, huwag panic isara lamang ito at buksan ang bago.

Hakbang 11: MAGPAPAHAYAG !

WALA AKONG KAUGALING ANUM SA ITO !! Ang lahat ng kredito ay napupunta kay Nick Gammon !!

Ipinakita ko lang ang pamamaraang ito sa Instructable na ito.

Inaasahan mong matagpuan mo ang kapaki-pakinabang na ito.

Magandang araw.

Hakbang 12: Kapag Nangyari ang Kakaibang Bagay

Kapag Kakaibang Bagay na Nangyari
Kapag Kakaibang Bagay na Nangyari
Kapag Kakaibang Bagay na Nangyari
Kapag Kakaibang Bagay na Nangyari

Kamakailan natanggap ko ang Arduino Nano na ito kasama ang processor ng Atmega328P-MU.

Kaya't sinubukan kong mag-upload ng isang sketch dito, ngunit hindi ko magawa. Hindi tumugon ang processor sa anumang bagay na may mga pagpipilian na Atmega328.

OK lang! Kaya marahil ang bootloader ay nasira at nangangailangan ng muling pagsulat. I-wire ko ito sa isa pang arduino at tapos na ang nasusunog na bootloader. Wala pa rin……!!!!

Ok kung gayon, kailangan ko ng preno (kape at sigarilyo) !! Bilang isang huling pagkakataon pinili ko muli ang Arduino Uno bilang isang target. Kumpleto na ang pag-upload: D

Sa oras na ito mayroon akong isang Nano na gumaganap tulad ng isang Arduino Uno. Hindi ko alam kung bakit nangyari ito ngunit sa palagay ko ito ay dahil sa pirma ng Processor. Gayunpaman ginawa talaga ang araw ko at medyo nakakatawa:)

Inirerekumendang: