Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
I del 1 demonstrerade jag hur man monterar RPi + VS1838b och konfigurerar Raspbian's LIRC -modul för att ta emot IR -kommandon från en IR -fjärrkontroll. Alla hårdvaru- och LIRC -installationsproblem diskuteras i del 1. Del 2 visar hur man kopplar ihop hårdvara + LIRC -modulen som vi konfigurerar i del 1 med python.
Fjärrkontroll [IR -mottagare + RPI] LIRC Pythondisplay (eller skicka).
Tillbehör
ingen
Steg 1: Dölj Devinput.lircd.conf
Dina fjärrkonfigurationsfiler placeras i katalogen /etc/lirc/lircd.conf.d. LIRC hittar alla filer i den här katalogen så länge den har ett.conf -tillägg (dvs. JVC.lircd.conf). Vi kommer inte att använda filen devinput.lircd.conf så vi döljer den genom att ändra tillägget enligt följande genom att byta namn på devinput.lircd.conf till devinput.lircd.conf.copy
$ sudo mv /etc/lirc/lircd.conf.d/devinput.lircd.conf /etc/lirc/lircd.conf.d/devinput.lircd.conf.copy
Steg 2: Ladda ner.conf -filen för din fjärrkontroll
Det överlägset enklaste sättet att skaffa en avlägsen.conf -fil är att ladda ner den från det stora biblioteket på lirc.sourceforge.net Även om just din fjärrmodell inte är listad är det mycket troligt att en annan modell från samma tillverkare kommer att fungera bra. Hitta bara tillverkaren av din fjärrkontroll och klicka på en modell som är nära. Om du är osäker på vilken modell som är nära kan du titta på innehållet i varje modell och hitta en som ligger nära din.
Det svåra sättet att få en.conf -fil är att skapa din egen med hjälp av det inbyggda verktyget oinspelning men jag lyckades MYCKET försöka skapa en fil med det här verktyget trots mycket ansträngning. Det finns många andra människor med liknande svårigheter att använda irrecord och jag rekommenderar starkt den enkla vägen att ladda ner en.conf -fil från lirc.sourceforge.net
Dina fjärrkonfigurationsfiler placeras i katalogen /etc/lirc/lircd.conf.d. LIRC hittar alla filer i den här katalogen så länge den har ett.conf -tillägg (dvs. JVC.lircd.conf).
Steg 3: Python -kod
Här är lite kod att testa.
från lirc import RawConnection
def ProcessIRRemote ():
#get IR -kommando #knapptryckningsformat = (hexcode, repeat_num, command_key, remote_id) try: keypress = conn.readline (.0001) utom: keypress = "" if (keypress! = "" och keypress! = None): data = knapptryckning.split () sekvens = data [1] kommando = data [2] kommando #ignore upprepas om (sekvens! = "00"): returutskrift (kommando)
#define Global
conn = RawConnection ()
print ("Startar …")
medan det är sant:
ProcessIRRemote ()