Čitatelji poput vas podržavaju MUO. Kada kupite putem poveznica na našoj stranici, možemo zaraditi partnersku proviziju. Čitaj više.

Sa zajednicom u početnicima koja uvijek izrađuje zabavne i jednostavne projekte, nikada vam neće ponestati ideja o tome što možete učiniti s Arduino mikrokontrolerskom pločom.

Ipak, najvažniji dio svakog Arduino projekta je kod koji sve pokreće. Ispravno programiranje vašeg Arduina je ključ za osiguravanje pravilnog rada elektroničkog projekta. Ali kako kodirati Arduino?

Što je Arduino?

Arduino je platforma za izradu prototipova otvorenog koda. Jednostavan je za korištenje, ima GPIO zaglavlje za povezivanje senzora i drugih elektroničkih komponenti i ima relativno jednostavan programski jezik. Ploče dolaze u različitim oblicima i veličinama, od malih poput Arduino Nano za razmjestive projekte do Arduino Mega 2560 za projekte s više hardvera. Pročitajte naše Arduino vodič za početnike za više informacija o platformi.

Kako programirati Arduino

Programiranje Arduina jednostavno je poput priključivanja hardvera na jedan. Sve što trebate je Arduino ploča, odgovarajući USB kabel (provjerite koju vrstu USB priključka ima vaš Arduino) i računalo za početak. Koristit ćete Arduino programski jezik temeljen na C++.

Dok ima a IDE koji se može preuzeti, također možete koristiti svoj web preglednik za kodiranje Arduina. Imajte na umu da ćete morati instalirati Arduino Agent ako koristite IDE temeljen na pregledniku – prvi put kada ga isprobate, od vas će se tražiti da preuzmete i instalirate agenta prije nego što možete pristupiti kodiranje.

Komponente Arduino programa

Arduino programi nazivaju se skice. Obično se pišu u dvije glavne funkcije:

  • postaviti(): Ova se funkcija pokreće samo jednom po ciklusu pokretanja Arduina. To znači da se sve inicijalizacije, deklaracije ili postavke obavljaju unutar ove funkcije.
  • petlja(): Ova se funkcija stalno ponavlja sve dok vaš Arduino ima napajanja. Većina funkcionalnog koda napisana je ovom metodom.

Kao što biste to učinili s bilo kojim drugim programom ili skriptom, sve važne biblioteke i vrijednosti se deklariraju i uvoze prije dviju gore spomenutih funkcija. Na temelju vaših zahtjeva, slobodni ste dodati više funkcija ako želite.

Možete koristiti Serial Monitor da vidite podatke koje vaš Arduino šalje preko serijske USB veze. Serijski monitor također se koristi za interakciju s pločom pomoću vašeg računala ili drugih sposobnih uređaja. Također uključuje serijski crtač koji može iscrtati vaše serijske podatke za bolji vizualni prikaz.

Korištenje osnovnih komponenti s Arduinom

Napravit ćemo malu postavu gdje Arduino može čitati unos gumba i upaliti LED ovisno o tome je li pritisnut ili ne. No prije nego što krenemo s kodiranjem, moramo ožičiti naš hardver. Trebat će vam sljedeće stavke:

  • Tipkalo
  • LED
  • Otpornik od 10kΩ
  • Otpornik od 220Ω

Slijedite donji dijagram ožičenja kako biste sve ispravno spojili. Obratite posebnu pozornost na GPIO (General Purpose Input Output) pin na koji se spaja svaka žica na Arduino ploči.

Nakon što je sav hardver spojen, samo naprijed i kopirajte i zalijepite sljedeći kod u mrežni IDE. Naći ćete komentare u cijelom kodu kako biste bolje objasnili što svaki dio radi.

