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);
}