Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon. Les mer.

Med et spirende fellesskap som alltid lager enkle å følge og morsomme prosjekter, vil du aldri gå tom for ideer til hva du kan gjøre med et Arduino-mikrokontrollerkort.

Når det er sagt, er den viktigste delen av ethvert Arduino-prosjekt koden som kjører alt. Å programmere din Arduino riktig er nøkkelen til å sikre et riktig fungerende elektronikkprosjekt. Men hvordan koder du Arduino?

Hva er en Arduino?

Arduino er en åpen kildekode-prototyping-plattform. Den er enkel å bruke, har en GPIO-header for tilkobling av sensorer og andre elektroniske komponenter, og har et relativt enkelt programmeringsspråk. Platene kommer i forskjellige former og størrelser, fra så små som Arduino Nano for utplasserbare prosjekter til Arduino Mega 2560 for prosjekter med mer maskinvare. Les vår Arduino nybegynnerguide for mer informasjon om plattformen.

Hvordan programmere en Arduino

Å programmere en Arduino er like enkelt som å koble maskinvare til en. Alt du trenger er et Arduino-kort, en passende USB-kabel (sjekk hvilken type USB-port din Arduino har), og en datamaskin for å komme i gang. Du vil bruke Arduino-programmeringsspråket basert på C++.

Mens den har en nedlastbar IDE, kan du også bruke nettleseren til å kode Arduino. Husk at du må installere Arduino Agent hvis du bruker den nettleserbaserte IDE - første gang du prøver det, vil du bli bedt om å laste ned og installere agenten før du kan komme til koding.

Komponenter av et Arduino-program

Arduino-programmer kalles skisser. De er vanligvis skrevet i to hovedfunksjoner:

  • oppsett(): Denne funksjonen kjører bare én gang per Arduino-oppstartssyklus. Dette betyr at alle initialiseringer, deklarasjoner eller oppsett gjøres innenfor denne funksjonen.
  • Løkke(): Denne funksjonen fortsetter å sløyfe om og om igjen så lenge Arduinoen din har strøm. Det meste av funksjonskoden er skrevet i denne metoden.

Som du ville gjort med ethvert annet program eller skript, blir alle viktige biblioteker og verdier deklarert og importert før de to funksjonene nevnt ovenfor. Basert på dine behov, står du fritt til å legge til flere funksjoner hvis du ønsker det.

Du kan bruke den serielle monitoren til å se dataene som din Arduino sender over den serielle USB-tilkoblingen. Seriell monitor brukes også til å samhandle med kortet ved hjelp av datamaskinen eller andre kompatible enheter. Den inkluderer også en serieplotter som kan plotte seriedataene dine for bedre visuell representasjon.

Bruke grunnleggende komponenter med Arduino

Vi skal lage et lite oppsett der Arduino kan lese inngangen til en knapp og tenne en LED basert på om den er trykket eller ikke. Før vi kommer til koding, må vi imidlertid koble opp maskinvaren. Du trenger følgende elementer:

  • Trykknapp
  • LED
  • 10kΩ motstand
  • 220Ω motstand

Følg koblingsskjemaet nedenfor for å koble alt riktig. Vær spesielt oppmerksom på GPIO-pinnen (General Purpose Input Output) som hver ledning kobles til på Arduino-kortet.

Når all maskinvaren er koblet til, fortsett og kopier og lim inn følgende kode i den elektroniske IDE. Du finner kommentarer gjennom hele koden for bedre å forklare hva hver del gjør.

#definere LED_PIN 8 //Definer LED-pinnen
#definere BUTTON_PIN 7 //Definer knappenålen
//Nå initialiserer vi LED-en og knappen i oppsettfunksjonen
tomromoppsett(){
pin-modus(LED_PIN, PRODUKSJON);
pin-modus(BUTTON_PIN, INNGANG);
}
//Følgende utdrag går over knappens status og endringer
//LED-status til HIGH (på) når knappen trykkes ned (HIGH)
tomromLøkke(){
hvis (digitallest(BUTTON_PIN) == HØY) {
digitalWrite(LED_PIN, HØY);
}
ellers {
digitalWrite(LED_PIN, LAV);
}
}

Det er mer med Arduino enn bare LED-er og knapper. La oss gå over litt mer avansert kode som integrerer en avstandssensor og summer i stedet.

Bruke en ultralydsensor med Arduino

Din Arduino kan lese sensordata og samhandle i henhold til omgivelsene. Vi skal koble opp en HC-SR04 ultralydavstandsmåler og en summer til brettet for å lage en nærhetsalarm.

Slik ser koden ut; finner du linje for linje forklaringer.

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

//Variabler for beregning av avstand
flyte varighet_oss, avstand_cm;

//Innstilling av pin-modi og initialisering av den serielle monitoren
tomromoppsett(){
Seriell.begynne (9600);
pin-modus(TRIG_PIN, PRODUKSJON);
pin-modus(ECHO_PIN, INNGANG);
pin-modus(LED_PIN, PRODUKSJON);
}

tomromLøkke(){
//Generer 10 mikrosekunders puls til TRIG pin
digitalWrite(TRIG_PIN, HØY);
forsinkelse Mikrosekunder(10);
digitalWrite(TRIG_PIN, LAV);

//Mål varigheten av puls fra ECHO pin
 duration_us = pulseIn(ECHO_PIN, HØY);
//Regn ut avstanden
 avstand_cm = 0.017 * duration_us;

hvis(avstand_cm < DISTANCE_THRESHOLD)
digitalWrite(LED_PIN, HØY); //Slå på LED
ellers
digitalWrite(LED_PIN, LAV); //Slå av LED

//Skriv ut verdien til seriell monitor
Seriell.skrive ut("avstand:");
Seriell.skrive ut(avstand_cm);
Seriell.println("cm");

forsinkelse(500);
}

Hvordan kjører jeg et Arduino-program?

Nå som du er klar med maskinvaren og koden, er det på tide å laste opp koden til din Arduino. Følg disse instruksjonene.

  1. Klikk på Bekrefte hakeknapp for å kompilere koden og sikre at den er fri for feil.
  2. Velg Arduino-brettet og det tilsvarende COM port fra rullegardinmenyen.
  3. Klikk på Laste opp -knappen og vent til koden er fullført opplastingen.

Så snart du klikker på Last opp-knappen, vil du begynne å se aktivitet i det svarte konsollvinduet under. Forutsatt at din Arduino fungerer og riktig tilkoblet, vil koden din bli lastet opp og du kan begynne å teste ut prosjektet ditt.

Mikrokontrollere kan være morsomme

Mikrokontrollere som Arduino er en fin måte å komme inn i DIY-elektronikkens verden. Arduino for barn er en spesielt flott aktivitet. Når du har lært å kode Arduino, åpner kraftigere brett som Raspberry Pi seg helt en annen verden av muligheter når det gjelder hva du kan bygge med bare noen få grunnleggende sensorer og noen linjer av kode.