ATmega328P er en af ​​de mest populære gør-det-selv-venlige mikrocontrollere i verden. Denne single-chip mikrocontroller er et godt valg for dem, der begiver sig ud i gør-det-selv-elektronik og findes på den seneste generation af Arduino Unos (sammen med andre mikrocontroller-kort). Men hvad skal du vide om ATmega328P, før du kan begynde at bruge din Arduino?

Hvad er en ATmega328P mikrocontroller?

ATmega328P er skabt af Atmel og er en enkelt-chip mikrocontroller baseret på en 8-bit RISC-processorkerne. Denne lille mikrocontroller er lav-powered og overkommelig, hvilket gør den til et fremragende valg til forskellige applikationer, inklusive de gør-det-selv-projekter, du vil lave.

ATmega328P-chippen har været fremhævet som en fremtrædende del af Arduino i mange år. Arduino Uno bruger denne mikrocontroller sammen med Arduino Pro Mini og Arduino Nano boards. Dette gør det ekstremt almindeligt i DIY-elektronikområdet, og det er værd at lære om dets muligheder, hvis du planlægger at bruge disse boards.

instagram viewer

Arduino-kort ved hjælp af ATmega328P-mikrocontrolleren

Billedkredit: Arduino butik

ATmega328P findes på Arduino Uno og Arduino Nano mikrocontrollerkort, to af de mest populære produkter fra Arduino. Du kan også købe denne chip som et selvstændigt produkt, hvis du gerne vil teste den uden et mikrocontrollerkort, selvom dette vil være en udfordrende måde at komme i gang på. Du kan bruge vores praktiske guide til at lære om forskellige typer Arduino mikrocontroller boards.

ATmega328P databladsspecifikationer

ATmega328P har et overraskende tæt datablad til så lille en chip. Der er en række specifikationer, du skal være opmærksom på, før du begynder at skrive kode til din mikrocontroller. Vi har opdelt disse for at gøre det nemmere at forstå begrænsningerne og begrænsningerne for denne chip. Lad os starte med de grundlæggende specifikationer for at give dig en idé om, hvordan ATmega328P former sig.

  • CPU: 8-bit AVR med en maksimal hastighed på 20MHz
  • Glimtvis erindring: 32 kB indbygget flash
  • SRAM: 2 kB
  • EEPROM: 1 kB
  • Pin antal: 28 eller 32 (afhængig af pakketype)
  • Kapacitive berøringskanaler: 16
  • Maksimal I/O-ben: 23
  • Eksterne afbrydelser: 2

Hver af disse forskellige specifikationer spiller sin egen rolle i at gøre ATmega328P så velegnet til brug med udviklingskort som en Arduino. Men hvad betyder noget af det egentlig?

  • CPU: CPU'en på ATmega328P-chippen er en 8-bit AVR RISC-baseret CPU. RISC står for "reduced instruction set computer" og er en type processor designet til at forenkle de individuelle opgaver en computer udfører. Derimod er din pc's Intel eller AMD CPU sandsynligvis en CISC (complex instruction set computer) processor.
  • Glimtvis erindring: Flash er en type ikke-flygtig hukommelse, der bruges til permanent lagring. ATmega328P er udstyret med kun 32 kB flash-hukommelse, selvom dette er nok til masser af kode. Du kan lære om forskellene mellem flygtig og ikke-flygtig hukommelse på MUO's hjemmeside.
  • SRAM: SRAM står for "static random access memory". Denne hukommelse spiller den samme rolle som RAM i din pc, og forsyner ATmega328P-chippen med midlertidig hukommelse til at gemme data og variabler, mens den kører gennem kode.
  • EEPROM: Dette er en type byte-sletbar hukommelse, der bruges til at gemme små mængder data. I modsætning til SRAM er EEPROM ikke-flygtig og vil beholde sine data, når ATmega328P-chippen ikke er strømforsynet.

ATmega328P Pinout-diagram

ATmega328P pinout-diagrammet ovenfor viser de forskellige ben på ATmega328P DIP-chippen og benene på et Arduino Uno-kort. Dette skulle give dig en god idé om, hvordan denne chip og det populære mikrocontrollerkort arbejder sammen.

ATmega328P er en alsidig chip med en række applikationer. Som sådan findes der en række forskellige pakker til denne chip, alle i forskellige former og med forskellige typer bly. TQFP (quad-flat-pakke), MLF/VQFN (micro leadframe eller quad-flat no-leads) og DIP (dual in-line package) er de mest almindelige af disse pakker.

Ægte Arduino Uno-kort bruger DIP-varianten af ​​ATmega328P-chippen (alias ATmega328P-PU), og det betyder, at chippen kan fjernes og udskiftes (i modsætning til ATmega328P-AU). Andre typer Arduino-kort bruger forskellige ATmega-chips af typen quad-flat-pakke, og disse kan ikke fjernes.

ATmega328P og Arduino Uno Begrænsninger

Som med enhver mikrocontroller-chip kommer ATmega328P med visse begrænsninger, der skal overvejes, før du beslutter dig for at arbejde med den. Disse begrænsninger gælder også for Arduino boards, der bruger disse chips.

Lavt SRAM-budget

ATmega328P-chippen kommer med 2kB SRAM, og dette er rigeligt til de fleste projekter. For dem, der ønsker at bruge flere biblioteker og kode med mange variabler, kan det dog være nemt at løbe tør for SRAM, hvilket får dit program til at fejle.

Programmører, der arbejder med Arduino-kort, har meget kontrol over hukommelsesstyring takket være brugen af ​​C++. Tekst, billeder og andre færdiglavede aktiver kan gemmes i flashhukommelsen som en måde at frigøre yderligere hukommelse til de programmer, du kører, og forbedre dit SRAM-budget.

Begrænset processorkraft

Den 20Hz CPU, der findes på ATmega328P-chippen, er fantastisk til at køre simpel kode, men den tilbyder begrænset processorkraft til komplekse applikationer. Dette betyder, at det ikke er egnet til ting som talegenkendelse, dyb læring eller andre almindelige mikrocontrolleropgaver.

At løse dette problem er ikke muligt med ATmega328P. Hvis du har brug for mere strøm, skal du lede efter et mere passende mikrocontrollerkort til den opgave, du har gerne vil optræde, men der er masser af muligheder på markedet for at give dig adgang til det, du har brug for.

ATmega328P og Arduino Uno fordele

Udover begrænsningerne ved ATmega328P er der også fordele ved at bruge en chip som denne. Disse vil ofte opveje mikrocontrollerens begrænsninger til simple projekter, især hvis du er ny til at arbejde med mikrocontrollere.

  • Overkommelig pris: ATmega328P-chippen er overkommelig og nem at finde, hvilket gør den ideel til billige gør-det-selv-projekter. Takket være den store værdi af denne chip er Arduino Uno også et meget overkommeligt board.
  • Brugervenlighed: ATmega328P er lavet med forbrugerne i tankerne og er nem at bruge sammenlignet med andre mikrocontroller-chips, hvilket gør den ideel til dem, der kommer i gang med deres egne gør-det-selv-projekter.
  • Enkeltstående chip: ATmega328P-chippen kan bruges alene eller med et mikrocontrollerkort som Arduino Uno.

Lær om ATmega328P og Arduino Uno

Der er masser af ressourcer rundt omkring på nettet, der er designet til at hjælpe dig med at komme i gang med Arduino Uno og den ATmega328P, den bruger. Det er værd at bruge tid på at lære om denne hardware, før du starter dit næste mikrocontroller-projekt, og give dig selv en idé om de begrænsninger og udfordringer, du kan møde undervejs.