Przetestowana i działająca klasa InfraRed obsługująca czujnik podczerwieni i dekodująca sygnały z pilota.
Tutaj przykład pracy z klasą:
#include <LiquidCrystal_I2C.h>
#include "InfraRed.h"
LiquidCrystal_I2C lcd(0x27,20,4);
int cursor = 0;
InfraRed IR(2);
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
IR.begin();
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("Podaj liczbe");
}
void loop() {
// put your main code here, to run repeatedly:
wyswietl();
}
// Funkcja wyświetlająca na ekranie przycisk wybrany z pilota
void wyswietl() {
char znak;
if (IR.available()) { // Jeśli dostępne są dane do odbioru z czujnika podczerwieni
znak = IR.decode(); // Zdekoduj sygnał otrzymany z pilota
if (znak != '?') { // Sprawdź, czy zdekodowany sygnał jest sygnałem jaki nas interesuje
if (znak == '-') { // Tryb usuwania znaków
Serial.println("-");
cursor -= 1;
lcd.setCursor(cursor, 1);
lcd.print(" ");
} else { // Tryb dodawania znaków na ekran
Serial.println(znak);
lcd.setCursor(cursor,1);
lcd.print(znak);
cursor += 1;
}
}
IR.resume(); // Po zakończonej pracy z czujnikiem, wznów jego działanie by mógł dalej nasłuchiwać
}
}
Przetestowana i działająca klasa
InfraRed
obsługująca czujnik podczerwieni i dekodująca sygnały z pilota.Tutaj przykład pracy z klasą: