From 1ea91ea258369db7f8924b0dc489171c0236fcd9 Mon Sep 17 00:00:00 2001 From: Torben Egmose Date: Fri, 23 Sep 2022 19:00:29 +0200 Subject: time --- .vscode/extensions.json | 17 +++-- platformio.ini | 1 + src/main.cpp | 182 ++++++++++++++++++++++++++++++++++++++---------- 3 files changed, 155 insertions(+), 45 deletions(-) diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 0f0d740..080e70d 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,7 +1,10 @@ -{ - // See http://go.microsoft.com/fwlink/?LinkId=827846 - // for the documentation about the extensions.json format - "recommendations": [ - "platformio.platformio-ide" - ] -} +{ + // See http://go.microsoft.com/fwlink/?LinkId=827846 + // for the documentation about the extensions.json format + "recommendations": [ + "platformio.platformio-ide" + ], + "unwantedRecommendations": [ + "ms-vscode.cpptools-extension-pack" + ] +} diff --git a/platformio.ini b/platformio.ini index 91b78c6..01e07ca 100644 --- a/platformio.ini +++ b/platformio.ini @@ -22,4 +22,5 @@ lib_deps = upload_protocol = espota upload_port = 172.19.5.103 +;upload_port = 172.19.1.222 ;upload_port = /dev/ttyUSB3 \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index eaaa95a..662da4e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -5,9 +5,13 @@ #include #include +char buf[5] = {'x','x',':','x','x'}; + + #include const char* debug = "debug"; const char* server = "mqtt.iot"; +//const char* server = "172.19.1.10"; WiFiClient espClient; PubSubClient client(espClient); @@ -15,6 +19,7 @@ PubSubClient client(espClient); ESP8266WiFiMulti wifiMulti; const char* ssid = "iot"; +//const char* ssid = "bakketoppen"; const char* password = "longtimeago"; @@ -36,8 +41,10 @@ bool oldbacklight; unsigned long tick = 0; char outside[10] = ""; +char inside[10] = ""; +char pct[10] = ""; int co = 0; -int sec = 10; +int sec = 15; void numprint(int num); int level(byte* payload, unsigned int length) { @@ -74,33 +81,35 @@ void callback(char* topic, byte* payload, unsigned int length) { backlight = true; } - lcd.setCursor(0,2); - for(unsigned int a=length; a<7; a++) { - lcd.print(' '); + return ; + } + + if(topic[1]=='t') { + for(unsigned int a=0; a<5; a++) { + buf[a] = ' '; } for(unsigned int a=0; a 3) return; - lcd.setCursor(12,3); - for(unsigned int a=length; a<5; a++) { - lcd.print(' '); + for(unsigned int a=0; a<10; a++) { + pct[a] = ' '; } for(unsigned int a=0; a= 1000) { tick = millis(); - sec--; if(sec<0) sec = 10; + sec--; if(sec<0) sec = 15; - if(sec == 5) { + + if(sec == 10) { for(int a=0; a<5; a++) { if('-' == outside[a]) { myprint(a*4, numbers[12]); } if('0' == outside[a]) { myprint(a*4, numbers[0]); } @@ -405,10 +438,83 @@ void loop() } } } + for(int a=0; a<5; a++) { + if('-' == inside[a]) { myprint2(a*4, numbers[12]); } + if('0' == inside[a]) { myprint2(a*4, numbers[0]); } + if('1' == inside[a]) { myprint2(a*4, numbers[1]); } + if('2' == inside[a]) { myprint2(a*4, numbers[2]); } + if('3' == inside[a]) { myprint2(a*4, numbers[3]); } + if('4' == inside[a]) { myprint2(a*4, numbers[4]); } + if('5' == inside[a]) { myprint2(a*4, numbers[5]); } + if('6' == inside[a]) { myprint2(a*4, numbers[6]); } + if('7' == inside[a]) { myprint2(a*4, numbers[7]); } + if('8' == inside[a]) { myprint2(a*4, numbers[8]); } + if('9' == inside[a]) { myprint2(a*4, numbers[9]); } + if('.' == inside[a]) { + myprint2(a*4, numbers[13]); + a++; + myprint2(a*4, numbers[11]); + for(a = a + 1; a<5; a++) { + myprint2(a*4, numbers[10]); + } + } + } } - if(sec == 0) { + if(sec == 5) { numprint(co); + + for(int a=0; a<5; a++) { + if('-' == pct[a]) { myprint2(a*4, numbers[12]); } + if('0' == pct[a]) { myprint2(a*4, numbers[0]); } + if('1' == pct[a]) { myprint2(a*4, numbers[1]); } + if('2' == pct[a]) { myprint2(a*4, numbers[2]); } + if('3' == pct[a]) { myprint2(a*4, numbers[3]); } + if('4' == pct[a]) { myprint2(a*4, numbers[4]); } + if('5' == pct[a]) { myprint2(a*4, numbers[5]); } + if('6' == pct[a]) { myprint2(a*4, numbers[6]); } + if('7' == pct[a]) { myprint2(a*4, numbers[7]); } + if('8' == pct[a]) { myprint2(a*4, numbers[8]); } + if('9' == pct[a]) { myprint2(a*4, numbers[9]); } + if(' ' == pct[a]) { + myprint2(a*4, numbers[10]); + } + if(a==2) { + myprint2(a*4, numbers[14]); + } + } + } + + if(sec == 0) { + int b = 0; + for(int a=0; a<5; a++) { + if('x' == buf[a]) { myprint(a*4 + b, numbers[15]); } + if('0' == buf[a]) { myprint(a*4 + b, numbers[0]); } + if('1' == buf[a]) { myprint(a*4 + b, numbers[1]); } + if('2' == buf[a]) { myprint(a*4 + b, numbers[2]); } + if('3' == buf[a]) { myprint(a*4 + b, numbers[3]); } + if('4' == buf[a]) { myprint(a*4 + b, numbers[4]); } + if('5' == buf[a]) { myprint(a*4 + b, numbers[5]); } + if('6' == buf[a]) { myprint(a*4 + b, numbers[6]); } + if('7' == buf[a]) { myprint(a*4 + b, numbers[7]); } + if('8' == buf[a]) { myprint(a*4 + b, numbers[8]); } + if('9' == buf[a]) { myprint(a*4 + b, numbers[9]); } + if(' ' == buf[a]) { myprint(a*4 + b, numbers[10]); } + if(':' == buf[a]) { + lcd.setCursor(8,0); + lcd.write(1); lcd.write(160); + lcd.setCursor(8,1); + lcd.write(1); lcd.write(160); + b=-2; + } + + myprint2(a*4, numbers[10]); + } + + lcd.setCursor(18,0); + lcd.write(160); + lcd.setCursor(18,1); + lcd.write(160); } } -- cgit v1.2.3