最近再次翻出樹莓派來玩。回想當初萌生玩樹莓派要追述到樹莓派2B的時候,那時在家中陽臺上製作了一套種植系統。當1.0上線後,發現一重大缺陷:灌溉方面存在問題,純粹是體力活。出於程式設計師天生的懶惰特性,想自己加工一套滴灌系統。但由於種種原因(主要還是懶),現在樹莓派都發展到4B了,1.0的重大缺陷仍然沒有修復!臉皮在哪裡?.
之前嘗試在樹莓派上玩系統,了解樹莓派的各種能力,但一直沒有真正動手嘗試GPIO的使用。這裡將逐步記錄自己玩各類傳感器的步驟和心得。
本文先記錄一下紅外接收器的配置和使用。(另,最近還使用樹莓派3B安裝了一套OSMC系統,用於播放在線視頻。其中也使用到紅外接收器配合從二手市場淘來的蘋果遙控器製作了一套家庭影院系統。)
這裡我們介紹紅外接收器在樹莓派上的配置和使用。我使用的紅外接收器型號為vs 1838b
注意:在接收器正面看,三個腳分別接GPIO口, GND和5V 電源
開始樹莓派的配置
1、安裝紅外接收模塊
$ sudo apt-get install lirc這時你很可能遇到失敗錯誤信息:
安裝失敗拋出異常:
lircd.service - Flexible IR remote input/output application support
Loaded: loaded (/lib/systemd/system/lircd.service; disabled; vendor preset: enabled)
Active: failed (Result: signal) since Sat 2020-04-11 15:01:32 CST; 22ms ago
Docs: man:lircd(8)
http://lirc.org/html/configure.html
Process: 2552 ExecStart=/usr/sbin/lircd --nodaemon (code=killed, signal=SEGV)
Main PID: 2552 (code=killed, signal=SEGV)不要緊張,執行下面命令:
$ sudo cp /etc/lirc/lirc_options.conf.dist /etc/lirc/lirc_options.conf重新安裝
$ sudo apt-get install lirc2、配置信息
編輯文件/etc/lirc/lirc_options.conf
::driver = defaultdevice = /dev/lirc0::3、複製配置文件
$ sudo cp /etc/lirc/lircd.conf.dist /etc/lirc/lircd.conf4、編輯文件 /boot/config.tx
這裡我使用GPIO 4 作為信號接收,所以gpio_pin設置為4
dtoverlay=gpio-ir,gpio_pin=45、嘗試檢查服務的狀態
$ sudo systemctl stop lircd.service$ sudo systemctl start lircd.service$ sudo systemctl status lircd.service6、成功後重啟機器
7、確保設備已連接完成
$ sudo systemctl stop lircd.service$ sudo mode2 -d /dev/lirc08、使用各類遙控器嘗試發送指令
pi@4b:~ $ sudo mode2 -d /dev/lirc0Using driver default on device /dev/lirc0Trying device: /dev/lirc0Using device: /dev/lirc0Running as regular user pispace 16777215pulse 9111space 4519pulse 567space 577pulse 589space 551pulse 616.至此,設備配置完成。後續將嘗試使用python解析接收紅外指令。