Arduinoで作ろう(44) WeMos D1でNTP時計
新型コロナウイルスの感染拡大に伴って,外出を自粛中です。
やることがないから,毎日「自宅警備」に専念しつつマイコンで遊んでます。
WeMos D1(ESP8266)はすでにArduinoでもなんでもないんだけど,開発環境としてArduino IDEを使ってるから引き続き「Arduinoで作ろう」の表題で続けます。
今日は,WeMos D1をWi-FiでインターネットにつないでNTP (Network Time Protocol)を使った時計を作ってみました。LCDは秋月電子通商のコレを使っています。
//WeMos_D1 (ESP8266) NTPデジタル時計
#include <ESP8266WiFi.h>
#include <time.h>
#include <ST7032.h> //https://ore-kb.net/archives/195
#define JST 3600 * 9
const char* ssid = "あなたの無線LANのSSID";
const char* password = "あなたのパスワード";
ST7032 lcd ;void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
lcd.begin(16, 2) ;
lcd.setContrast(30);
configTime(JST, 0, "ntp.nict.jp", "ntp.jst.mfeed.ad.jp");
}void loop() {
static const char *wd[] = {"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
time_t t = time(NULL);
struct tm *tm = localtime(&t);
char buff[12];
sprintf( buff, "%04d/%02d/%02d(%s)",tm->tm_year+1900,tm->tm_mon+1,tm->tm_mday,wd[tm->tm_wday] );
lcd.setCursor(0, 0) ;
lcd.print(buff) ;
sprintf( buff, "%02d:%02d:%02d",tm->tm_hour,tm->tm_min,tm->tm_sec );
lcd.setCursor(0, 1) ;
lcd.print(buff) ;
delay(1000);
}
| 固定リンク | 0
「Arduino」カテゴリの記事
- WCH-LinkE とWCH-Link は別モノである(2023.12.02)
- Arduinoで作ろう(63) UNO R4 WiFiでスクロールNTP時計(2023.12.01)
- Arduinoで作ろう(62) ESP8266+SSD1306でNTP時計(2023.11.18)
- 新型 Arduino UNO R4 MINIMA を買った(2023.07.01)
「ESP8266 , ESP32」カテゴリの記事
- Arduinoで作ろう(62) ESP8266+SSD1306でNTP時計(2023.11.18)
- Arduinoで作ろう(51) パルスオキシメータ(2020.05.01)
- Arduinoで作ろう(50) 温度・湿度・気圧データをBlynkで見てみる(2020.04.27)
- Arduinoで作ろう(49) BLEでリモートLチカ(2020.04.25)
- Arduinoで作ろう(48) GPSのデータをAmbientに投げる(2020.04.22)