Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
În partea 1 am demonstrat cum să asamblați RPi + VS1838b și să configurați modulul LIRC al Raspbian pentru a primi comenzi IR de la o telecomandă IR. Toate problemele de configurare hardware și LIRC sunt discutate în partea 1. Partea 2 va demonstra cum să interfațăm modulul hardware + LIRC pe care îl configurăm în partea 1 cu python.
Telecomandă [Receptor IR + RPI] LIRC Pythondisplay (sau trimitere).
Provizii
nici unul
Pasul 1: Ascundeți Devinput.lircd.conf
Fișierele dvs. de configurare la distanță vor fi plasate în directorul /etc/lirc/lircd.conf.d. LIRC va găsi orice fișier din acest director atâta timp cât are o extensie.conf (adică: JVC.lircd.conf). Nu vom folosi fișierul devinput.lircd.conf, așa că îl vom ascunde schimbând extensia după cum urmează, redenumind devinput.lircd.conf în devinput.lircd.conf.copy
$ sudo mv /etc/lirc/lircd.conf.d/devinput.lircd.conf /etc/lirc/lircd.conf.d/devinput.lircd.conf.copy
Pasul 2: Descărcați fișierul.conf pentru telecomandă
De departe cel mai simplu mod de a obține un fișier.conf la distanță este să îl descărcați din imensa bibliotecă de la lirc.sourceforge.net Chiar dacă modelul dvs. de la distanță nu este listat, este foarte probabil ca un alt model de la același producător să funcționeze bine. Doar găsiți producătorul telecomenzii și faceți clic pe un model apropiat. Dacă nu sunteți sigur care este modelul apropiat, puteți privi conținutul fiecărui model și puteți găsi unul care este aproape de al dvs.
Cel mai greu mod de a obține un fișier.conf este să-ți creezi propriul cu ajutorul instrumentului încorporat, dar nu am reușit FOARTE să încerc să creez un fișier folosind acest utilitar, în ciuda eforturilor depuse. Există o mulțime de alți oameni cu dificultăți similare folosind irrecord și vă recomand cu calea ușoară descărcarea unui fișier.conf de pe lirc.sourceforge.net
Fișierele dvs. de configurare la distanță vor fi plasate în directorul /etc/lirc/lircd.conf.d. LIRC va găsi orice fișier din acest director atâta timp cât are o extensie.conf (adică: JVC.lircd.conf).
Pasul 3: Cod Python
Iată câteva coduri de testat.
din lirc import RawConnection
def ProcessIRRemote ():
#get comanda IR #keypress format = (hexcode, repeat_num, command_key, remote_id) try: keypress = conn.readline (.0001) exceptie: keypress = "" if (keypress! = "" and keypress! = None): data = keypress.split () secvență = date [1] comandă = date [2] comanda #ignore se repetă dacă (secvență! = "00"): return print (comandă)
#define Global
conn = RawConnection ()
print („Pornind …”)
în timp ce este adevărat:
ProcessIRRemote ()