Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
W części 1 zademonstrowałem, jak złożyć RPi + VS1838b i skonfigurować moduł LIRC Raspbiana do odbierania poleceń IR z pilota IR. Wszystkie kwestie związane z konfiguracją sprzętu i LIRC są omówione w części 1. Część 2 pokaże, jak połączyć sprzęt + moduł LIRC, który ustawiliśmy w części 1, z Pythonem.
Zdalny [Odbiornik podczerwieni + RPI] LIRC Pythondisplay (lub wyślij).
Kieszonkowe dzieci
Żaden
Krok 1: Ukryj Devinput.lircd.conf
Twoje zdalne pliki konfiguracyjne zostaną umieszczone w katalogu /etc/lirc/lircd.conf.d. LIRC znajdzie w tym katalogu każdy plik, o ile ma on rozszerzenie.conf (np. JVC.lircd.conf). Nie będziemy używać pliku devinput.lircd.conf, więc ukryjemy go, zmieniając rozszerzenie w następujący sposób, zmieniając nazwę devinput.lircd.conf na devinput.lircd.conf.copy
$ sudo mv /etc/lirc/lircd.conf.d/devinput.lircd.conf /etc/lirc/lircd.conf.d/devinput.lircd.conf.copy
Krok 2: Pobierz plik.conf dla swojego pilota
Zdecydowanie najłatwiejszym sposobem uzyskania zdalnego pliku.conf jest pobranie go z ogromnej biblioteki na lirc.sourceforge.net Nawet jeśli twój konkretny zdalny model nie znajduje się na liście, BARDZO prawdopodobne jest, że inny model tego samego producenta będzie działał poprawnie. Po prostu znajdź producenta swojego pilota i kliknij model, który jest bliski. Jeśli nie masz pewności, który model jest bliski, możesz spojrzeć na zawartość każdego modelu i znaleźć taki, który jest bliski Twojemu.
Trudnym sposobem na uzyskanie pliku.conf jest utworzenie własnego za pomocą wbudowanego narzędzia irrecord, ale BARDZO nie udało mi się utworzyć pliku za pomocą tego narzędzia, pomimo dużego wysiłku. Istnieje wiele innych osób, które mają podobne problemy z używaniem niezapisu i bardzo polecam prostą drogę pobrania pliku.conf z lirc.sourceforge.net
Twoje zdalne pliki konfiguracyjne zostaną umieszczone w katalogu /etc/lirc/lircd.conf.d. LIRC znajdzie w tym katalogu każdy plik, o ile ma on rozszerzenie.conf (np. JVC.lircd.conf).
Krok 3: Kod Pythona
Oto kod do przetestowania.
z importu lirc RawConnection
def ProcessIRRemote():
#get IR command #keypress format = (hexcode, repeat_num, command_key, remote_id) try: keypress = conn.readline(.0001) z wyjątkiem: if (keypress != "" i keypress != None): data = keypress.split() sequence = dane[1] polecenie = dane[2] #ignore polecenie powtarza się jeśli (sekwencja != "00"): return print(polecenie)
#define globalne
conn = RawConnection()
print("Uruchamianie…")
podczas gdy prawda:
ProcesIRZdalny()