februar 1, 2022

sådan brænder du bootloaderen på ATmega328 microcontroller

introduktion

hvis du ser dette projekt, har du muligvis brugt et Arduino-kort. ATmega328 mikrocontroller på ArduinoUNO vil sandsynligvis mislykkes efter en bestemt periode (eller forkert forbindelse). For at genbruge ArduinoBoard har du brug for en ny ATmega328IC med Bootloader. Der er andre grunde til at brænde Bootloader ATMEGA328 microcontroller på den, hvis du har skrevet din egen Bootloader og vil teste den, eller du vil lære mere om microcontrollers arbejdssituation.

Advarsel: Hvis du ikke er bekendt med denne slags ting, anbefales det ikke at justere bootloaderen i Arduino.

mcu

Hvad er Bootloader?

kort sagt, Bootloader er et lille stykke kode (eksekverbar kode i .i mikrocontrollerens hukommelse. Bootloaderen i Arduino giver os mulighed for at programmere Arduino gennem den serielle port, det vil sige ved hjælp af USB-kablet.

Bootloaderens opgave i Arduino er at acceptere koden fra computeren og sætte den i mikrocontrollerens hukommelse.

Hvorfor har vi brug for en Bootloader?

traditionelt programmeres mikrocontrollere som ATMEL ATmega328 MCU ved hjælp af dedikerede programmører, som involverer nogle ejendommelige forbindelser. Bootloader eliminerer denne kompleksitet og giver os en enkel måde at programmere mikrocontrolleren på, det vil sige ved hjælp af et USB-kabel.

Bootloader er placeret i en særlig sikker placering af programmerbar flashhukommelse. Mikrocontrollere optager normalt mindre end 1 kB hukommelse.

Hvad skal jeg brænde Bootloader på ATMEL ATMEGA328?

som tidligere nævnt, hvis du vil uploade programmet til den helt nye ATmega328 microcontroller IC, skal du bruge en speciel programmør (og indstille sikringsbit). Men hvis du brænder bootloaderen på ATmega328-chippen, behøver du kun at programmere mikrocontrolleren via den serielle port (USB-kabel).

når ATMEGA328 mikrocontroller er klar til bootloader, kan du blot bruge den. Hvis du planlægger at lave dit eget Arduino board, skal du bruge det som et Arduino board (som et alternativ) eller bruge det som en mikrocontroller.

Sådan brænder du Bootloader på ATMEGA328?

der er flere måder at brænde bootloaderen på ATMEGA328IC. Den første metode er at bruge dedikeret AVR programmør. Den anden metode er at bruge et fungerende Arduino-kort som programmør og brænde bootloaderen på målet Arduino ATmega328 mikrocontroller.

i dette projekt vil jeg bruge den anden metode, som er at bruge Arduino som programmør.

kredsløbsdiagram

kredsløbsdiagrammet til brænding af bootloaderen på ATMEGA328 ved hjælp af Arduino-mikrocontrolleren er vist nedenfor.

ATMEGA328

pindiagrammet til ATmega328 mikrocontroller er som vist nedenfor.

ATMEGA328

nødvendige komponenter

ArduinoUNO

ATmega328 mikrocontroller IC

16mg krystal

22pfh2 keramisk kondensator

10k-modstand

knap

330-modstand

led

breadboard

tilslut ledningerne

5V strømforsyning

processen med programmering af bootloader på ATmega328 datablad.

som tidligere nævnt bruges ArduinoUNO som AVR-programmør her. For at opnå dette skal du uploade et specielt program til dit arduinouno-bord, kaldet “ArduinoISP”.

før du opretter forbindelsen, skal du tilslutte arbejdsarduino for at forbinde UNO til computeren ved hjælp af et USB-kabel og vælge det relevante kort og PORT i ArduinoIDE.

gå nu til ArduinoISP. Upload denne kode til ArduinoUNO for at konvertere arduinouno-tavlen til en AVRISP-programmør.

ATMEGA328

når du har gennemført dette trin, skal du foretage de nødvendige forbindelser (hvis ikke). Gå nu til værktøjer>programmør og vælg “ArduinoasISP” indstillingen. Herefter er du klar til at brænde bootloaderen.

ATMEGA328

bare gå til “værktøjer” og klik på “BurnBootloader”. Din mål ATMEGA328 mikrocontroller vil blive programmeret ved hjælp af bootloader.

ATMEGA328

Upload billedet til ATmega328 pakker

når du har uploadet bootloaderen til ATmega328 mikrocontroller, kan du fortsætte med at uploade testskitsen. For at gøre dette skal du holde de samme forbindelser som før og åbne eventuelle skitser, f.eks.

skift ikke nogen indstillinger, det vil sige, programmereren er stadig indstillet til “ArduinoasISP”. Hold nu knappen “Skift” nede på tastaturet, og klik på ikonet “Upload”. Dette uploader skitsen til ATmega328 microcontroller IC ved hjælp af ArduinoUNO som programmør.

når du har afsluttet denne handling, kan du afbryde ArduinoUNO fra Atmel ATmega328 mikrocontroller og bruge ATMEGA328IC som en selvstændig enhed til at køre Blinksketch på den.

ATMEGA328

følgende figur viser ATMEGA328 mikrocontroller kører Blinksketch efter Upload ved hjælp af ArduinoUNO.

Bemærk: For at uploade koden til ArduinoUNO, skal du sørge for at skifte programmøren tilbage til “AVRISPmkII”.

ATMEGA328

konklusion

i dette projekt viste jeg dig, hvordan du brænder bootloaderen på ATmega328 microcontroller IC. Som en ekstra mulighed viste jeg dig også, hvordan du bruger ArduinoUNO til at uploade Arduino-skitsen til ATmega328 med Bootloader.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.