Atmega8 mikrocontrollere er de mestpopulære medlemmer af deres familie. I mange henseender er de på den ene side forpligtet til at forenkle arbejdet og forståelig struktur på den anden side - til en ret bred funktionel kapacitet. Artiklen vil dække Atmega8 programmeringen til begyndere.
Generelle oplysninger
Microcontrollers er overalt.De findes i køleskabe, vaskemaskiner, telefoner, fabriksmaskiner og et stort antal andre tekniske enheder. Mikrocontrollere er både enkle og ekstremt komplekse. Sidstnævnte tilbyder mange flere funktioner og funktionalitet. Men at forstå straks i en kompleks teknik virker ikke. I første omgang skal du lære noget simpelt. Og som en prøve vil blive taget Atmega8. Programmering på det er ikke svært på grund af den kompetente arkitektur og brugervenlige grænseflade. Derudover er han ejer af tilstrækkelig ydeevne til brug i de fleste amatør enheder. Desuden bruges de selv i industrien. I tilfælde af Atmega8 omfatter programmering sprog som AVR (C / Assembler). Hvor skal man starte? Mastering af denne teknologi er mulig på tre måder. Og alle vælger sig selv hvor man skal begynde at arbejde med Atmega8:
- Programmering via Arduino.
- Køber en færdig enhed.
- Selvbygget mikrocontroller.
Vi vil overveje første og tredje afsnit.
Arduino
Dette er en praktisk platform, lavet i formularenelektronisk designer, der er egnet til hurtigt at skabe forskellige enheder. Bestyrelsen har allerede alt hvad du behøver i form af mikrocontroller selv, dens binding og programmør. Ved at følge denne vej modtager en person følgende fordele:
- Lavere tærskelkrav. Du behøver ikke at have særlige færdigheder og evner til at udvikle tekniske enheder.
- En bred vifte af genstande vil være tilgængelig til tilslutning uden yderligere træning.
- Hurtigstart udvikling. Med Arduino kan du gå direkte til at skabe enheder.
- Tilstedeværelsen af et stort antal træningsmaterialer og eksempler på implementering af forskellige designs.
Но есть и определённые минусы.Så, Arduino programmering Atmega8 tillader ikke at springe dybere ind i mikrocontrollerens verden og forstå mange nyttige aspekter. Derudover skal du lære et programmeringssprog, der adskiller sig fra den anvendte AVR (C / Assembler). Og mere: Arduino har en ret snæver model. Derfor vil der før eller senere være behov for at bruge en mikrocontroller, der ikke anvendes i brættet. Generelt er dette en god måde at arbejde med Atmega8. Programmering via Arduino giver dig mulighed for at få en solid start i elektronikken. Og en person er usandsynligt at miste hjerte på grund af fejl og problemer.
Selvbyggeri
Takket være det venlige design, de kangør det selv. Det kræver trods alt billige, overkommelige og enkle komponenter. Dette vil muliggøre en god undersøgelse af Atmega8 mikrocontroller enhed, hvilket programmering efter samling vil virke lettere. Hvis det er nødvendigt, kan du selvstændigt vælge andre komponenter til en bestemt opgave. Sandt nok er der en vis minus-kompleksitet. Uafhængigt samle en mikrocontroller, når den nødvendige viden og færdigheder ikke er til rådighed, er ikke let. Denne mulighed vi overvejer.
Hvad er der brug for til montage?
I første omgang skal du få dig Atmega8.Programmering af en mikrocontroller uden ham, ved du, er umulig. Det vil koste flere hundrede rubler - samtidig med at det giver en anstændig funktionalitet. Der er også spørgsmålet om, hvordan Atmega8 vil blive programmeret. USBAsp er en ret god enhed, der har anbefalet sig selv fra den bedste side. Men du kan bruge nogle andre programmører. Eller saml det selv. Men i dette tilfælde er der risiko for, at produktionen af dårlig kvalitet vil gøre mikrokontrolleren til et ikke-fungerende stykke plast og jern. Også tilgængeligheden af et mock-up board og jumpers vil ikke blande sig. De er ikke obligatoriske, men vil spare tid og nerver. Og endelig har du brug for en strømforsyning til 5V.
Atmega8 programmering til begyndere med et eksempel
Lad os tage et kig på, hvordan man skitsererEn eller anden form for enhed oprettes. Så lad os sige, at vi har en mikrocontroller, LED, modstand, programmerer, forbindelsesledninger, brødbræt og strømforsyning. Det første skridt er at skrive firmwaren. Under det forstår sæt kommandoer til microcontroller, som præsenteres som en endelig fil, der har et specielt format. Det er nødvendigt at foreskrive forbindelsen mellem alle elementer samt interaktion med dem. Derefter kan du gå videre til forsamlingsordningen. Strøm skal leveres til VCC benet. Til enhver anden designet til at arbejde med enheder og elementer, er en modstand først forbundet, og derefter en LED. Den første magt afhænger af den anden ernæringsbehov. Du kan navigere med følgende formel: R = (Up-Ups) / Is. Her er p strømmen, og s er LED'en. Lad os forestille os, at vi har en LED, der forbruger 2V og kræver en strøm på 10 mA, vi oversætter den til en mere bekvem form for matematiske operationer, og vi får 0,01A. Så ser formlen ud som følger: R = (5В-2В) /0.01А=3В / 0.01А = 300 Ohm. Men i praksis er det ofte umuligt at finde det ideelle element. Derfor er det mest egnede. Men du skal bruge en modstand med en modstand højere end værdien opnået ved matematiske midler. Med denne tilgang vil vi udvide dets levetid.
Og hvad næste?
Så vi har en lille ordning.Det forbliver nu at forbinde programmereren til microcontroller og skrive den firmware, der blev oprettet til hukommelsen. Der er et øjeblik her! Ved at opbygge et kredsløb er det nødvendigt at oprette det på en sådan måde, at mikrocontrolleren kan blinke uden lodning. Dette vil spare tid, nerver og udvide elementernes liv. Herunder Atmega8. Programmering i kredsløb skal noteres, kræver viden og færdigheder. Men det giver dig også mulighed for at skabe mere avancerede designs. Når alt kommer til alt, sker det ofte, at elementerne er ødelagt under nedlæggelsen. Derefter er kredsløbet klar. Du kan anvende spænding.
Vigtige punkter
Jeg vil gerne give begyndere nyttige tips omprogrammering Atmega8. Indbyggede variabler og funktioner ændres ikke! Det anbefales at blinke enheden med det oprettede program efter at have kontrolleret det for fraværet af "evige cykler", der vil blokere enhver anden interferens og ved hjælp af en god transmitter. I tilfælde af hjemmelavet til disse formål bør du være mentalt forberedt på mikrocontrollers fiasko. Når du blinker enheden ved hjælp af programmereren, skal du forbinde de tilsvarende udgange VCC, GND, SCK, MOSI, RESET, MISO. Og ikke krænke sikkerheden! Hvis de tekniske egenskaber fastsætter, at strømforsyningen skal være 5V, er det nødvendigt at overholde nøjagtig denne spænding. Selv brugen af 6V-elementer kan påvirke mikrocontrollerens ydelse negativt og forkorte levetiden. Selvfølgelig har 5V batterier visse uoverensstemmelser, men som regel er alt inden for rimelige grænser. For eksempel vil maksimal spænding opbevares ved 5,3 V.
Læring og forbedring af færdigheder
Heldigvis er Atmega8 meget populærmicrocontroller. Derfor er det ikke svært at finde ligesindede mennesker eller bare kyndige og dygtige mennesker. Hvis der ikke er noget ønske om at genopfinde hjulet, men bare ønsker at løse en bestemt opgave, så kan du søge efter den nødvendige ordning i det store verdens netværk. Forresten, et lille tip: Selvom det russisk-talende segment er robotik, er det meget populært, men hvis der ikke er noget svar, skal du se efter det i engelsktalende - det indeholder en størrelsesorden mere information. Hvis der er visse tvivl om kvaliteten af tilgængelige anbefalinger, kan du søge efter bøger, hvor Atmega8 ses. Heldigvis tager producenten hensyn til udviklingenes popularitet og forsyner dem med specialiseret litteratur, hvor erfarne mennesker fortæller os hvad og hvordan, og også giver eksempler på driften af enheden.
Er det svært at begynde at lave noget af dit eget?
Det er nok at have 500-2000 rubler og fleregratis aftener. Denne gang er mere end nok til at gøre dig bekendt med Atmega8's arkitektur. Efter lidt øvelse kan du sikkert oprette dine egne projekter, der udfører bestemte opgaver. For eksempel en robotarm. En Atmega8 skal være mere end nok til at overføre de grundlæggende motorfunktioner af fingre og hånd. Det er selvfølgelig en ganske vanskelig opgave, men helt muligt. I fremtiden generelt vil det være muligt at skabe komplekse ting, for hvilke der kræves snesevis af mikrocontrollere. Men det er helt klart, før det er nødvendigt at få en god praksis skole på noget simpelt.