Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission. Læs mere.

Med et spirende fællesskab, der altid laver nemme at følge og sjove projekter, løber du aldrig tør for ideer til, hvad du kan gøre med et Arduino-mikrocontrollerkort.

Når det er sagt, er den vigtigste del af ethvert Arduino-projekt koden, der kører alt. At programmere din Arduino rigtigt er nøglen til at sikre et korrekt fungerende elektronikprojekt. Men hvordan koder du Arduino?

Hvad er en Arduino?

Arduino er en open source prototyping platform. Den er nem at bruge, har en GPIO-header til tilslutning af sensorer og andre elektroniske komponenter og har et relativt simpelt programmeringssprog. Boards kommer i forskellige former og størrelser, lige fra så små som Arduino Nano til projekter, der kan implementeres, til Arduino Mega 2560 til projekter med mere hardware. Læs vores Arduino begynder guide for mere information om platformen.

Sådan programmeres en Arduino

instagram viewer

Programmering af en Arduino er lige så simpelt som at tilslutte hardware til en. Alt du behøver er et Arduino-kort, et passende USB-kabel (tjek hvilken type USB-port din Arduino har) og en computer for at komme i gang. Du vil bruge Arduino-programmeringssproget baseret på C++.

Mens den har en downloadbar IDE, kan du også bruge din webbrowser til at kode Arduino. Husk på, at du bliver nødt til at installere Arduino Agent, hvis du bruger den browserbaserede IDE - første gang du prøver det, bliver du bedt om at downloade og installere agenten, før du kan komme til kodning.

Komponenter af et Arduino-program

Arduino-programmer kaldes sketches. De er normalt skrevet i to hovedfunktioner:

  • Opsætning(): Denne funktion kører kun én gang pr. Arduino-startcyklus. Det betyder, at enhver initialisering, erklæring eller opsætning udføres inden for denne funktion.
  • loop(): Denne funktion bliver ved med at sløjfe igen og igen, så længe din Arduino har strøm. Det meste af den funktionelle kode er skrevet i denne metode.

Som du ville gøre med ethvert andet program eller script, er alle vigtige biblioteker og værdier erklæret og importeret før de to funktioner nævnt ovenfor. Baseret på dine krav er du fri til at tilføje flere funktioner, hvis du ønsker det.

Du kan bruge den serielle skærm til at se de data, som din Arduino sender over den serielle USB-forbindelse. Den serielle skærm bruges også til at interagere med kortet ved hjælp af din computer eller andre egnede enheder. Det inkluderer også en seriel plotter, som kan plotte dine serielle data for bedre visuel repræsentation.

Brug af grundlæggende komponenter med Arduino

Vi laver en lille opsætning, hvor Arduino kan læse input fra en knap og tænde en LED baseret på, om den er trykket ned eller ej. Før vi kommer til kodning, skal vi dog tilslutte vores hardware. Du skal bruge følgende elementer:

  • Trykknap
  • LED
  • 10kΩ modstand
  • 220Ω modstand

Følg ledningsdiagrammet nedenfor for at forbinde alt korrekt. Vær særlig opmærksom på GPIO-benet (General Purpose Input Output), som hver ledning forbindes til på Arduino-kortet.

Når al hardware er tilsluttet, skal du gå videre og kopiere og indsætte følgende kode i online-IDE'en. Du finder kommentarer gennem hele koden for bedre at forklare, hvad hver del gør.

#Definere LED_PIN 8 //Definer LED-stiften
#Definere BUTTON_PIN 7 //Definer knappenålen
//Nu initialiserer vi LED'en og knappen i opsætningsfunktionen
ugyldigOpsætning(){
pinMode(LED_PIN, PRODUKTION);
pinMode(BUTTON_PIN, INPUT);
}
//Det følgende uddrag går over knappens status og ændringer
//LED status til HIGH (tændt), når knappen trykkes ned (HIGH)
ugyldigsløjfe(){
hvis (digitallæs(BUTTON_PIN) == HØJ) {
digitalSkriv(LED_PIN, HØJ);
}
andet {
digitalSkriv(LED_PIN, LAV);
}
}

Der er dog mere til Arduino end bare LED'er og knapper. Lad os gennemgå noget mere avanceret kode, der integrerer en afstandssensor og buzzer i stedet.

Brug af en ultralydssensor med Arduino

Din Arduino kan læse sensordata og interagere i henhold til omgivelserne. Vi skal tilslutte en HC-SR04 ultralydsafstandsmåler og en buzzer til kortet for at lave en nærhedsalarm.

Sådan ser koden ud; du finder linje for linje forklaringer overalt.

//Erklærer HC-SR-04 og Buzzer-stifterne
konstint TRIG_PIN = 6;
konstint ECHO_PIN = 7;
konstint LED_PIN = 3;
konstint DISTANCE_THRESHOLD = 50;

//Variabler til beregning af afstand
flyde duration_us, distance_cm;

//Indstilling af pin-tilstande og initialisering af den serielle monitor
ugyldigOpsætning(){
Seriel.begynde (9600);
pinMode(TRIG_PIN, PRODUKTION);
pinMode(ECHO_PIN, INPUT);
pinMode(LED_PIN, PRODUKTION);
}

ugyldigsløjfe(){
//Generer 10 mikrosekunders puls til TRIG pin
digitalSkriv(TRIG_PIN, HØJ);
forsinkelse Mikrosekunder(10);
digitalSkriv(TRIG_PIN, LAV);

//Mål varigheden af ​​puls fra ECHO pin
 duration_us = pulseIn(ECHO_PIN, HØJ);
//Beregn afstanden
 afstand_cm = 0.017 * duration_us;

hvis(afstand_cm < DISTANCE_THRESHOLD)
digitalSkriv(LED_PIN, HØJ); //Tænd LED
andet
digitalSkriv(LED_PIN, LAV); //Sluk LED

//Udskriv værdien til Serial Monitor
Seriel.Print("afstand: ");
Seriel.Print(afstand_cm);
Seriel.println("cm");

forsinke(500);
}

Hvordan kører man et Arduino-program?

Nu hvor du er klar med hardwaren og koden, er det tid til at uploade koden til din Arduino. Følg disse trin.

  1. Klik på Verificere flueben for at kompilere din kode og sikre, at den er fri for fejl.
  2. Vælg Arduino-brættet og dets tilsvarende COM port fra rullemenuen.
  3. Klik på Upload knappen og vent på, at koden er færdig med at uploade.

Så snart du klikker på Upload-knappen, vil du begynde at se aktivitet i det sorte konsolvindue nedenunder. Forudsat at din Arduino fungerer og korrekt tilsluttet, vil din kode blive uploadet, og du kan begynde at teste dit projekt.

Mikrocontrollere kan være sjove

Mikrocontrollere som Arduino er en fantastisk måde at komme ind i DIY-elektronikkens verden. Arduino til børn er en særlig god aktivitet. Når du først har lært at kode Arduino, åbner mere kraftfulde boards som Raspberry Pi en helt op anderledes verden af ​​muligheder i forhold til, hvad du kan bygge med blot nogle få grundlæggende sensorer og nogle linjer af kode.