#definirati LED_PIN 8 //Definirajte LED pin
#definirati BUTTON_PIN 7 //Definirajte pin gumba
//Sada ćemo pokrenuti LED i gumb u funkciji postavljanja
poništitipostaviti(){
pinMode(LED_PIN, IZLAZ);
pinMode(BUTTON_PIN, ULAZNI);
}
//Sljedeći isječak prelazi preko statusa i promjena gumba
//Status LED-a na VISOKO (uključeno) kada se tipka pritisne (VISOKO)
poništitipetlja(){
ako (digitalRead(BUTTON_PIN) == VISOKO) {
digitalWrite(LED_PIN, VISOKO);
}
drugo {
digitalWrite(LED_PIN, NISKO);
}
}

Ipak, Arduino ima više od LED dioda i tipki. Prođimo kroz neki napredniji kod koji umjesto toga integrira senzor udaljenosti i zujalicu.

Korištenje ultrazvučnog senzora s Arduinom

Vaš Arduino može čitati podatke senzora i komunicirati u skladu sa svojim okruženjem. Spojit ćemo HC-SR04 ultrazvučni senzor za mjerenje udaljenosti i zujalicu na ploču da napravimo alarm blizine.

Evo kako kod izgleda; pronaći ćete objašnjenja redak po redak.

//Deklariranje pinova HC-SR-04 i Buzzer
konstint TRIG_PIN = 6;
konstint ECHO_PIN = 7;
konstint LED_PIN = 3;
konstint DISTANCE_THRESHOLD = 50;

//Varijable za izračunavanje udaljenosti
plutati trajanje_us, udaljenost_cm;

//Postavljanje pin načina i incijalizacija serijskog monitora
poništitipostaviti(){
Serijski.početi (9600);
pinMode(TRIG_PIN, IZLAZ);
pinMode(ECHO_PIN, ULAZNI);
pinMode(LED_PIN, IZLAZ);
}

poništitipetlja(){
//Generiraj impuls od 10 mikrosekundi na pinu TRIG
digitalWrite(TRIG_PIN, VISOKO);
kašnjenjeMikrosekunde(10);
digitalWrite(TRIG_PIN, NISKO);

//Izmjerite trajanje impulsa s ECHO pina
 duration_us = pulsIn(ECHO_PIN, VISOKO);
//Izračunajte udaljenost
 udaljenost_cm = 0.017 * trajanje_us;

ako(udaljenost_cm < DISTANCE_THRESHOLD)
digitalWrite(LED_PIN, VISOKO); //Uključi LED
drugo
digitalWrite(LED_PIN, NISKO); //Isključi LED

//Ispiši vrijednost na serijski monitor
Serijski.ispisati("udaljenost: ");
Serijski.ispisati(udaljenost_cm);
Serijski.println("cm");

odgoditi(500);
}

Kako pokrenuti Arduino program?

Sada kada ste spremni s hardverom i kodom, vrijeme je da prenesete kod na svoj Arduino. Prati ove korake.

  1. Kliknite na Potvrdi označite gumb za kompilaciju koda i osigurajte da nema pogrešaka.
  2. Odaberite Arduino ploču i odgovarajuću COM priključak s padajućeg izbornika.
  3. Kliknite na Učitaj i pričekajte da kod završi s učitavanjem.

Čim kliknete gumb Prenesi, počet ćete vidjeti aktivnost u crnom prozoru konzole ispod. Pod pretpostavkom da vaš Arduino radi i ispravno je povezan, vaš će kod biti učitan i možete početi testirati svoj projekt.

Mikrokontroleri mogu biti zabavni

Mikrokontroleri kao što je Arduino izvrstan su način da uđete u svijet DIY elektronike. Arduino za djecu posebno je sjajna aktivnost. Jednom kada naučite kako kodirati Arduino, moćnije ploče poput Raspberry Pia otvaraju vam se u potpunosti drugačiji svijet mogućnosti u smislu onoga što možete izgraditi sa samo nekoliko osnovnih senzora i nekoliko linija koda.