Raspberry Pi Zero W でボタン押してLチカ(GPOIをWiringPiでコントロール)
- 2017/11/28
- 22:59
Raspberry Pi Zero W でボタン押してLチカ(GPOIをWiringPiでコントロール)
こんにちはRoboTakaoです。ようこそ「極力ローコスト ロボット製作 ブログ」にお越しくださいました。
前回はWirinPiでGPIOコントロールしてLチカをしました。
前回の記事はこちらを参照してください。
今回はGPIOのInputを使って、ボタンを押したらLEDが点灯するようにしてみます。

配線図

C言語のコード
以下のコードをテキストエディタを使ってled_button.cという名前で作成します。
#include
#include
#define LED_PORT 4 /* GPIO4 */
#define BUT_PORT 25 /* GPIO25 */
int main (void) {
int bd;
if(wiringPiSetupGpio() == -1) return 1; //Initirize
pinMode(LED_PORT, OUTPUT); //GPIO4をOUTPUTに設定
pinMode(BUT_PORT, INPUT); //GPIO25をINPUTに設定
while (1) {
bd = digitalRead(BUT_PORT); //GIPO25がONなら1
digitalWrite(LED_PORT, bd); //GPIO25の状態のままGPIO4を出力
delay(100);
}
return 0;
}
whileループの中で、GPIO25でボタンのONを検出したらGPIO4をONにしてLEDを点灯させるだけです。超簡単です。
画像版

コンパイル
次にコンパイルします。
備考)ここではhomeディレクトリのraspberrupi/というディレクトリを作ってさらにその中にTESTというディレクトリを作って上記のファイルを置きました。
cc –o led_button led_button.c –lwiringPi

実行
コンパイルできたら実行です。
sudo ./led_button

ボタンを押すとLEDが点灯しました。客観的に見ると当たり前すぎて地味ですね。
次回はPWMでLEDをじわじわ点灯したり、消灯したりしたいと思います。
それでは今回はこの辺で失礼します!ありがとうございました。
スポンサードリンク
Raspberry Pi Zero W でPWMでLチカ(GPOIをWiringPiでコントロール) ホーム
Raspberry Pi Zero WでLチカ(GPOIをWiringPiでコントロール)