
Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:03

Fajny wyświetlacz OLED pokazujący datę, godzinę i temperaturę w stopniach Celsjusza i Fahrenheita za pomocą Xinabox xChips opartego na ESP8266.
Krok 1: Rzeczy użyte w tym projekcie
Komponenty sprzętowe
- XinaBox IP01 x 1 xChip Programator USB oparty na FT232R firmy FTDI Limited
- XinaBox CW01 x 1 xChip Wi-Fi Core oparty na module Wi-Fi ESP8266
- XinaBox SW01 x 1 xChip Czujnik temperatury, wilgotności i ciśnienia atmosferycznego na bazie BME280 firmy Bosch.
- Wyświetlacz OLED XinaBox OD01 x 1 xChip 128x64 pikseli
- Zasilacz XinaBox PU01 x 1 xChip USB (Typ A)
- Złącza magistrali XinaBox XC10 x 1 xChip
- Zasilanie USB 5 V x 1
Aplikacje i usługi online
IDE Arduino
Krok 2: Historia
Wstęp
Zbudowałem ten projekt do wyświetlania daty, czasu UCT i temperatury za pomocą XinaBox xChips, który wykorzystuje protokół magistrali I2C. Czas został pobrany z serwera Google NTP. Temperaturę otoczenia mierzono za pomocą SW01 xChip i wyświetlano na wyświetlaczu OLED OD01 xChip w stopniach Celsjusza i Fahrenheita. Poniższy obrazek przedstawia wyświetlacz OLED.

OLED wyświetlający datę, godzinę i temperaturę
Krok 3: Pobierz niezbędne pliki
Do tego projektu potrzebne będą następujące biblioteki i oprogramowanie.
- Arduino IDE - oprogramowanie programistyczne, w którym będziesz kodować
- xSW01 - Biblioteka czujników temperatury
- xCore - Podstawowa biblioteka dla XinaBox xChips
- xOD01 - biblioteka wyświetlaczy OLED.
- Strefa czasowa - Biblioteka do wyboru strefy czasowej
- Czas - aby korzystać z funkcji czasu
- NTPClient - Pozwala uzyskać czas z serwera
- Będziesz także musiał pobrać płytę ESP8266 i postępować zgodnie z dołączonymi do niej instrukcjami, aby zainstalować płytę
Po pobraniu zainstalujesz IDE i biblioteki. Jest to dość proste, jeśli postępujesz zgodnie z instrukcjami.
Krok 4: Montaż
Twoim głównym procesorem xChip, który będzie wykonywał i przetwarzał program, jest CW01. Opiera się na module WiFi ESP8266 i wykorzystuje protokół magistrali I2C. Aby zaprogramować CW01, będziesz potrzebował programującego xChip. IP01 pozwala nam zaprogramować CW01 przez port USB w naszym komputerze, po prostu łącząc dwa xChips za pomocą złączy magistrali XC10 i wkładając go do portu USB. Bez okablowania i bez lutowania. Należy zwrócić uwagę na orientację nazw identyfikacyjnych xChip. Wszyscy powinni być zorientowani w tym samym kierunku. Powinieneś teraz mieć następującą konfigurację.

Kliknij razem CW01 i IP01 i włóż je do portu USB w komputerze
Jeśli znasz xChips, możesz połączyć każdy xChip razem za pomocą złączy magistrali XC10, których chcesz użyć w swoim projekcie, a następnie włożyć go do portu USB. Będziemy używać czujnika temperatury SW01 oraz wyświetlacza OLED OD01.

Możesz połączyć wszystkie układy razem, a następnie włożyć je do portu USB
Krok 5: Program
Pobierz lub skopiuj i wklej poniższy kod do swojego Arduino IDE. Jeśli nie wprowadzasz żadnych zmian w kodzie, po prostu wprowadź dane Wi-Fi w odpowiednich polach, jak pokazano poniżej. Wprowadź również niezawodny serwer czasu NTP. Do tego projektu używałem serwera czasu Google.

Szczegóły Wi-Fi i serwer czasu NTP
Teraz skompiluj i prześlij. Upewnij się, że wybrałeś właściwy port COM i płytkę w menu narzędzi w Arduino IDE. Po załadowaniu czas, data i temperatura powinny być wyświetlane jak poniżej.

Po przesłaniu powinieneś zobaczyć następujące
Krok 6: Spraw, aby był przenośny
Możesz teraz wyjąć urządzenie z portu USB i oddzielić każdy xChip, po prostu go rozsuwając. Ponieważ programowanie jest zakończone, IP01 nie jest już wymagane. Możesz teraz połączyć swój projekt w dowolny sposób, o ile wszystkie nazwy identyfikacyjne są zorientowane w tym samym kierunku. Do zasilania naszej jednostki użyjemy PU01. Dzięki temu możemy go zasilać ze zwykłego powerbanku lub dowolnego zasilacza USB 5V. Mój połączyłem jak pokazano poniżej.

