« Arduinoで作ろう(37) 8x8ドットマトリクスLEDでスクロールデジタル時計 | トップページ | Arduinoで作ろう(39) 8桁7セグLEDでデジタル時計 »

2019年10月 1日 (火)

Arduinoで作ろう(38) 32x16ドットマトリクスLEDでスクロールデジタル時計

20190928

 大阪 日本橋のデジットで手に入れた32x16ドットマトリクスLEDでスクロールデジタル時計を作ってみました。
これを使うためのライブラリやスケッチはikkeiさんのブログを大いに参考にさせてもらいました。感謝。
 それから,このモジュールのコネクタは2.0mmピッチの10ピンですごく配線しづらいので,2.54mmピッチの8ピンソケットをハンダ付けしました。これはjj1WKNさんのブログ記事のマネです。
 前回のより大きなドットマトリクスLEDなので,時刻が見やすくなりました。数字フォントが8x8なので,LEDモジュールの下半分が余ってますが(^^;)

スケッチはこちら→20191001_digit_32x16_matrix_led_scroll_clock.ino

/*
  デジット 32x16 dot matrix LED Scroll clock
 */

#include <MsTimer2.h>
#include <Digit32x16.h>
#include "dFont.h"
#include <Wire.h>
#include <RtcDS3231.h>
RtcDS3231<TwoWire>
Rtc(Wire);
char buff[12] ;

void setup(){
  Digit32x16::Init();
  Rtc.Begin() ;
}

void loop(){
  RtcDateTime dt = Rtc.GetDateTime() ;
  sprintf(buff, " %02u:%02u:%02u", dt.Hour(), dt.Minute(), dt.Second()) ;
  uint8_t d;
  int textsize = sizeof(buff)/sizeof(buff[0]);
  for(int16_t j=0;j<textsize;j++) {
    d = dFont::Width(buff[j]);
    for(int i=0;i<=d;i++) {
      uint8_t data = dFont::Data(buff[j],i);
      Digit32x16::Vwrite(31, data);
      delay(80);
      Digit32x16::ShiftLeft();
    } 
  }
}

|

« Arduinoで作ろう(37) 8x8ドットマトリクスLEDでスクロールデジタル時計 | トップページ | Arduinoで作ろう(39) 8桁7セグLEDでデジタル時計 »

Arduino」カテゴリの記事

コメント

コメントを書く



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


コメントは記事投稿者が公開するまで表示されません。



« Arduinoで作ろう(37) 8x8ドットマトリクスLEDでスクロールデジタル時計 | トップページ | Arduinoで作ろう(39) 8桁7セグLEDでデジタル時計 »