#include #include // Define NTP Client to get time WiFiUDP ntpUDP; NTPClient timeClient(ntpUDP, "pool.ntp.org"); #define ledR 14 #define ledG 12 #define ledB 15 String currentDate; int diai, mesi, anoi; int diaf, mesf, anof; //Week Days String weekDays[7]={"Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"}; //Month names String months[12]={"Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"}; void pegahora(){ timeClient.update(); time_t epochTime = timeClient.getEpochTime(); Serial.print("Epoch Time: "); Serial.println(epochTime); String formattedTime = timeClient.getFormattedTime(); Serial.print("Formatted Time: "); Serial.println(formattedTime); int currentHour = timeClient.getHours(); Serial.print("Hour: "); Serial.print(currentHour); int currentMinute = timeClient.getMinutes(); Serial.print(" - Minutes: "); Serial.print(currentMinute); int currentSecond = timeClient.getSeconds(); Serial.print(" - Seconds: "); Serial.println(currentSecond); String weekDay = weekDays[timeClient.getDay()]; Serial.print("Week Day: "); Serial.println(weekDay); //Get a time structure struct tm *ptm = gmtime ((time_t *)&epochTime); int monthDay = ptm->tm_mday; Serial.print("Month day: "); Serial.print(monthDay); int currentMonth = ptm->tm_mon+1; Serial.print(" - Month: "); Serial.print(currentMonth); String currentMonthName = months[currentMonth-1]; Serial.print(" - Month name: "); Serial.println(currentMonthName); int currentYear = ptm->tm_year+1900; Serial.print("Year: "); Serial.println(currentYear); //Print complete date: currentDate = String(currentYear) + "-" + String(currentMonth) + "-" + String(monthDay); Serial.print("Current date: "); Serial.println(currentDate); } // ############### OBJECTS ################# // void setup() { pinMode(ledR,OUTPUT); pinMode(ledG,OUTPUT); pinMode(ledB,OUTPUT); // Initialize a NTPClient to get time timeClient.begin(); // Set offset time in seconds to adjust for your timezone, for example: // GMT +1 = 3600 // GMT +8 = 28800 // GMT -1 = -3600 // GMT 0 = 0 timeClient.setTimeOffset(-3600); } void showLetters(int printStart, int startLetter) { lcd.setCursor(printStart,0); for (int currentLetter = startLetter; currentLetter < linhaum.length(); currentLetter++) { lcd.print(linhaum[currentLetter]); } lcd.print(" "); lcd.setCursor(printStart,1); for (int currentLetter = startLetter; currentLetter < linhadois.length(); currentLetter++) { lcd.print(linhadois[currentLetter]); } lcd.print(" "); delay(250); } void loop() { // Acessa os campos String datainicial=painel["datainicial"].as(); String datafinal=painel["datafinal"].as(); // Mostra no Display for (int letter = 1; letter <= t1; letter++) //scroll off to left { showLetters(0, letter); } // Mostra no LED RGB analogWrite(ledR,ledr); analogWrite(ledG,ledg); analogWrite(ledB,ledb); // Mostra no Serial Serial.print("Data inicial: "); Serial.println(datainicial); sscanf(datainicial.c_str(), "%d/%d/%d", &anoi, &mesi, &diai); Serial.print("Dia: "); Serial.print(diai);Serial.print("Mês: "); Serial.print(mesi);Serial.print("Ano: "); Serial.println(anoi); Serial.print("Data final: "); Serial.println(datafinal); sscanf(datafinal.c_str(), "%d/%d/%d", &diaf, &mesf, &anof); pegahora(); Serial.print("Server date: "); Serial.println(currentDate); delay(5000); }