Stap 6: Mogelijke problemen
Elk type afstandsbediening geven geen eenvoudige nummer na decodering zoals 1, 2, 3 enz in plaats daarvan geven ze lang hexadecimale code. Dit kan niet rechtstreeks worden gebruikt in de instructie if-else. Er is dus een methode van het plaatsen van 0 x voor de hexadecimale code in als anders statement.so de volgende code probeert na het uitvoeren van de code van de test hierboven gegeven en beide kopie plakken of de test-code wijzigen.
#include < IRremote.h >
int
int RECV_PIN = 11;
int geleid = 13;
IRrecv irrecv(RECV_PIN);
decode_results resultaten;
VOID Setup {}
Serial.begin(9600);
irrecv.enableIRIn(); Start de ontvanger
voorheen = 0;
pinMode (led, uitvoer); Hiermee stelt u de digitale pen als uitvoer
}
void loop {}
Als (irrecv.decode (& resultaten))
{
Serial.println (results.value, HEX);
irrecv.resume(); De volgende waarde ontvangen
}
Als (results.value==0xyour hex code) / / bijvoorbeeld 0xFF52AD
{
if(before==0)
{
digitalWrite(led,HIGH);
voorheen = 1;
}
}
anders
{
digitalWrite(led,LOW);
voorheen = 0;
}
}
eerst open seriële monitor om veiw de gedecodeerde hex code en gebruik van hexadecimale code in als anders voorwaarde als boven begeleide.
Merk op dat in deze sectie 'uw hex code' is waar er geschreven Kopieer de code van uw code weergegeven in seriële monitor van je arduino IDE.
commentaar voor uw vragen en delen van de post, zodat andere kunt bekijken. Als ik heb gedaan fout zorg vriendelijk mij bekend over dat... Bedankt voor het bekijken van de post...