Kontrollera en Arduino ombord med en infraröd fjärrkontroll
Hej alla, mitt namn är Noreddine Kessa, jag är en elektronik entusiast. Jag hade kul i helgen leker med min nya leksak, Arduino ATmega328 DIY Kit som jag fick på eBay, och jag skulle älska att dela glädjen med alla vill veta om ämnet. OK nog av det, låt oss dyka rätt in, mitt projekt är att fjärrstyra tre digitala kanaler med hjälp av en IR-fjärrkontroll, i princip jag kommer att visa dig hur du använder en fjärrkontroll för att styra en Arduino ombord som i sin tur kan användas för att styra en enhet, en robot eller någon typ av gadget som du vill fjärrstyra.
II-stycklista
1 X Arduino styrelse,
1 X dator laddad med Arduino kompilator (du kan ladda ner det på (http://arduino.cc/en/Main/Software)
1 X USB kabel
1 x 9 volts nätaggregat (valfritt, kan du använda du dator USB som kraftkälla)
1 x infraröd fjärrkontroll (modell: bil mp3)
3 X LEDs
3 x 330 Ohm motstånd
Ansluta kablar (efter behov)
1 x IR-mottagare (modell PNA4602)
1 X skärbräda
1 X Multimeter(Optional)
III-instruktioner
Obs: du kan använda en fjärrkontroll eller IR-mottagare, jag tog bara upp vad jag använt i detta projekt
Steg 1: Hämta IR biblioteket från (http://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html) och packa upp den i mappen Arduino bibliotek
Obs: du kan behöva ändra raden
#include
till
#include
filen "Irremoteint.h" i huvudet.
Steg 2: ansluta IR-mottagaren lysdioder och instruerat nedan, använda bild som referens
Lysdioder och resistorer anslutningar ***
en) ansluter katoden av alla tre lysdioder till Arduino marken
b) Anslut ena änden av motståndet R1 till LED1 anod
c) Anslut den andra änden av motståndet R1 till pin 9 i Arduino styrelsen
d) Anslut ena änden av motståndet R2 till LED2 anod
e) Anslut den andra änden av motståndet R2 till stift 11 av Arduino styrelsen
f) Anslut ena änden av motståndet R3 till LED3 anod
g) Anslut den andra änden av motståndet R3 till pin 12 i Arduino styrelsen
IR-mottagare anslutningar ***
h) ansluta stift 1 av IR-mottagaren till 5 Volt leverans från Arduino styrelsen
i) ansluta stift 2 av IR-mottagaren till marken av Arduino styrelsen
j) ansluta stift 3 av IR-mottagaren till stift 10 Arduino styrelsen
Steg 3: Anslut datorn till Arduino styrelsen med en USB-kabel.
Steg 3:
en) öppna Arduino Compiler
b) starta ett nytt projekt
c) kopiera källkoden i slutet av denna handledning till kompilatorn editor, sedan ladda upp programmet till Arduino styrelsen
Steg 4: nu är du redo att testa ditt projekt
en) Använd knappen 1 för att aktivera LED1
b) Använd knappen 2 för att aktivera LED2
c) Använd knappen 3 för att aktivera LED3
d) använda knappen 4 inaktivera LED1
e) använda knapp 5 för att inaktivera LED2
f) använda knappen 6 för att inaktivera LED3
g) använda knappen 7 för alla tre lysdioder för att blinka på och av
Jag hoppas du gillade min handledning. Du är fri att modifiera koden som du önskar för din personliga ansökan.
/ *** Koden börjar här ***
/*
Författare: Noreddine Kessa
Datum: 15 jan 2012
Projekt: IR program arduino ombord:
Syfte: Controle en arduino IO ombord med en fjärrkontroll.
*/
#include
#define Knapp1 16724175
#define button2 16718055
#define button3 16743045
#define button4 16716015
#define button5 16726215
#define button6 16734885
#define button7 16728765
#define button8 16730805
#define LED1 11
#define LED2 12
#define LED3 9
#define RECV_PIN 10
#define del 50
#define flashNumber 100
int gånger;
IRrecv irrecv(RECV_PIN);
decode_results resultat.
lång lReceived = 0;
void setup()
{
pinMode (LED1, OUTPUT);
pinMode (LED2, OUTPUT);
pinMode (LED3, OUTPUT);
pinMode (RECV_PIN, indata);
Serial.BEGIN(9600);
irrecv.enableIRIn(); Starta mottagaren
}
void loop() {
om (irrecv.decode (& resultat)) {
lReceived = results.value;
Serial.println(results.Value);
växel (lReceived) {
fall Knapp1:
digitalWrite (LED1, hög);
Serial.println(LED1);
bryta;
fall button4:
digitalWrite (LED1, låg);
Serial.println(LED1);
bryta;
fall button2:
digitalWrite (LED2, hög);
Serial.println(LED2);
bryta;
fall button5:
digitalWrite (LED2, låg);
Serial.println(LED2);
bryta;
fall button3:
digitalWrite (LED3, hög);
Serial.println(LED3);
bryta;
fall button6:
digitalWrite (LED3, låg);
Serial.println(LED3);
bryta;
fall button7:
tider = flashNumber;
blixt:
digitalWrite (LED1, låg);
digitalWrite (LED2, låg);
digitalWrite (LED3, låg);
om (! () gånger--))
{
gå till brk;
}
Delay(del);
digitalWrite (LED1, hög);
Delay(del);
digitalWrite (LED1, låg);
digitalWrite (LED2, hög);
Delay(del);
digitalWrite (LED2, låg);
digitalWrite (LED3, hög);
Delay(del);
goto flash;
BRK:
bryta;
}
irrecv.Resume(); Ta emot nästa värde
}
}
//*****************Code Ends Here***********************