著者:米田 聡
シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)のプログラミングが楽しめる拡張ボード「ラズパイ入門ボード」を制作しました。本連載では、ラズパイ入門ボードを使った電子回路制御を取り上げていきます。第4 回は、赤外線レシーバを扱います。
シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。
1 2 3 4 |
(略) # Uncomment this to enable the lirc-rpi module dtoverlay=lirc-rpi:gpio_in_pin=21,gpio_in_pull=down (略) |
1 2 3 4 5 6 |
(略) [lircd] nodaemon = False driver = default device = /dev/lirc0 (略) |
1 2 3 4 5 6 7 8 9 10 11 |
begin button = button_a prog = rctest config = button_a end begin button = button_b prog = rctest config = button_b end |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
import time import lirc import RPi.GPIO as GPIO LED1 = 14 LED2 = 15 LED3 = 12 LED4 = 16 leds = [LED1, LED2, LED3 ,LED4] flag_a = 0 GPIO.setmode(GPIO.BCM) GPIO.setup(leds, GPIO.OUT, initial=GPIO.LOW) socketid = lirc.init('rctest', './rctest.lircrc') while True: code = lirc.nextcode() if code[0] == 'button_a': flag_a ^= 1 GPIO.output(LED1, flag_a) elif code[0] == 'button_b': break GPIO.cleanup() |