記事一覧

Raspberry Pi Zero W でボタン押してLチカ(GPOIをWiringPiでコントロール)

Raspberry Pi Zero W でボタン押してLチカ(GPOIをWiringPiでコントロール)



こんにちはRoboTakaoです。ようこそ「極力ローコスト ロボット製作 ブログ」にお越しくださいました。

前回はWirinPiでGPIOコントロールしてLチカをしました。
前回の記事はこちらを参照してください。

今回はGPIOのInputを使って、ボタンを押したらLEDが点灯するようにしてみます。

WiringPi19.png

配線図

WiringPi17.png

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を点灯させるだけです。超簡単です。

画像版

WiringPi06.png

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

WiringPi05.png

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

WiringPi07.png

ボタンを押すとLEDが点灯しました。客観的に見ると当たり前すぎて地味ですね。



次回はPWMでLEDをじわじわ点灯したり、消灯したりしたいと思います。

それでは今回はこの辺で失礼します!ありがとうございました。

スポンサードリンク

コメント

コメントの投稿

非公開コメント

プロフィール

RoboTakao

Author:RoboTakao
みなさんご訪問ありがとうございます。ロボット作りたいけどお小遣いそんなにないし、簡単でローコストでロボットを作るための私のプロジェクトを紹介します。

ウェブサイトもありますのでそちらもよろしくお願いします。
http://robotakao.jp/

スポンサーリンク