RGB LED Mood taklampa med hackad IR-fjärrkontroll (4 / 6 steg)
Steg 4: Hacking fjärrkontrollen
Mäta den IR-signaler:
För att förstå fjärrkontrollen jag kopplade upp min IR-detektor till en lagring oscilloskop och började trycka på knappar. Fina med en lagring utrymme är att det sparar IR koden på skärmen så att du kan analysera. Tar det ett steg längre, jag faktiskt sparat spår för varje knapp som en. CSV-fil som ska importeras till ett Excel eller OpenOffice Calc-tabellen. Se den bifogade filen för mitt IR signal kalkylblad för strömbrytaren.
Analysera den IR-signaler:
För att använda fjärrkontrollen, var jag inte nödvändigtvis intresserad avkodning hela meddelandestruktur. Främst, ville jag hitta skillnader i signalen för varje knapptryckning.
Använda kalkylbladet och tidsstämplad räckvidd data, upptäckte jag varje IR-signal hade tre delar - en start puls, en 16-bitars fjärrkontrolls-ID (som är samma för alla knappar) och sedan en 16-bitars knappkod som är unik för varje knapp. Genom att titta på de sista 16 bitarna av IR-signalen, kan vi urskilja vilken knapp trycktes.
Den svåra biten att använda kod är när du håller ned någon knapp, fjärrkontrollen skickar ut en identisk "Upprepa code" tills knappen är släppt. Detta upprepa koden är mycket lik till start pulsen, men med olika löptider.
Med IR-signaler:
Jag har IR-signalen ansluten till PIC-avbrott-på-Ändra PIN-koden. Med hjälp av interna Timer 0-modul, kan vi räkna tiden mellan fallande kanter på detta stift. Varje gång det är en fallande kant, PIC sparar staten av TMR0 registret (att spela in föregående period) och startar sedan om TMR0 (för att spela in nästa period). Med hjälp av denna information, kan vi avgöra om en 1, 0, starta puls, eller upprepa puls mottogs.