UNIT-Digi-Clock

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 | STM32F030 | | ドライバIC | TM1637 | | 通信 | I2C, addr: 0x30 | | 電源電圧 | DC5V | | 製品重量 | 12.5g | | 梱包重量 | 17.8g | | 製品サイズ | 50×31×14mm | | 梱包サイズ | 136×92×15mm |

消費電力テスト

環境 DC5V時の電流値
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 レジスタ表

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

関連リンク

Examples

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