Raspberry Piで電子工作(3) ボタンでLEDを操作

今回は、ボタンを押すと、LEDが点灯するプログラムを作成する。

必要なもの

今回の回路

今回の回路は、今まで作ったLEDとボタンの回路を組み合わせるだけとなる。
LEDとボタンのどちらもGNDが必要なため、今回はブレッドボードのGNDラインを利用した。

ボタンの状態を読み取るプログラム

#include <wiringPi.h>
#include <stdio.h>

#define LED 14
#define BUTTON 3

int main(void)
{
    wiringPiSetup();
    pinMode(BUTTON, INPUT);
    pinMode(LED, OUTPUT);

    int buttonState = 0;
    while (1)
    {
        buttonState = digitalRead(BUTTON);
        if (buttonState == 1)
        {
            digitalWrite(LED, HIGH);
        }
        else
        {
            digitalWrite(LED, LOW);
        }
        delay(200);
    }
    return 0;
}

プログラムの説明

以前作成した、ボタンのみのプログラムでは、単にボタンの情報を表示するのみであったが、今回はその情報を利用して、if文で条件分岐している。

ボタンの状態が「1」であれば、LEDが点灯し、それ以外(つまり「0」)の場合はLEDが消灯する。


トップページに戻る