« おもちゃのテスター真骨頂♪ラズパイのGPIOポートをチェック | トップページ | GW前半初日♪ゆっくり走る20キロ »

2014.04.25

はじめての電子工作♪で、LED全部のせ

箱の中身はなんでしょね♪

本日のお届けは、ブレッドボード(部品を差し込むだけで結線できるハンダ付け不要の試作用基板)と、LED10個(赤、緑、各5個)、抵抗いっぱい、コンデンサいっぱい。そしてジャンパワイヤ(オス~オス、オス~メス、各10本ずつ)

抵抗のカラーコードは全く読めないのでお勉強。LEDのスペックがわからんかったので、大きめの抵抗から手を付けようと、大量の抵抗のカラーコードを見て、頭の中で抵抗値を算出してから、テスターで確認。「お、あってた・・・」、とか、「ん?なんで?」みたいな、自問自答型クイズ番組状態が楽しいが、ちょっと疲れる。

ブレッドボードもはじめて触るので調査。なるほど、ココとココは繋がっていないのかーなどと、面白い。

LEDを1個2個光らせてみたら、同じ抵抗では、赤に比べて緑が暗いということがわかった。全体的には暗めだけど、赤は10KΩ、緑は1KΩにするとバランスが良かった。イロイロ考えて解決していくのが、これまた楽しい。

シメはとりあえず、「LED全部のせ」で。

というか、ジャンパーの数が足りなくなるので、LEDを2個余らせたけど、8つのLEDを独立して点灯できるようにしましたよっと。

プログラムはコチラ。

#include <stdio.h>
#include <unistd.h>
#include "Gpio.hpp"
int main ()
{
  RaspiGpio gpio;
  int pins[] = {2,3,4,7,8,9,10,11,};
  size_t nPin =
     sizeof(pins)/sizeof(pins[0]);
  for(int i = 0; i < nPin; i++) {
      gpio[pins[i]].setMode(
          GPIO_OUTPUT);
  }
  int n = 0;
  while (1) {
      for(int i = 0; i < nPin; i++) {
          gpio[pins[i]] =
              ((n & (1 << i)) != 0);
      }
      n = ++n % 256;
      usleep(100000);
  }
  return 0;
}

0~255の数値を2進数でLEDに表示する感じ。RaspiGpioクラスはGPIOの入出力を行うクラスで、「こじ研」さんのページで紹介されてた、Cのルーチンを利用してます。

ところで、gpio_2とgpio_3は、初期状態でONなんですね。そして、出力が反転して互いに連動している。つまりgpio_2をHIGHにすると、gpio_3がLOWになるとか、その逆もまた同じ。詳細不明ですので近いうちに調べてみようと思います。

次は、入力かな。抵抗あるしすぐ出来るか。なら、トランジスタを使ってみるとか。音を鳴らす、モーター制御、空を飛ぶとか、まーそのうち、おいおいやな。

« おもちゃのテスター真骨頂♪ラズパイのGPIOポートをチェック | トップページ | GW前半初日♪ゆっくり走る20キロ »

Raspberry Pi」カテゴリの記事

プログラミング」カテゴリの記事

日記・コラム・つぶやき」カテゴリの記事

買いました♪」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/94026/59530330

この記事へのトラックバック一覧です: はじめての電子工作♪で、LED全部のせ:

« おもちゃのテスター真骨頂♪ラズパイのGPIOポートをチェック | トップページ | GW前半初日♪ゆっくり走る20キロ »

2017年5月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
フォト

Google AdSense

銀の弾丸

無料ブログはココログ