pdf-icon

Unit DigiClock

SKU:U146

説明

UNIT-Digi-Clock は、2.1 インチ 4 桁の 7 セグメント表示モジュールです。各桁に小数点があり、中央にはコロンドット用の線が追加されており、小数点と時計を表示することができます。ドライバ IC として TM1637、I2C 通信として STM32F030 を採用しています。I2C アドレスは 4bit のディップスイッチで変更可能です。赤色 LED は 8 段階の輝度に対応しています。また、固定用の穴を 4 つ用意しています。

特徴

  • 4 桁の赤色 LED
  • I2C ポート、I2C アドレス変更可能
  • 8 段階の輝度
  • 低電力消費
  • 4 つの固定用穴により、複数の設置が可能

含まれるもの

  • 1x UNIT-Digi-Clock
  • 1x HY2.0-4P ケーブル (20cm)

アプリケーション

  • 時計表示
  • データ表示
  • ストップウォッチ

仕様

仕様 パラメータ
MCU STM32F030F4P6
ドライバ IC TM1637
通信インターフェース I2C 通信 @ 0x30
電源電圧 DC 5V
製品サイズ 50.0 x 31.0 x 14.0mm
製品重量 12.5g
梱包サイズ 136.0 x 92.0 x 15.0mm
梱包重量 17.8g

消費電力テスト

環境 DC 5V 時の電流値
Standby Mode (All off) 2.5mA
SG1 6.6mA
SG2 10.3mA
SG3 17.5mA
SG4 38.7mA
SG5 42.0mA
SG6 45.7mA
SG7 49.2mA
SG8 (All on) 52.5mA

回路図

I2C レジスタ表

キャラクタクロスリファレンステーブル

データシート

ソフトウェア

Arduino

#include "Wire.h"
#include "M5UNIT_DIGI_CLOCK.h"

/* For M5Stack Basic */
#define SDA 21
#define SCL 22
#define ADD 0x30

/* For M5Atom Lite/Matrix */
// #define SDA 26
// #define SCL 32
// #define ADD 0x30

M5UNIT_DIGI_CLOCK Digiclock;

void setup()
{
    delay(2000);
    Serial.begin(115200);
    Wire.begin(SDA, SCL);

    /* Digital clock init */
    if (Digiclock.begin(&Wire, SDA, SCL, ADD))
    {
        Serial.println("Digital clock init successful");
    }
    else
    {
        Serial.println("Digital clock init error");
        while (1);
    }
    char buff[] = "    ";
    Digiclock.setString(buff);
    delay(2000);
}

void loop()
{
    char buff[] = "8.8.:8.8.";
    Digiclock.setString(buff);

    for (int i = 0; i < 5; i++)
    {
        Digiclock.setBrightness(9);
        delay(150);
        Digiclock.setBrightness(0);
        delay(150);
    }
    delay(100);

    for (int i = 0; i < 4; i++)
    {
        for (uint8_t i = 0; i < 9; i++)
        {
            Digiclock.setBrightness(i);
            delay(20);
        }
        for (uint8_t i = 8; i > 0; i--)
        {
            Digiclock.setBrightness(i);
            delay(20);
        }
    }
    delay(100);

    Digiclock.setBrightness(9);
    for (int j = 0; j < 3; j++)
    {
        for (int i = 0; i < 10; i++)
        {
            sprintf(buff, "%d.%d.:%d.%d.", i, i, i, i);
            Digiclock.setString(buff);
            Serial.println(buff);
            delay(200);
        }
    }
    delay(100);

    Digiclock.setBrightness(9);
    for (;;)
    {
        char buff2[] =  "12:00";
        Digiclock.setString(buff2);
        Serial.printf(buff2);
        delay(1000);
        char buff3[] =  "1200";
        Digiclock.setString(buff3);
        Serial.printf(buff3);
        delay(1000);
    }
    delay(100);
}

UIFlow

How to use Unit digi_clock and related API instructions in the UiFlow1
How to use Unit digi_clock and related API instructions in the UiFlow2
  • UiFlow2 Digi-Clock Unit