TV-fjärrkontroll kontrollerad RGB ledde (6 / 6 steg)
Steg 6: Eventuella problem
Varje typ av fjärrkontrollen inte ger enkelt nummer efter avkodning som 1, 2, 3 etc istället de ger lång hex-kod. Detta kan inte användas direkt i if-else-sats. Så det är en metod för att placera 0 x framför hex koden i om annat statement.so prova följande kod när du har kört testet koden ovan och antingen kopiera klistra in eller ändra kod som test.
#include < IRremote.h >
int innan;
int RECV_PIN = 11;
int ledde = 13.
IRrecv irrecv(RECV_PIN);
decode_results resultat.
void setup() {
Serial.BEGIN(9600);
irrecv.enableIRIn(); Starta mottagaren
innan = 0;
pinMode (ledde, OUTPUT); Anger den digitala pin som utdata
}
void loop() {
om (irrecv.decode (& resultat))
{
Serial.println (results.value, HEX);
irrecv.Resume(); Ta emot nästa värde
}
om (results.value==0xyour hex-kod) / / till exempel 0xFF52AD
{
IF(Before==0)
{
digitalWrite(led,HIGH);
innan = 1;
}
}
annat
{
digitalWrite(led,LOW);
innan = 0;
}
}
först öppna seriell övervaka att veiw avkodade hex koden och Använd hex koden i om annat tillstånd som guidade ovan.
Observera att i detta avsnitt där "hex koden" skrivs det kopierar koden för din kod visas i seriell övervaka av din arduino IDE.
kommentera för dina frågor och dela inlägget så att andra kan se den. om jag har gjort misstag Vänligen vänligen göra mig känd som... Tack för visning av inlägget...