Enkel, enkel och billig trådlös presentatör (3 / 4 steg)
Steg 3: Skapa programvaran
- Hämta Arduino-IRremote bibliotek. (Ladda ner som zip)
- Installera biblioteket. Om du ner den som en zip-fil, leta upp den nedladdade filen (Arduino-IRremote-master.zip) och från Arduino IDE (1.6.1. och ovan) gå till skiss > Importera bibliotek > Lägg till bibliotek > Välj zip-filen.
- Ladda upp följande skiss som kommer att skriva i konsolfönstret oavsett värde det mottar från IR-kontroll genom att trycka på varje knapp: (original Källa)
/ * HX1838 infraröd fjärrkontroll modul och mottagare
Testprogram
Kräver IR-bibliotek från https://github.com/shirriff/Arduino-IRremote
*/
#include < IRremote.h >
int RECV_PIN = 12;
IRrecv irrecv(RECV_PIN);
decode_results resultat.void setup()
{
Serial.BEGIN(9600);
irrecv.enableIRIn(); Starta mottagaren
}void loop()
{
om (irrecv.decode (& resultat))
{
Serial.println(results.Value);
irrecv.Resume(); Ta emot nästa värde
}
} - Skriv ner siffrorna du får när du trycker ner knapparna på fjärrkontrollen, som du är intresserad i användande (dvs navigeringsinstrument pilar, OK, tillbaka).
- När du vet vilka värden du får, från varje knapptryckning på fjärrkontrollen, är det dags att berätta för Arduino att skicka den motsvarande tangentbord knapptryckningar på datorn, när den får en av de angivna signalerna. Vi använder standard mus & tangentbord Arduino bibliotek för att göra detta.
- Justera följande kod och ladda upp den till din Arduino. I början av arkivera insida kommentaren, kan du se de värden som jag fått från min fjärrkontroll. Justera dessa värden till de du fick under föregående steg.
#include < IRremote.h >
/*
vänster 765534440
höger 858397508
upp 697006884
ner 3536429796
OK 3842404744
ESC 601410692
hem 373699500
*/
int RECV_PIN = 12;
IRrecv irrecv(RECV_PIN);
decode_results resultat.
void setup()
{
irrecv.enableIRIn(); Starta mottagaren
Keyboard.BEGIN();
}
void loop()
{
om (irrecv.decode (& resultat))
{
växel (results.value) {
fall 765534440:
Keyboard.Press(KEY_LEFT_ARROW);
bryta;
fall 858397508:
Keyboard.Press(KEY_RIGHT_ARROW);
bryta;
fall 697006884:
Keyboard.Press(KEY_UP_ARROW);
bryta;
fall 3536429796:
Keyboard.Press(KEY_DOWN_ARROW);
bryta;
fall 3842404744:
Keyboard.Press(KEY_RETURN);
bryta;
fall 601410692:
Keyboard.Press(KEY_ESC);
bryta;
fall 373699500:
Keyboard.Press(KEY_F5);
standard:
bryta;
}
Delay(70);
Keyboard.releaseAll(); Släpp knappen, behöver du inte det kontinuerligt intryckt
Delay(20);
irrecv.Resume(); Ta emot nästa värde
}
}