第7夜 Seeeduino XIAO DS3231 SSD1306
ちょっとarduinoで時計を表示させる必要が出てきた

こじんまりとまとめたかったので今回はボードにSeeeduino XIAOを 表示装置は0.91″の128×32ドットタイプ(コントローラはSSD1306)RTCは定番ののDS3231のやつ
お決まりの工作(RTCのダイオードを外して充電回路パターンをカット)を施してからとりあえずブレッドボードに組み込んで動作確認する
ソースはこんな感じ サンプルを適当に切り貼りしただけでひねりも工夫もないけどまぁそこはね
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#include <Adafruit_SSD1306.h> #include <RTClib.h> #include <Wire.h> Adafruit_SSD1306 oled(128, 32, &Wire, -1); RTC_DS3231 rtc; DateTime Now; void setup() { rtc.begin(); rtc.adjust(DateTime(2021, 2, 1, 18, 23, 0)); oled.begin(SSD1306_SWITCHCAPVCC, 0x3C); oled.setTextColor(WHITE); } void loop() { char buf1[] = "YYYY/MM/DD"; char buf2[] = "hh:mm:ss"; Now = rtc.now(); oled.clearDisplay(); oled.setCursor(0, 3); oled.setTextSize(1); oled.print(Now.toString(buf1)); oled.setCursor(12, 18); oled.setTextSize(2); oled.println(Now.toString(buf2)); oled.display(); delay(1000); } |
数日放置してみたがけっこう狂う この個体だと few seconds per day なかんじで進む
このまま使うのは流石に厳しい なにか校正する手立てが要るよね(もしかすると続く)