Montaż końcowy. xChips można podłączyć w dowolny sposób.
Krok 7: Wniosek
Ten projekt zajmie 20 minut. Jeśli chcesz mieć czas w swojej lokalizacji, rozważ przyjrzenie się przykładowemu kodowi w bibliotece stref czasowych lub wykonaj arytmetykę z czasem UTC. Nie użyto przewodów i nie było wymagane lutowanie.
Krok 8: Kod
Date_Time_Temp.ino Arduino Wystarczy wpisać dane Wi-Fi w odpowiednich polach i przesłać na swoją tablicę.
#include // dołącz podstawową bibliotekę dla XinaBox xCHIPS
#include // include bibliotekę wyświetlaczy OLED #include // zawiera bibliotekę czujników temperatury #include // include funkcjonalność ESP8266WiFi #include // zawiera biblioteki czasu #include #include #include #include #include xSW01 SW01; // zdefiniuj właściwości NTP #define ntpOffset 60 * 60 // w sekundach #define ntpInterval 60 * 1000 // w milisekundach // wstaw niezawodny serwer czasu ntp między podwójnymi cudzysłowami // tutaj użyłem serwera czasu ntp Google # zdefiniuj adres ntp "time1.google.com" // skonfiguruj klienta NTP UDP WiFiUDP ntpUDP; Klient czasu NTPClient (ntpUDP, adres ntp, przesunięcie ntp, interwał ntp); // zmienna temperatura float tempC; // stopnie Celsjusza tempF; // fahrenheit // szczegóły twojej sieci Wi-Fi const char* wifi_ssid = "XinaBox"; // twój ssid wifi const char* wifi_pass = "RapidIoT"; // twoje hasło do Wi-Fi // zmienna daty i godziny String date; Czas zegara; // zmienne zawierające dni i miesiące const char * days = {"Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota"}; const char * months = {"sty", "lut", "mar", "kwiecień", "maj", "czerwiec", "lipiec", "sierpień", "wrzesień", "październik", "listopad" ", "Gru"}; const char * ampm = {"AM", "PM"}; pusta konfiguracja () { tempC = tempF = 0; // inicjalizacja temperatury na zero timeClient.begin(); // uruchom klienta NTP UDP // uruchom komunikację szeregową Serial.begin(115200); // uruchom komunikację i2c i ustaw piny Wire.begin(2, 14); // uruchom czujnik temperatury SW01.begin(); // uruchom wyświetlacz OLED OLED.begin(); // wyczyść wyświetlacz OLED OD01.clear(); // nawiąż połączenie Wi-Fi wifi_connect(); opóźnienie (1000); } void loop() { // uruchom jeśli połączenie Wi-Fi jest nawiązane if (WiFi.status() == WL_CONNECTED) { SW01.poll(); // odczyt temperatury tempC = SW01.getTempC(); // zapisz temp w celsjuszu tempF = SW01.getTempF(); // przechowuj temperaturę w skali Fahrenheita date = ""; // wyczyść zmienną daty clktime = ""; // wyczyść zmienną czasu // zaktualizuj klienta ntp i pobierz znacznik czasu unix utc timeClient.update(); unsigned long epochTime = timeClient.getEpochTime(); // konwertuj odebrany znacznik czasu na obiekt time_t time_t utc; utc = czasepoki; // czas utc TimeChangeRule utcRule = {"UTC", Last, Sun, Mar, 1, 0}; Strefa czasowa UTC (utcRule, utcRule); // formatowanie zmiennych czasu data += dni[dzień tygodnia(utc) - 1]; data += ", "; data += miesiące[miesiąc(utc) - 1]; data += " "; data += dzień(utc); data += ", "; data += rok(utc); // sformatuj czas do formatu 12-godzinnego z AM/PM i bez sekund clktime += hourFormat12(utc); clktime += ":"; jeśli (minuta (UTC)
Zalecana:
Zegar internetowy: wyświetlanie daty i godziny za pomocą OLED za pomocą ESP8266 NodeMCU z protokołem NTP: 6 kroków

Zegar internetowy: wyświetlanie daty i godziny za pomocą OLED za pomocą ESP8266 NodeMCU z protokołem NTP: Cześć, w tej instrukcji zbudujemy zegar internetowy, który będzie pobierał czas z Internetu, więc ten projekt nie będzie wymagał żadnego zegara czasu rzeczywistego do uruchomienia, będzie potrzebował tylko działające łącze internetowe A do tego projektu potrzebujesz esp8266 który będzie miał
Ładny wyświetlacz daty, godziny i temperatury: 3 kroki

Uroczy wyświetlacz daty, czasu i temperatury: Cześć przyjaciele, w tej instrukcji wyjaśnię procedurę tworzenia jednostki wyświetlania daty, godziny i aktualnej temperatury za pomocą Arduino pro mini, RTC i ośmiocyfrowego siedmiosegmentowego wyświetlacza w bardzo kompaktowej obudowie, która jest użytecznym urządzeniem
Wyświetlanie temperatury i wilgotności oraz zbieranie danych za pomocą Arduino i przetwarzania: 13 kroków (ze zdjęciami)

Wyświetlanie temperatury i wilgotności oraz zbieranie danych za pomocą Arduino i przetwarzania: Wstęp: Jest to projekt, który wykorzystuje płytę Arduino, czujnik (DHT11), komputer z systemem Windows i program przetwarzający (do bezpłatnego pobrania) do wyświetlania danych temperatury, wilgotności w postaci cyfrowej i forma wykresu słupkowego, wyświetlanie czasu i daty oraz odliczanie czasu
Przesuwanie daty i godziny do aplikacji Blynk za pomocą Wemos D1 Mini Pro: 10 kroków

Przesuwanie daty i godziny do aplikacji Blynk za pomocą Wemos D1 Mini Pro: Użyjemy Wemos D1 Mini Pro, aby przesunąć czas i Data do aplikacji Blynk. Do tej czynności nie trzeba podłączać żadnych komponentów do Wemos D1 Mini Pro
Wyświetlanie temperatury na module wyświetlacza LED P10 za pomocą Arduino: 3 kroki (ze zdjęciami)

Wyświetlanie temperatury na module wyświetlacza LED P10 za pomocą Arduino: W poprzednim samouczku powiedziano, jak wyświetlać tekst na module wyświetlacza LED P10 z matrycą punktową za pomocą Arduino i złącza DMD, które można sprawdzić tutaj. W tym samouczku przedstawimy prosty samouczek projektu, wykorzystując moduł P10 jako med