Stap 3: Project coderen:
Zodra u de afstandsbediening knop hex-codes leest dan is nu dit tijd hoofdprogramma code om in te zetten arduino.
De balg is arduino programma voor dit project papier touch TV-afstandsbediening. de balg code uploaden naar arduino. voor het uploaden van de code zet de uw tv externe knoppen hexadecimale code in overeenkomstige positie toonde in het programma met behulp van de opdracht line.and een meer verandering nodig is in het programma voor nemen uw afstandsbediening voor die de stap tussen de code in multicommand lijn gegeven volgen
#include < IRremote.h >
#include < CapacitiveSensor.h >
CapacitiveSensor cs_4_2 = CapacitiveSensor(4,2);
CapacitiveSensor cs_4_5 = CapacitiveSensor(4,5);
CapacitiveSensor cs_4_6 = CapacitiveSensor(4,6);
CapacitiveSensor cs_4_7 = CapacitiveSensor(4,7);
CapacitiveSensor cs_4_8 = CapacitiveSensor(4,8);
CapacitiveSensor cs_4_9 = CapacitiveSensor(4,9);
CapacitiveSensor cs_4_10 = CapacitiveSensor(4,10);
CapacitiveSensor cs_4_11 = CapacitiveSensor(4,11);
IRsend irsend;
int statusled = 13;
VOID Setup
{
cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF);
pinMode(statusled,OUTPUT);
Serial.begin(9600);
digitalWrite(statusled,LOW);
}
void loop {}
lang starten = millis();
lange chd = cs_4_2.capacitiveSensor(30);
lange chi = cs_4_5.capacitiveSensor(30);
lange menu = cs_4_6.capacitiveSensor(30);
lange Voer = cs_4_7.capacitiveSensor(30);
lang vermogen = cs_4_8.capacitiveSensor(30);
lange voli = cs_4_9.capacitiveSensor(30);
lang source = cs_4_10.capacitiveSensor(30);
lange vold = cs_4_11.capacitiveSensor(30);
Als (power > = 60) {}
irsend.sendNEC (0 x40BF48B7, 67); power knop hexadecimale code van uw TV onder lijn gebied externe in gezet
/ * Een ander belangrijk ding in dit project is het vinden van de lengte van de
hex code die aanwezig is in de onderstreepte nummer in de code:irsend.sendNEC(0x40BF28D7,67); De 67 is lengte van mijn tv externe hex-code. Deze waarde verschillen, afhankelijk van de afstandsbediening. Vind je deze lengte waarde in uw remote.simply sluit de ir ontvanger zoals aangegeven in de vorige stap aan arduino. Voeg dan de IR externe bibliotheek aan de arduino software. Open de arduino software en ga naar bestand -> examlpes -> IRremote -> IRrecvDump. een code zal worden open upload de code naar de arduino en seriële monitor openen. Druk vervolgens op elke één knop van uw TV remote wijst naar de IR ontvanger aangesloten met arduino. Vervolgens bleek een lengte van waarden in de seriële monitor. Daarin kunt u zien dat de RAW(value) .in die beugel in de buurt van de RAW waarde heeft. Dat is de lengte van de hexadecimale code voor uw TV remote. example:RAW(67). Toon waas naar de waarde en vervang uw TV remote lengte waarde in plaats van 67 in deze code die alle plaatsen. Vervolgens u allen gedaan in code. u bent klaar om te ontwerpen circuit * /
digitalWrite(statusled,HIGH);
Serial.println ("Sent power code");
} else if (voli > = 60) {}
irsend.sendNEC (0 x40BF58A7, 67); verhoging volume knop hexadecimale code van uw TV onder lijn gebied externe in gezet
digitalWrite(statusled,HIGH);
Serial.println ("Sent volume toename code");
} else if (vold > = 60) {}
irsend.sendNEC (0 x40BF7887, 67); / / volume daling knop hexadecimale code van uw TV onder lijn gebied externe in te zetten
digitalWrite(statusled,HIGH);
Serial.println ("Sent volume daling code");
} else if (Bron > = 60) {}
irsend.sendNEC (0 x40BF28D7, 67); invoerbron selecteren knop hexadecimale code van uw TV onder lijn gebied externe in te zetten
digitalWrite(statusled,HIGH);
Serial.println ("Sent ingangsbron code");
} else if (Voer > = 60) {}
irsend.sendNEC (0 x40BFD22D, 67); / / OK knop hexadecimale code van uw TV onder lijn gebied externe in gezet
digitalWrite(statusled,HIGH);
Serial.println ("verzonden ENTER code");
} else if (chi > = 60) {}
irsend.sendNEC (0 x40BFD827, 67); / / kanaal verhoging knop hexadecimale code van uw TV onder lijn gebied externe in gezet
digitalWrite(statusled,HIGH);
Serial.println ("Sent kanaal verhoging code");
} else if (chd > = 60) {}
irsend.sendNEC (0 x40BFF807, 67); uitgeoefend kanaal daling knop hexadecimale code van uw TV remote in lijn gebied
digitalWrite(statusled,HIGH);
Serial.println ("Sent kanaal daling code");
} else if (menu > = 60) {}
irsend.sendNEC (0 x40BF30CF, 67);
digitalWrite(statusled,HIGH);
Serial.println ("MENU verzonden code"); MENU knop hexadecimale code van uw TV onder lijn gebied externe in te zetten
} else {}
digitalWrite(statusled,LOW);
}
}