RaspberryPiでLEDライトを点滅する
電源をどこから取るか
Raspberry PiのPin 1(1番ピン)とPin 17 は 3.3V電源である(Pin 1 と Pin 17を合わせて50mAまで流せる)。 ちなみに、Pin 2とPin 4は5V電源である。 Pin 6, Pin 9, Pin 14, Pin 20, Pin 25, Pin 30, Pin 34, Pin 39 はGND(アース)である。

Raspberry Piの電源を入れて、LEDの [+]側(アノード:anode)を3.3V電源に接続し、[-]側(カソード:cathode)をGND(アース)に接続すると、LEDが点灯し続ける。 ただし、このままではLEDに電流が流れ過ぎて(かなり明るい)壊れてしまうことがあるので、適当な抵抗(resister)たとえば330Ωを直列に接続すると安心だ。
このような接続では、LEDに電流が流れ続けて点きっぱなしで何の芸もない。 1つのLEDの点灯をRaspberry Piで制御できるように接続し、その制御プログラムを書いてみよう。
配線



pythonスクリプト
次のコードは上記のように結線したLEDを、点灯を0.5[sec]、消灯を0.5[sec]として点灯点滅を繰り返し続けるLED制御プログラムをPythonスクリプトとして書いたものである。
RaspberryPiで学ぶ電子工作のpythonプログラム 04-02-led.py
#!/usr/bin/env python # -*- coding: utf-8 -*- # GPIO25を出力としてLEDに給電する import RPi.GPIO as GPIO from time import sleep GPIO.setmode(GPIO.BCM) GPIO.setup(25, GPIO.OUT) while True: GPIO.output(25, GPIO.HIGH) sleep(0.5) GPIO.output(25, GPIO.LOW) sleep(0.5)RaspberryPiで学ぶ電子工作のpythonプログラム 04-02-led.py
#!/usr/bin/env python # -*- coding: utf-8 -*- # GPIO25を出力としてLEDに給電する import RPi.GPIO as GPIO from time import sleep GPIO.setmode(GPIO.BCM) GPIO.setup(25, GPIO.OUT) try: while True: GPIO.output(25, GPIO.HIGH) sleep(0.5) GPIO.output(25, GPIO.LOW) sleep(0.5) except KeyboardInterrupt: pass GPIO.cleanup()