かべぎわブログ

技術的なことについてかけたらいいな…

【Lチカ】Raspberry PiをPythonでLチカする方法【Python3】

Raspberry PipythonでLチカする方法を紹介します。

ちなみにRaspberryPiの「Pi」はPythonのパイです。RaspberryPiお墨付きの言語ですね!!!

(コマンドラインでかんたんにLチカする方法もあります)

kabegiwa.hatenadiary.jp

さて、実際に手を動かしていきましょう。

RaspberryPi配線図

以下のように配線してみてください。
「GPIO2」から「抵抗」をとおって「LED」を光らせて「GND」へ戻ってくるようなかんじです。 f:id:kabegiwakun:20170814194639p:plain

実際にやってみる

Pythonの開発環境「IDLE」の起動

Pythonでプログラムを書くために今回はRaspberryPiにプリインストールされている「IDLE」という開発環境を利用します。

「スタートメニュー」→「プログラミング」→「Python3(IDLE)」と移動します

f:id:kabegiwakun:20170817221444p:plain

「File」→「New File」を選択します

f:id:kabegiwakun:20170817221950p:plain

すると「Untitled」と書かれたウインドウが起動したかと思います。これに実際にPythonのプログラムを書いていきます。 f:id:kabegiwakun:20170817222845p:plain

Lチカさせるプログラムを書く

エディタに以下のようにプログラムを書きます。

import RPi.GPIO as GPIO
import time

# GPIOの初期化/出力に設定
GPIO.setmode(GPIO.BCM)
GPIO.setup(2,GPIO.OUT)

#無限ループ
while True:
    GPIO.output(2,GPIO.HIGH) # LED点灯
    time.sleep(1) # sleep1秒
    
    GPIO.output(2,GPIO.LOW) # LED点灯
    time.sleep(1) # sleep1秒

プログラムの内容をかんたんに説明すると、まずGPIOの初期化/出力に設定の箇所でGPIO.setmode(GPIO.BCM)でGPIOをプログラムから制御できるように初期化しています。
そしてGPIO.setup(2,GPIO.OUT)でGPIO2をOUT(出力)に設定しています。

無限ループの箇所ではGPIO.output(2,GPIO.HIGH)でGPIO2を点灯させます。HIGHが点灯でLOWが消灯です。
time.sleep(1)で1秒その状態でスリープした後、GPIO.output(2,GPIO.LOW)で消灯→1秒スリープ→LED点灯という無限ループを繰り返します。

プログラムを保存する

「File」→「Save As」を選択します f:id:kabegiwakun:20170817225726p:plain

するとプログラムの名前とどこに保存するかを聞かれますので任意の場所と名前を入力します。
f:id:kabegiwakun:20170817230342p:plain

実際にプログラムを動かしてLチカさせてみる

「Run」→「Run Module」を選択する

f:id:kabegiwakun:20170817230450p:plain
するとPythonコンソールがひらいて===RESTART===と表示されるはずです。これはプログラムが動いているということです。
f:id:kabegiwakun:20170817231526p:plain

RaspberryPiと接続したLEDが点滅していることがわかります。

f:id:kabegiwakun:20170817232025g:plain

好きなだけ点滅させたらCtrl+CをおすかPythonのコンソールを閉じればLEDの点滅はストップします。