3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Arduinoで7セグメント4桁ディスプレイLED05291Pを試す

Last updated at Posted at 2015-03-20

準備

適宜、ご自身の環境に読み替えてくださいませ。

EX1:数字0~9をカウントアップ表示する

まずライブラリの使用方法習得のために、単にカウントアップする表示器を作ってみる。

1. TM1637 用ライブラリをインストール

  1. ライブラリをダウンロード
    http://www.seeedstudio.com/wiki/File:DigitalTube.zip
  2. ライブラリを Arduino IDE にインストール
    Arduino IDE の [スケッチ] → [ライブラリを使用] → [ライブラリをインストール…] からダウンロードしたライブラリ ZIP (DigitalTube.zip) を選択しインストールする。
  • \ドキュメント\Arduino\libraries\ 以下にコピーされる

2. 7セグディスプレイをベースシールドのD7端子に接続する

IMG_20150320_222511-light.jpg

ピンアサインは、下表です。

Arduino Sensor Color
GND GND Black
VCC VCC Red
D8 DIO White
D7 CLK Yellow

3. スケッチを作成する

各桁が 0 から 9 まで約 1 秒毎にカウントアップし 0 に戻って繰り返します。

Grove_7_Seg_Display_ex1.ino
#include "TM1637.h"

#define NANA_SEG_CLK 7
#define NANA_SEG_DIO 8

TM1637 tm1637( NANA_SEG_CLK, NANA_SEG_DIO );

void setup() {
  tm1637.init();
  tm1637.set( BRIGHT_DARKEST );
}

void loop() {
  int8_t NumTab[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
  int8_t ListDisp[4];
  unsigned char count = 0;
  delay( 150 );
  while( 1 ) {
    count ++;
    if( count == sizeof(NumTab) ) count = 0;
    for( unsigned char BitSelect = 0; BitSelect < 4; BitSelect ++ ) ListDisp[BitSelect] = NumTab[count];
    tm1637.display( ListDisp );
    delay( 850 );
  }
}

4. 動作を確認する

  1. Arduino IDE にてコンパイル&書き込み
  2. 7 セグの表示が 0 → 9 とカウントアップし、0 から再カウントアップすることを確認する

5. 感想

  • LCD の勢力が強い昨今、7 セグのレトロ感に魅惑される。14セグ, 16セグへの興味が高まる。
  • ライブラリの使い方を TM1637.h を見て簡単に理解しておくと作業が捗る。ライブラリ万歳。
  • delay を使って簡単に約 1 秒毎としているが、ちゃんとした精度を求めるならそれなりの実装を。

6. リファレンス

EX2:つづく…

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?