ዝርዝር ሁኔታ:
- ደረጃ 1 - ሰልፍ
- ደረጃ 2 - ስብሰባ
- ደረጃ 3 - ስብሰባ - ሠንጠረዥ
- ደረጃ 4: Adafruit GFX ቤተ -መጽሐፍት
- ደረጃ 5: Adafruit ST7735 ቤተ -መጽሐፍት
- ደረጃ 6: NTPClient Library
- ደረጃ 7: ESP32_NTP.ino
- ደረጃ 8 - ፋይሎች
ቪዲዮ: ጊዜዎን አያባክኑ - NTP ን ይጠቀሙ !: 8 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:32
ጊዜዎን ይቆጥሩ! ይህ በደንበኞቼ መካከል በተደጋጋሚ የሚነገር ርዕስ ነው ፣ እና በምን ምክንያት? በቀላል እና አስፈላጊ ባልሆነ እውነታ ምክንያት የውሂብ መዝጋቢ ሲያደርጉ እና አውቶማቲክን ለሚመለከቱት ሁሉ ትክክለኛውን ጊዜ ያስፈልግዎታል! እና ጊዜን ለመለካት በርካታ መንገዶች አሉ -ሰዓት በባትሪ ፣ RTC (የእውነተኛ ሰዓት ሰዓት) ፣ ከሌሎች ጋር። ግን ዛሬ ላሳይዎት የምፈልገው (ቀንን ፣ የሳምንቱን ቀን እና ጊዜን ያሳውቃል) በመስመር ላይ ያለው NTP (የአውታረ መረብ ጊዜ ፕሮቶኮል) ነው። በዚህ ቪዲዮ ውስጥ የቀን እና የሰዓት መረጃን በመስመር ላይ እናመጣለን ፣ እና በማሳያው ላይ ያለውን መረጃ እናሳያለን።
ደረጃ 1 - ሰልፍ
ደረጃ 2 - ስብሰባ
ደረጃ 3 - ስብሰባ - ሠንጠረዥ
ደረጃ 4: Adafruit GFX ቤተ -መጽሐፍት
በአርዱዲኖ አይዲኢ ውስጥ ወደ Sketch-> ቤተ-መጽሐፍትን አካትት-> ቤተ-መጽሐፍቶችን ያቀናብሩ…
Adafruit GFX ቤተ -መጽሐፍትን ይጫኑ
ደረጃ 5: Adafruit ST7735 ቤተ -መጽሐፍት
በ Arduino IDE ውስጥ ወደ Sketch-> ቤተ-መጽሐፍትን አካትት-> ቤተ-መጽሐፍቶችን ያቀናብሩ…
Adafruit ST7735 ን ይጫኑ
ደረጃ 6: NTPClient Library
ወደ https://github.com/taranais/NTPClient ይሂዱ እና ታራናይስ የተቀየረውን የ NTPClient ቤተ-መጽሐፍትን ያውርዱ።
ይንቀሉ እና አቃፊውን በ C: / Users / ሰነዶች / Arduino / libraries ውስጥ ያስቀምጡ
ደረጃ 7: ESP32_NTP.ino
ያካትታል እና ይገልጻል
#ያካትቱ #ያካትቱ // Biblioteca NTPClient modificada #ያካትቱ // የሶኬት ዩዲፒ #አካታች // ማሳያ #አካትት /ማሳያ #ያካትቱ // ፒኖዎች ያሳዩ #ገላጭ DISPLAY_DC 12 // A0 #ገላጭ ማሳያ /CSS 13 // CS #ገላጭ DISPLAY_MOSI 14 // SDA #ገላጭ DISPLAY_CLK 27 // SCK #define DISPLAY_RST 0 // Fuso Horário, no caso horário de verão de Brasília int timeZone = -2; // St com com dad dados do dia e hora struct ቀን {int dayOfWeek; int ቀን; int ወር; በዓመት ውስጥ; int ሰዓታት ውስጥ; int ደቂቃዎች; int ሰከንዶች; }; // Socket UDP que a lib utiliza para recuperar dados sobre o horário WiFiUDP udp; // Objeto responsável por recuperar dados sobre horário NTPClient ntpClient (udp, // socket udp "0.br.pool.ntp.org", // URL do servwer NTP timeZone*3600, // Deslocamento do horário em relacão ao GMT 0 60000); // Intervalo entre verificações online/Nomes dos dias da semana char* dayOfWeekNames = {"እሁድ" ፣ "ሰኞ" ፣ "ማክሰኞ" ፣ "ረቡዕ" ፣ "ሐሙስ" ፣ "አርብ" ፣ "ቅዳሜ"}; // Objeto responsável pelo display Adafruit_ST7735 ማሳያ = Adafruit_ST7735 (DISPLAY_CS ፣ DISPLAY_DC ፣ DISPLAY_MOSI ፣ DISPLAY_CLK ፣ DISPLAY_RST) ፤
አዘገጃጀት
ባዶነት ማዋቀር () {Serial.begin (115200); setupDisplay (); connectWiFi (); setupNTP (); // Cria uma nova tarefa no core 0 xTaskCreatePinnedToCore (wifiConnectionTask, // Função que será executada "wifiConnectionTask", // Nome da tarefa 10000, // Tamanho da memória disponível (em WORDs) NULL, pass Não vam, // prioridade NULL ፣ // Não precisamos de referência para a tarefa 0); // ኑሜሮ ዶ ኮር}
SetupNTP
ባዶነት ማዋቀርNTP () {// Inicializa o client NTP ntpClient.begin (); // Espera pelo primeiro ዝመናን በመስመር ላይ Serial.println (“የመጀመሪያውን ዝመና በመጠበቅ ላይ”); ሳለ (! ntpClient.update ()) {Serial.print (".")); ntpClient.forceUpdate (); መዘግየት (500); } Serial.println (); Serial.println ("የመጀመሪያው ዝማኔ ተጠናቋል"); }
WifiConnectionTask
// Tarefa que verifica se a conexão caiu e tenta reconectarvoid wifiConnectionTask (void* param) {while (true) {// ዋይፋይ não está conectada ከሆነ (WiFi.status ()! = WL_CONNECTED) {// ማንዳ ኮንቴክታር ዋይፋይ (); } // መዘግየት ደ 100 መዥገሮች vTaskDelay (100); }}
ConnectWiFi
ባዶነት connectWiFi () {Serial.println («ማገናኘት»); // Troque pelo nome e senha da sua rede WiFi WiFi.begin ("SSID", "12345678"); // Espera enquanto não estiver conectado ሳለ (WiFi.status ()! = WL_CONNECTED) {Serial.print ("."); መዘግየት (500); } Serial.println (); Serial.print ("ተገናኝቷል"); Serial.println (WiFi. SSID ()); }
SetupDisplay
ባዶነት ማዋቀር ማሳያ () {display.initR (INITR_BLACKTAB) ፤ // Inicializa o ማሳያ ማሳያ.setRotation (3); // Rotaciona display.setTextSize (2); // Tamanho do texto display.fillScreen (ST77XX_BLACK); // Preenche com a cor preta display.setCursor (0, 0); // ኮሎካ ወይም ጠቋሚው ምንም começo display.setTextColor (ST77XX_WHITE ፣ ST77XX_BLACK); // Texto branco com fundo preto display.setTextWrap (ሐሰተኛ); // Não pula linha automaticamente}
ሉፕ
ባዶነት loop () {// Recupera os dados sobre a data e horário ቀን ቀን = getDate (); // ዳግም ማስነሻ ወይም ጠቋሚ ማሳያ። // Exibe os dados ምንም ማሳያ display.printf (" %s / n / n %s / n / n %02d/ %02d/ %d / n / n %02d: %02d: %02d", WiFi. SSID ().c_str () ፣ dayOfWeekNames [date.dayOfWeek] ፣ date.day ፣ date.month ፣ date.year ፣ date.hours ፣ date.minutes ፣ date.seconds) ፤ መዘግየት (100); }
ቀን ያግኙ
ቀን getDate () {// Recupera os dados de data e horário usando o client NTP char* strDate = (char*) ntpClient.getFormattedDate (). C_str (); // Passa os dados da string para a struct ቀን ቀን; sscanf (strDate ፣ "%d-%d-%dT%d:%d:%dZ" ፣ & date.year ፣ & date.month ፣ & date.day ፣ & date.hours ፣ & date.minutes ፣ & date.seconds) ፤ // Dia da semana de 0 a 6, sendo 0 o domingo date.dayOfWeek = ntpClient.getDay (); የመመለሻ ቀን; }
ደረጃ 8 - ፋይሎች
ፋይሎቹን ያውርዱ
INO
ፒዲኤፍ
የሚመከር:
DIY Sonoff Smart Switch ን የ Android መተግበሪያን ይጠቀሙ - 11 ደረጃዎች
DIY Sonoff Smart Switch ን የ Android መተግበሪያ ይጠቀሙ - Sonoff ምንድን ነው? ከዚያ መስመር በጣም ተለዋዋጭ እና ርካሽ መሣሪያዎች አንዱ Sonoff Basic እና Sonoff mini ናቸው። እነዚህ በታላቅ ቺፕ ፣ ESP8266/E ላይ ተመስርተው በ Wi-Fi የነቁ መቀያየሪያዎች ናቸው
በእርስዎ Magicbit [Magicblocks] ላይ የግፊት አዝራሮችን ይጠቀሙ -5 ደረጃዎች
በእርስዎ Magicbit [Magicblocks] ላይ የግፊት አዝራሮችን ይጠቀሙ - ይህ አጋዥ ስልጠና Magicblocks ን በመጠቀም በእርስዎ Magicbit ላይ የግፊት አዝራሮችን እንዲጠቀሙ ያስተምራል። በ ESP32 ላይ የተመሠረተ በዚህ ፕሮጀክት ውስጥ አስማትቢትን እንደ ልማት ቦርድ እንጠቀማለን። ስለዚህ ማንኛውም የ ESP32 ልማት ቦርድ በዚህ ፕሮጀክት ውስጥ ሊያገለግል ይችላል
ከ Magicbit [Magicblocks] ጋር የአፈር እርጥበት ዳሳሽ ይጠቀሙ -5 ደረጃዎች
ከ Magicbit [Magicblocks] ጋር የአፈር እርጥበት ዳሳሽ ይጠቀሙ - ይህ አጋዥ ስልጠና Magicblocks ን በመጠቀም የአፈር እርጥበት ዳሳሽ ከእርስዎ Magicbit ጋር እንዲጠቀሙ ያስተምርዎታል። በ ESP32 ላይ የተመሠረተ በዚህ ፕሮጀክት ውስጥ አስማትቢትን እንደ ልማት ቦርድ እንጠቀማለን። ስለዚህ ማንኛውም የ ESP32 ልማት ቦርድ በዚህ ፕሮጄክት ውስጥ ጥቅም ላይ ሊውል ይችላል
ከ Magicbit [Magicblocks] ጋር ዳሽቦርድ ንዑስ ፕሮግራሞችን ይጠቀሙ -5 ደረጃዎች
ከ Magicbit [Magicblocks] ጋር ዳሽቦርድ ንዑስ ፕሮግራሞችን ይጠቀሙ - ይህ አጋዥ ስልጠና Magicblocks ዳሽቦርድ ንዑስ ፕሮግራሞችን ከእርስዎ Magicbit ጋር እንዲጠቀሙ ያስተምርዎታል። በ ESP32 ላይ የተመሠረተ በዚህ ፕሮጀክት ውስጥ አስማትቢትን እንደ ልማት ቦርድ እንጠቀማለን። ስለዚህ ማንኛውም የ ESP32 ልማት ቦርድ በዚህ ፕሮጀክት ውስጥ ሊያገለግል ይችላል
በ Magicbit [Magicblocks] አማካኝነት Ultrasonic Sensor ን ይጠቀሙ - 5 ደረጃዎች
በ Magicbit [Magicblocks] አማካኝነት ለአልትራሳውንድ ዳሳሽ ይጠቀሙ - ይህ መማሪያ Magicblocks ን በመጠቀም ከአልማትዎ ጋር የአልትራሳውንድ ዳሳሽን እንዲጠቀሙ ያስተምራል። በ ESP32 ላይ የተመሠረተ በዚህ ፕሮጀክት ውስጥ አስማትቢትን እንደ ልማት ቦርድ እንጠቀማለን። ስለዚህ ማንኛውም የ ESP32 ልማት ቦርድ በዚህ ፕሮጀክት ውስጥ ሊያገለግል ይችላል