Šta je to Arduino Funkcija i kako se koristi
Siguran sam da ovu lekciju čitate i gledate samo iz jednog razloga, a to je da unaprijedite svoje programerske vještine i da skratite desetine ili stotine linija bespotrebnog koda.
U nastavku lekcije ćemo objasniti:
- Šta je to Arduino Funkcija?
- Šema povezivanja i kod za Arduino Funkciju,
- Specifikacija materijala
Šta je to Arduino funkcija?
Ako Vas interesuju funkcije, siguran sam da ste do sada pročitali prethodne tutorijale u kojima je objašnjeno korištenje jako puno senzora, dioda, kao i ostalih elektroničkih komponnti. U slučaju da niste, obavezno to uradite!
I u ovoj lekciji ćemo koristiti RGB Led diodu, a oni koji nemaju RGB diodu mogu koristiti i tri obične led diode 3 ili 5mm bilo koje boje i kod će savršeno raditi.
Kao i u svakom programskom jeziku i u Arduino programiranju koriste se Funkcije. Najjednostavniji odgovor na pitanje šta je funckija i za šta se koristi bio bi da je funkcija poseban dio koda koji se jednom isprogramira i poziva kada je potrebna. Ovakvim pristupom programiranju smanjujemo broj linija koda, kao i količinu zauzete memorije. Vrlo dobro znamo da je Arduino poprilično ograničen malom memorijom, a poseban problem nam predstavlja kada je projekat malo komplikovaniji i kada koristimo 5-6 različitih biblioteka za senzore.
Šema povezivanja i kod za Arduino Funkciju
Pa da krenemo sa praktičnim dijelom. Na animaciji ispod možemo vidjeti našu prvu funkciju pod nazivom blinkLED.
Kao što možete vidjeti ispod funkcije void loop, nalazi se naša funkcija pod nazivom void blinkLED. Svaka funkcija počinje sa void pa naziv funkcije. U zagradi funkcije se mogu, a ne moraju stavljati parametri. U našem primjeru imamo dva parametra i to varijablu int pin i int duration.
Varijabla pin definiše pin ili diodu (boju RGB diode) koju želimo koristiti, a varijabla duration definiše vrijeme ili delay. Obzirom da želimo da nam se boja na RGB diodi pali i gasi koristimo standardnu komandu digitalWrite(pin, HIGH) i nakon toga delay, pa digitalWrite(pin, LOW) i nakon toga delay. Šta smo mi to zapravo isprogramirali ovom funkcijom?
Kao što možete vidjeti, u sekciji void loop samo pozovemo funkciju blinkLED i upišemo parametre. U našem primjeru smo pozvali tri puta funkciju sa različitim pin-om (bojom na RGB diodi). Led dioda možete imati koliko god Vam kontroler dozvoljava, a samo jednom linijom koda pozovete funkciju i odredite koja dioda i koliko brzo da se pali i gasi.
Najbitnije je da shvatite da kada dođe red do funkcije kod automatski kreće sa izvršavanjem iste i nastavak izvršavanja koda se neće zaustaviti sve dok se funkcija ne završi.
Specifikacija materijala:
- 1x Arduino Uno
- 1x Breadboard
- 3x Otpornik 220Ω
- 1x RGB Led dioda ili 3 obične led diode od 3 ili 5mm
- 5x Komunikacijski kablovi