第1回テックビール作成の旅


はじめに

今回ラズパイを使うのに慣れていないので、LEDで視覚化するのにも挑戦してみます

この記事ではC言語でLチカのみ書いています

検証環境

・raspberrypi3 modelB+
・wiringPi
・学習キット

内容

テックビール作成で用意したもの

• スイッチング電源
https://www.amazon.co.jp/gp/aw/d/B07KJC5M6N/ref=ya_aw_oh_bia_dp?ie=UTF8&psc=1

• 温度センサー
https://www.amazon.co.jp/gp/aw/d/B07PB9VGQ4/ref=ppx_yo_mob_b_track_package_o4_img?ie=UTF8&psc=1

• ラズパイ 学習キット
https://www.amazon.co.jp/gp/aw/d/B075167Y4D/ref=ppx_yo_mob_b_track_package_o4_img?ie=UTF8&psc=1

• raspberrypi3 modelB+
https://www.amazon.co.jp/gp/aw/d/B07FQ9678G/ref=ppx_yo_mob_b_track_package_o5_img?ie=UTF8&psc=1

• ペルチェ素子
https://www.amazon.co.jp/gp/aw/d/B074LG79N6/ref=ppx_yo_mob_b_track_package_o6_img?ie=UTF8&psc=1

• モータードライバ
https://www.robotshop.com/jp/ja/cytron-13a-dc-grove.html?gclid=Cj0KCQiAoIPvBRDgARIsAHsCw09VKl2Yl-7V7ht6O7_k0bwziesKMNIaAHqbJImeJJ2ALIHlbiCO68MaAnAEEALw_wcB

今回この記事で使用したもの

・raspberrypi3 madelB+
・ラズパイ 学習キット

wiringPiインストール

1,gitをインストールしていない方はまずgitインストールします

$ sudo apt-get install git-core

2,インストール後、wiwingPiをcloneしてきます

$ git clone git://git.drogon.net/wiringPi

・clone出来なかった場合は以下のコマンドを実行

$ git clone https://github.com/wiringpi/wiringpi

3,wiringPiというディレクトリが作成されるので以下のコマンドを実行し、移動します

$ cd wiringpi

4,以下のコマンドを実行

$ sudo ./build

5,バージョン確認

$ gpio -v

gpio version: 2.46
Copyright (c) 2012-2018 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty

LED接続


6,LED接続

Pin 11(GPIO17) Pin 09(Ground)

Cコード

7,test.cというファイルを作成します

$ vi test.c

・以下のソースを追加します

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

#define LED1     17
#define LOOP     5
#define WAITMS   1000
#define LED_ON   1
#define LED_OFF  0

int init(void){
  if(wiringPiSetupGpio() == -1) return -1;
  pinMode(LED1, OUTPUT);
  return 0;
}                   

int main(void){

    int i;

    if (init() != 0 ) return -1;
    pinMode(LED1, OUTPUT);

    digitalWrite(LED1, LED_OFF);

    for(i = 0; i < LOOP; i++){

            //LED on
            printf("LED点灯\n");

            digitalWrite(LED1, LED_ON);

            //sleep
            delay(WAITMS);

            //LED off
            printf("LED消灯\n");

            digitalWrite(LED1, LED_OFF);

            //sleep
            delay(WAITMS);

    }

    return 0;

}

実行

8,コンパイルを行い、実行

$ gcc -o test test.c -lwiringPi
$ ./test

まとめ

次回は、LEDで正流と逆流をやってみたいと思います