Stap 3: Lezing IR-codes met behulp van Arduino
Nu laten we naar de interessante dingen. Verbinden met uw IR-sensor Arduino zoals weergegeven in de afbeelding. Ik sommige langere draden gesoldeerd aan mijn IR-sensor en bedekt het gewricht met warmte shrink. Zorg ervoor dat voor de pinout van uw sensor van het gegevensblad. Arduino aansluiten op PC en openstellen van de Arduino IDE.
Ik wijzigde de code van deze tutorial door ladyada te lezen van een externe IR-codes, zodat het gebruikt van interrupts. Uploaden naar je Arduino. Het Ino bestand is gekoppeld aan deze stap.
Zoals ik al zei in de vorige stap, is de externe code niets anders dan hoe lang het gemoduleerde signaal was wordt verzonden en hoe lang was het niet. Op uw Arduino IDE de seriële monitor krijg je een reeks van OFF-ON duur. Dit is de ruwe gegevens die door de afstandsbediening verzonden. Als we een afstandsbediening verzenden het voorbeeld IR-code die we hebben gebruikt in de vorige stap hadden, hadden we zoiets als dit:
Klaar om te decoderen IR!!!
Ontvangen:
UIT AAN
1234 usec, 1500 usec
500 usec, 1500 usecint IRsignal [] {} =
ON, OFF (in 10 van microseconden)
150, 50,
150, 0}
Het eerste blok van codes is de ruwe tijdwaarden in microseconden, de tweede is dezelfde waarden gedeeld door 10 en gepresenteerd in de vorm van een C-matrix, zodat we het direct in onze code van de Arduino gebruiken kunnen (wij zullen het gebruiken terwijl het herscheppen van het infrarood signaal). Merken dat de ruwe waarde kolommen OFF-ON zijn en de opgemaakte waarden ON-OFF zijn. De eerste waarde voor onbewerkte gegevens (1234 usec) is nutteloos als de maatregel van tijd er geen signal(OFF) was voordat we ontvangst de eerste ON-signaal begonnen (dus niet wordt weergegeven in de opgemaakte waarden te gebruiken). In de waarden opgemaakt als een matrix, zal laatste waarde altijd 0 als de laatste OFF duur zal enige einde wanneer u een externe knop weer indrukt.