Mikrokontrolér Arduino (Atmega) môže nielen vydávať napätie na svojich pinoch, ale taktiež ich dokáže čítať. V nižšej časti si ukážeme najzákladnejšie príklady, kedy môžte v arduine využiť digitalRead().
Funkcia digitalRead() je funkcia ktorá, číta hodnoty z vopred zadefinovaného pinu. Hodnoty HIGH alebo LOW. Funkcia digitalRead() je jedna z najzákladnejších funkcii v programovacom jazyku arduino.
Príklad 1
int ledPin = 10; // Tato led dioda je pripojena na pin 10
int buttonPin = 8; // tlacitko je pripojene na pin 8
int val = 0; // vpremena ktora definuje ci je tlacitko zap/vyp
void setup() {
pinMode(ledPin, OUTPUT); // definuje ze je ledPin output
pinMode(buttonPin, INPUT); // definuje tlacitko ako input
}
void loop() {
val = digitalRead(inPin); // cita stav tlacitka a meni ho na premennu val
digitalWrite(ledPin, val); // snastavuje led na hodnotu tlacidla
}
Príklad 2
int pushButton = 2; void setup() { Serial.begin(9600); pinMode(pushButton, INPUT); } void loop() { int buttonState = digitalRead(pushButton); Serial.println(buttonState); delay(1); // delay in between reads for stability }
Príklad 3
int ledPin = 9; void setup(){ pinMode(ledPin,OUTPUT); } void loop(){ digitalWrite(ledPin, HIGH); delay(200); digitalWrite(ledPin, LOW); delay(200); }
Príklad 4
int ledPin = 9; int tasterPin = 11; void setup(){ pinMode(ledPin,OUTPUT); pinMode(tasterPin,INPUT); } void loop(){ digitalWrite(ledPin, HIGH); delay(200); digitalWrite(ledPin, LOW); delay(200); }
Príklad 5
int LEDblau=6; int taster=7; int tasterstatus=0; void setup() { pinMode(LEDblau, OUTPUT); pinMode(taster, INPUT); } void loop() { tasterstatus=digitalRead(taster); if (tasterstatus == HIGH) { digitalWrite(LEDblau, HIGH); delay (5000); digitalWrite(LEDblau, LOW); } else { digitalWrite(LEDblau, LOW); } }
Viac informácii nájdete na oficiálnom webe Arduino.