Keďže je Arduino určené k ďalšiemu rozširovaniu, obsahuje vstupy a výstupy (nazývané piny), ku ktorým sa dajú vodičmi pripojiť ďalšie obvody, čipy, relé, pamäte atď.. K práci s týmito pinmi má Arduino k dispozícii jednoduché funkcie.
Najskôr zo všetkého je však potreba programu povedať, či s pinom pracujeme ako so vstupom alebo výstupom. Na nastavenie pinu slúži funkcia pinMode. Tá pre svoju správnu činnosť potrebuje dva vstupné parametre – pin (číslo pinu) a mode (INPUT, OUTPUT alebo INPUT_PULLUP). Ak chceme daný pin používať ako vstup, bude druhý parameter INPUT, ak ako výstup, bude to OUTPUT. Číslo pinu je väčšinou vytlačené na doske Arduino.
pinMode (13, OUTPUT); // Nastavenie pinu 13 na výstup pinMode (12, INPUT); // a pinu 12 na vstup
Vo verzii Arduino UNO teda môžeme používať piny 0 až 13. Tým to ale nekončí, pretože môžeme k digitálnym operáciám používať aj piny označené ako ANALOG IN, len namiesto samotného čísla musíme pred číslo napísať A. U Arduino UNO sú to teda A0 až A5.
Pozor pri nastavení pinu 13 ako vstupný (INPUT alebo INPUT_PULLUP), kde je pripojená LED dióda cez rezistor!
Zapíše na pin hodnotu HIGH alebo LOW. Ak je pin nakonfigurovaný ako výstup (OUTPUT), jeho napätie bude nastavené na zodpovedajúcu hodnotu HIGH, to je 5V (alebo 3,3 V pri doskách s napájaním 3,3 V) alebo pre hodnotu LOW je to 0V (zem).
digitalWrite(13, HIGH); digitalWrite(12, LOW);
V prípade, že máte pin nakonfigurovaný ako vstup (INPUT), tak táto funkcia povolí (pri HIGH) alebo zakáže (pri LOW) interný pull-up rezistor. Pre povolenie interného pull-up rezistora sa doporučuje použiť pinMode s parametrom INPUT_PULLUP.
Načíta z pinu hodnotu HIGH alebo LOW.
int ledPin = 13; // LED pripojená na digitálny pin 13 int inPin = 7; // tlačítko pripojené na digitálny pin 7 int val = 0; // premenná na uloženie načítanej hodnoty void setup() { pinMode(ledPin, OUTPUT); // nastaví pin 13 ako výstup pinMode(inPin, INPUT); // nastaví pin 7 ako vstup } void loop() { val = digitalRead(inPin); // načíta hodnotu zo vstupného pinu tlačítka digitalWrite(ledPin, val); // nastaví pin pre LED podľa načítanej hodnoty }
Ak pin nie je pripojený k ničomu (neuzemnený alebo nepripojený na +5V), tak funkcia digitalRead môže vrátiť hodnotu buď HIGH alebo LOW (môže sa náhodne meniť).
Tento text je preložený a upravený zo stránok arduino.cc pod licenciou Creative Commons Attribution-ShareAlike 3.0.
Knižnica pre Arduino EEPROM.h sa využíva na čítanie a zápis dát do internej pamäte EEPROM. To je tá časť pamäte, ktorá si zachová uložené dáta aj po vypnutí napájania Arduina. Veľkosť tejto pamäte je daná mikrokontrolérom, napr. ATmega328 má 1024 bajtov, ATmega1280 ...
Aplikácia swDuino funguje ako webový server na stolnom PC so systémom Windows, cez ktorý môžeme interaktívne monitorovať a ovládať pripojené Arduino cez sériovú linku (Serial to Web). K dispozícii je i...
Arduino MEGA 2560 je navrhnutý pre komplexnejšie projekty. Má väčší priestor pre program, takže sa využíva pre 3D tlačiarne a projekty robotiky. To dáva projektom dostatok priestoru. K tejto doske nájdete aj rôzne shieldy. Medzi najpoužívanejšie patrí napr. ...