黄昏より暗きもの、血の流れより赤きもの

読者です 読者をやめる 読者になる 読者になる

黄昏より暗きもの、血の流れより赤きもの

自分の好きな事を好きなように書いて行きます。

【Raspberry Pi】秋葉原千石電商で購入した「Raspberry Pi スターターキット」+Wiring Pi+C言語でLEDを点灯してみた!【GW特集記事】

Linux Raspberry Pi C言語

とある一日の様子

この日も相も変わらず秋葉原に向い、まず手始めにKOTOBUKIYAや小さいフィギュアショップでフィギュアの物色を終えた。その最中に恒例(?)のラブライブ!痛車をパチりと撮る。



さて今回の秋葉原来訪の目的は、最近流行のRaspberry Piを購入する事。次の角、次の角と曲がって千石電商にたどり着く。先ほどの痛車とは似ても似つかぬ光景で、オタクっぽい青年が電気回路の部品を買いに来ている光景を目にする。




同じ秋葉原でもこうも光景が違うのが面白い。この時代に取り残された、ある意味昔のまま。雑然とパーツが並んでいて「これをえらべ!」と言うような感じも、また懐かしさを感じさせた。雑然としたでニコニコ超会議で購入した「AYATORI」が売っていたりだから面白い。「あ、電気回路組みたい人向けに製品売ってるのがいいね」と思いつつ物色を続ける。

そんな訳で店員に下の書籍とそれに対応する、「Raspberry Pi スターターキット」を購入した。今回はLEDを点灯させる事が目的。インターネットに乗ってるような事が丁寧に載っている。初めての事につき、確実に上手く行く方法を思いガンガン資金をつぎ込む。

ホント、秋葉原で行かない場所の方が少なくなって来たな。そしてこの日は成城石井マートでリンデマンスを買って一応の乾杯を済ます。

そしてやっぱりキーボードが無かったので購入。マウスが無かったのでヨドバシカメラで購入、コワーキングスペースでソフトをインストール。と言う事を繰り返している内にいよいよ迎えた休日最終日。俺の机の上はこんな風になっていった。



おおよその経費
  • Raspberry Pi スターターキット:¥8,250
  • 書籍:¥2,480
  • HDMI->DVI変換ケーブル:¥1,280
  • キーボード:¥1,280
  • マウス:¥600
  • 計:¥13,890

と結構な額を使ったような気がする。そしてセットアップを済ませた所で、本の説明に乗っ取りLEDを点灯の儀式を始めた。

Raspberry PiでLED点灯までの儀式

1.Raspberry PiにWiringPiをインストール

LED点灯にあたり、RaspberryPiにWiringPiをインストールする必要がある。「Raspberry PiのGPIO制御方法を確認する(GPIO制御編その2) :ツール・ラボ 」からインストールの手法を借りて来ると、以下のようになる。

pi@raspberrypi ~ $ sudo apt-get install git-core
pi@raspberrypi ~ $ git clone git://git.drogon.net/wiringPi
pi@raspberrypi ~ $ cd wiringPi
pi@raspberrypi ~/wiringPi $ ./build

2.ブレッドボードに回路を組む

ブレッドボードと抵抗、LED、Raspberry Piとブレッドボードを接続する2本のピンを用意する。ブレッドボードについては、こちらのサイトを参照して欲しい。書籍を読み、自分のやった事を端的にまとめると以下のようになる。

  1. +側のピンをGPIOの4(7つ目)のポートに、-側のピンを6つ目のポートにつなぐ
  2. LEDの長い方の線を7を+側に、短い線を-側につなぐ
  3. +側のピンとLEDの+側のピンの間に220Ωの抵抗を通す
  4. LEDを扱う上での注意点

    LEDを扱う上での注意点は、逆向きに配線しないと言う事。慣れていなとLED(発行ダイオード)に逆向きの電気を流してしまうなどして、コマンドを入力しても「あれ?」と言う現象が起こりうるだろう。

    LEDと言うのは一方向しか電流を流さず、このサイトに依れば逆方向から流れる電気の電圧(逆電圧)に弱いとの事だ。最悪逆電圧が原因で回路が壊れる事があるので注意せねばならない。よく書籍やサイトで「抵抗を繋げ!」と書いてあるのも、逆電圧が流れたときのトラブルを少なくするためと言える。

    3.C言語でプログラムを書く

    LinuxコマンドでLEDを制御する方法も存在するが、今回はC言語から点灯する方法について触れたい。いきなりだが以下のソースコードを見て欲しい。

    LED_PORTが制御するGPIOのポート、DELAYが点滅させる間隔を表す。さらにdigitalWriteの1(点灯)と0(消灯)を繰り返しながら、10回分点滅を繰り返す。次にコンパイルは以以下のように行なう。

    cc -o *** ***.c -lwiringPi
    sudo ./***

    実行すると、以下の動画のように点灯が始まる。

    最後に

    となんとかかろうじでLEDが点灯してくれて、目標は達成された。GW中の時間がなければできない事だったが、もうちょい有意義な時間が作れない物かと思う。皆さんはGWいかがお過ごしで?今週末の週末もあるし、休みと言う休みを有意義に過ごして欲しいあまりである。