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.