Arduino má řadu nožiček označených d2-d13. Jedná se o digitální vstupy a výstupy. Pomocí těchto nožiček můžeme číst digitální informaci z okolí, například je-li stisknuto tlačítko. A naopak je můžeme použít jako výstupní a například rozsvítit LED diodu. Abychom věděli jak funkce použít, musíme mít alespoň základní představu jak digitální vstupy a výstupy v mikrořadiči fungují.
Nejdříve potřebujeme nakonfigurovat pin a oznámit hardwéru jestli jej chceme mít jako vstupní nebo výstupní. To uděláme pomocí volání funkce pinMode. Například když budeme chtít blikat se zabudovanou LED diodou v Boarduinu, která je připojená na d13, nastavíme si pin 13 jako výstupní.
int ledPin = 13; void setup(void) { pinMode(ledPin, OUTPUT); }
V této chvíli již můžeme s LED diodou svítit.
digitalWrite(ledPin, HIGH);
A nyní si připojme tlačítko ke vstupu d12.
int tlacitkoPin = 12;
A ukážeme si malý program, který čte tlačítko a podle toho co přečtě tak rozsvítí LED diodu.
int ledPin = 13; // Interní LED dioda int tlacitkoPin = 2; void setup(void) { pinMode(ledPin, OUTPUT); pinMode(tlacitkoPin, INPUT); } void loop(void) { digitalWrite(ledPin, digitalRead(tlacitkoPin)); delay(100); }
Ačkoliv máme k dispozici nej digitální piny 2-13, můžeme stejným způsobem použít i analogové piny a0-a5. Ty jsou číslovány v řadě digitálních pinů jako d14-d19. Pokud používáte jinou variantu Arduina, například Sanguino, podívejte se do dokumentace jak a které piny můžete použít. V následujícím ukázce zablikám LED diodou připojenou na a5.
int ledPin = 19; void setup(void) { pinMode(ledPin, OUTPUT); } void loop(void) { digitalWrite(ledPin, !digitalRead(ledPin)); delay(500); }