LoginSignup
0
0

More than 5 years have passed since last update.

WaffleでGrove Light Sensorで読み込んだ値を4-Digit Displayに表示する

Last updated at Posted at 2017-07-02

ここここで書いた内容をまとめてみます。

Waffleとは

Arduino互換のマイコンボードです。
こちらをご覧ください。

繋いでみる

まずは物理的に繋いでみます。

Waffle ← A0 ← Lihgt Sensor
Waffle → D9 → 4-Digit Display

DSC_0003.JPG

プログラミング

今までのコードを繋げてみます。

#include "TM1637.h"
#define CLK 9
#define DIO 10
TM1637 tm1637(CLK,DIO);
void setup()
{
    tm1637.init();
    tm1637.set(BRIGHT_TYPICAL);
}
void loop()
{
    int sensorValue = analogRead(A0);
    int percent = (sensorValue / 1023.0f) * 100;

    tm1637.display(0,(percent/1000)%10);
    tm1637.display(1,(percent/100)%10);
    tm1637.display(2,(percent/10)%10);
    tm1637.display(3,percent%10);

    delay(500);
}

Light Sensorで取得した値そのままだとわかりづらいので%に変換してみました。

DSC_0005.JPG

ちょっと不格好だけど、0.5秒毎に値が表示されました。

脱線

パーセント計算を

    int percent = sensorValue* 100 / 1023;

としたら、負の値になることがありました。
そう、オーバーフローです。
Arduinoのintは2バイト(-32,768~32,767)までなのですね。

まとめ

とりあえずWaffle内に閉じた形式で、Input→Outputが出来ました。

0
0
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
0
0