Πίνακας περιεχομένων:
- Βήμα 1: Πράγματα που χρησιμοποιούνται σε αυτό το έργο
- Βήμα 2: Ιστορία
- Βήμα 3: Λήψη απαραίτητων αρχείων
- Βήμα 4: Συναρμολόγηση
- Βήμα 5: Πρόγραμμα
- Βήμα 6: Κάντε το φορητό
- Βήμα 7: Συμπέρασμα
- Βήμα 8: Κωδικός
Βίντεο: Εμφάνιση ημερομηνίας, ώρας και θερμοκρασίας χρησιμοποιώντας το XinaBox: 8 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Δροσερή οθόνη OLED που δείχνει την ημερομηνία, την ώρα και τη θερμοκρασία σε Κελσίου και Φαρενάιτ χρησιμοποιώντας Xinabox xChips με βάση το ESP8266.
Βήμα 1: Πράγματα που χρησιμοποιούνται σε αυτό το έργο
Συστατικά υλικού
- Προγραμματιστής XinaBox IP01 x 1 xChip USB βασισμένος στο FT232R From FTDI Limited
- XinaBox CW01 x 1 xChip Wi-Fi Core βασισμένο στο ESP8266 Wi-Fi Module
- XinaBox SW01 x 1 xChip Αισθητήρας θερμοκρασίας, υγρασίας και ατμοσφαιρικής πίεσης με βάση το BME280 της Bosch.
- OLED οθόνη XinaBox OD01 x 1 xChip 128x64 Pixel
- Τροφοδοσία XinaBox PU01 x 1 xChip USB (Τύπος Α)
- Συνδετήρες XinaBox XC10 x 1 xChip Bus
- Τροφοδοτικό USB 5V x 1
Εφαρμογές λογισμικού και διαδικτυακές υπηρεσίες
Arduino IDE
Βήμα 2: Ιστορία
Εισαγωγή
Δημιούργησα αυτό το έργο για να εμφανίσω την ημερομηνία, την ώρα και τη θερμοκρασία UCT χρησιμοποιώντας το XinaBox xChips που χρησιμοποιεί το πρωτόκολλο διαύλου I2C. Η ώρα ανακτήθηκε από έναν διακομιστή Google NTP. Η θερμοκρασία περιβάλλοντος μετρήθηκε χρησιμοποιώντας το SW01 xChip και εμφανίστηκε στην οθόνη OD01 xChip OLED σε Κελσίου και Φαρενάιτ. Η παρακάτω εικόνα δείχνει την οθόνη OLED.
OLED με ημερομηνία, ώρα και θερμοκρασία
Βήμα 3: Λήψη απαραίτητων αρχείων
Θα χρειαστείτε τις ακόλουθες βιβλιοθήκες και λογισμικό για αυτό το έργο.
- Arduino IDE - Λογισμικό ανάπτυξης στο οποίο θα κωδικοποιήσετε
- xSW01 - Βιβλιοθήκη αισθητήρων θερμοκρασίας
- xCore - Βασική βιβλιοθήκη για XinaBox xChips
- xOD01 - Βιβλιοθήκη οθόνης OLED.
- Ζώνη ώρας - Βιβλιοθήκη για να επιλέξετε τη ζώνη ώρας σας
- Timeρα - Για να χρησιμοποιήσετε συναρτήσεις χρόνου
- NTPClient - Σας δίνει τη δυνατότητα να έχετε χρόνο από έναν διακομιστή
- Θα χρειαστεί επίσης να κατεβάσετε τον πίνακα ESP8266 και να ακολουθήσετε τις οδηγίες που τον συνοδεύουν για να εγκαταστήσετε τον πίνακα
Μόλις το κατεβάσετε θα εγκαταστήσετε το IDE και τις βιβλιοθήκες. Είναι αρκετά απλό αν ακολουθήσετε τις οδηγίες.
Βήμα 4: Συναρμολόγηση
Το κύριο xChip που θα εκτελέσει και θα επεξεργαστεί το πρόγραμμα είναι το CW01. Βασίζεται στη μονάδα WiFi ESP8266 και χρησιμοποιεί το πρωτόκολλο διαύλου I2C. Για να προγραμματίσετε στο CW01, θα χρειαστείτε έναν προγραμματισμό xChip. Το IP01 μας επιτρέπει να προγραμματίσουμε το CW01 μέσω της θύρας USB στον υπολογιστή μας απλά κάνοντας κλικ μαζί στα δύο xChips χρησιμοποιώντας συνδέσμους διαύλου XC10 και τοποθετώντας το στη θύρα USB. Δεν απαιτείται καλωδίωση και συγκόλληση. Ένα πράγμα που πρέπει να λάβετε υπόψη είναι ο προσανατολισμός των ονομάτων αναγνώρισης xChip. Πρέπει να προσανατολιστούν όλοι προς την ίδια κατεύθυνση. Θα πρέπει τώρα να έχετε την ακόλουθη ρύθμιση.
Κάντε κλικ μαζί CW01 και IP01 και τοποθετήστε το στη θύρα USB του υπολογιστή σας
Εάν είστε εξοικειωμένοι με το xChips, μπορείτε να συνδέσετε κάθε xChip μαζί χρησιμοποιώντας συνδέσμους διαύλου XC10 που θέλετε να χρησιμοποιήσετε για το έργο σας και στη συνέχεια να το τοποθετήσετε στη θύρα USB. Θα χρησιμοποιήσουμε αισθητήρα θερμοκρασίας SW01 και οθόνη OLED OD01.
Μπορείτε να συνδέσετε όλα τα τσιπ σας μαζί και στη συνέχεια να τα τοποθετήσετε στη θύρα USB
Βήμα 5: Πρόγραμμα
Κατεβάστε ή αντιγράψτε και επικολλήστε τον παρακάτω κώδικα στο Arduino IDE. Εάν δεν κάνετε αλλαγές στον κώδικα, απλώς εισάγετε τα στοιχεία του WiFi στα αντίστοιχα πεδία τους, όπως φαίνεται παρακάτω. Εισαγάγετε επίσης έναν αξιόπιστο διακομιστή ώρας NTP. Έχω χρησιμοποιήσει διακομιστή ώρας Google για αυτό το έργο.
Λεπτομέρειες WiFi και διακομιστής χρόνου NTP
Τώρα μεταγλωττίστε και ανεβάστε. Βεβαιωθείτε ότι έχετε επιλέξει τη σωστή θύρα και πλακέτα COM στο μενού εργαλείων στο Arduino IDE. Μετά τη μεταφόρτωση, η ώρα, η ημερομηνία και η θερμοκρασία θα πρέπει να εμφανίζονται ως παρακάτω.
Μετά τη μεταφόρτωση θα πρέπει να δείτε τα παρακάτω
Βήμα 6: Κάντε το φορητό
Μπορείτε τώρα να αφαιρέσετε τη μονάδα από τη θύρα USB και να διαχωρίσετε κάθε xChip τραβώντας το απλά. Δεδομένου ότι ο προγραμματισμός έχει ολοκληρωθεί, το IP01 δεν απαιτείται πλέον. Μπορείτε τώρα να συνδέσετε το έργο σας με όποιον τρόπο επιθυμείτε, εφόσον τα ονόματα ταυτοποίησης είναι όλα προσανατολισμένα προς την ίδια κατεύθυνση. Για την τροφοδοσία της μονάδας μας θα χρησιμοποιήσουμε το PU01. Αυτό μας επιτρέπει να το τροφοδοτούμε από μια κανονική τράπεζα τροφοδοσίας ή από οποιοδήποτε τροφοδοτικό USB 5V. Έχω συνδέσει το δικό μου όπως φαίνεται παρακάτω.
Τελική συναρμολόγηση. Τα xChips μπορούν να συνδεθούν με όποιον τρόπο επιθυμείτε.
Βήμα 7: Συμπέρασμα
Αυτό το έργο θα διαρκέσει 20 λεπτά για να ολοκληρωθεί. Αν θέλετε την ώρα στην τοποθεσία σας, σκεφτείτε να δείτε το παράδειγμα του κώδικα στη βιβλιοθήκη Timezone ή να κάνετε κάποια αριθμητική με τον χρόνο UTC. Δεν χρησιμοποιήθηκαν καλώδια και δεν απαιτείται συγκόλληση.
Βήμα 8: Κωδικός
Date_Time_Temp.ino Arduino Απλώς εισαγάγετε τα στοιχεία του WiFi στα αντίστοιχα πεδία και ανεβάστε τα στον πίνακα.
#include // περιλαμβάνει βασική βιβλιοθήκη για το XinaBox xCHIPS
#include // περιλαμβάνουν βιβλιοθήκη οθόνης OLED #include // περιλαμβάνουν βιβλιοθήκη αισθητήρων θερμοκρασίας #include // περιλαμβάνουν ESP8266WiFi λειτουργικότητα #include // περιλαμβάνουν βιβλιοθήκες χρόνου #include #include #include #include #include xSW01 SW01? // ορισμός ιδιοτήτων NTP #define ntpOffset 60 * 60 // σε δευτερόλεπτα #define ntpInterval 60 * 1000 // σε χιλιοστά του δευτερολέπτου // εισαγωγή ενός αξιόπιστου διακομιστή χρόνου ntp μεταξύ των διπλών εισαγωγικών // εδώ έχω χρησιμοποιήσει έναν διακομιστή χρόνου Google ntp # define ntpAddress "time1.google.com" // ρυθμίστε το πρόγραμμα -πελάτη NTP UDP WiFiUDP ntpUDP. NTPClient timeClient (ntpUDP, ntpAddress, ntpOffset, ntpInterval); // μεταβλητή θερμοκρασίας float tempC; // κελσίου float tempF; // fahrenheit // τα στοιχεία του wifi σας const char* wifi_ssid = "XinaBox"; // το wifi ssid const char* wifi_pass = "RapidIoT"; // τον κωδικό πρόσβασης wifi σας // μεταβλητή ημερομηνίας και ώρας Ημερομηνία συμβολοσειράς. Χρόνος κλήσης // μεταβλητές που περιέχουν ημέρες και μήνες const char * days = {"Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο"}; const char * μήνες = {"Jan", "Feb", "Mar", "Apr", "May", "June", "July", "Aug", "Sep", "Oct", "Nov "," Δεκ "}; const char * ampm = {"AM", "PM"}; void setup () {tempC = tempF = 0; // αρχικοποίηση θερμοκρασίας στο μηδέν timeClient.begin (); // εκκίνηση του προγράμματος -πελάτη NTP UDP // εκκίνηση σειριακής επικοινωνίας Serial.begin (115200); // ξεκινήστε την επικοινωνία i2c και ορίστε τις ακίδες Wire.begin (2, 14). // έναρξη αισθητήρα θερμοκρασίας SW01.begin (); // εκκίνηση οθόνης OLED OLED.begin (); // εκκαθάριση οθόνης OLED OD01.clear (); // δημιουργήστε σύνδεση wifi wifi_connect (); καθυστέρηση (1000)? } void loop () {// τρέξτε εάν έχει δημιουργηθεί σύνδεση wifi εάν (WiFi.status () == WL_CONNECTED) {SW01.poll (); // ανάγνωση θερμοκρασίας tempC = SW01.getTempC (); // αποθηκεύστε τη θερμοκρασία στο celcius tempF = SW01.getTempF (); // αποθηκεύστε τη θερμοκρασία σε ημερομηνία Φαρενάιτ = ""; // διαγραφή μεταβλητής ημερομηνίας clktime = ""; // εκκαθάριση μεταβλητής ώρας // ενημέρωση του προγράμματος -πελάτη ntp και λήψη του unix utc timestamp timeClient.update (); unsigned long epochTime = timeClient.getEpochTime (); // μετατροπή της ληφθείσας σφραγίδας χρόνου σε time_t αντικείμενο time_t utc; utc = epochTime; // utc time TimeChangeRule utcRule = {"UTC", Last, Sun, Mar, 1, 0}; Ζώνη ώρας UTC (utcRule, utcRule); // μορφοποίηση μεταβλητών ώρας ημερομηνία += ημέρες [καθημερινή εβδομάδα (utc) - 1]; ημερομηνία += ","; ημερομηνία += μήνες [μήνας (utc) - 1]; ημερομηνία += ""; ημερομηνία += ημέρα (utc); ημερομηνία += ","; ημερομηνία += έτος (utc); // μορφοποίηση του χρόνου σε μορφή 12 ωρών με AM/PM και χωρίς δευτερόλεπτα clktime += hourFormat12 (utc); clktime += ":"; εάν (λεπτό (utc)
Συνιστάται:
ESP8266 OLED - Λήψη ώρας και ημερομηνίας από το Διαδίκτυο: 8 βήματα
ESP8266 OLED - Λάβετε ώρα και ημερομηνία από το Διαδίκτυο: Σε αυτό το σεμινάριο θα μάθουμε πώς να λαμβάνετε την ημερομηνία και την ώρα από τον διακομιστή NIST TIME χρησιμοποιώντας ESP8266 OLED και Visuino, Δείτε ένα βίντεο επίδειξης
Πώς να κάνετε καταγραφή ημερομηνίας και ώρας - Liono Maker: 5 Βήματα
Πώς να κάνετε καταγραφή ημερομηνίας και ώρας | Liono Maker: Εισαγωγή: -Σε αυτό το σεμινάριο θα μάθουμε πώς να κάνουμε καταγραφή ημερομηνίας και ώρας με το Arduino. Για το σκοπό αυτό χρησιμοποιώ το DS3231 & Μονάδες κάρτας Micro SD. Η κύρια μονάδα που χρησιμοποιείται για χρόνο & Η καταγραφή ημερομηνίας είναι DS3231. Το DS3231 είναι ένα RTC (πραγματικό τι
Internet Clock: Εμφάνιση ημερομηνίας και ώρας με OLED χρησιμοποιώντας ESP8266 NodeMCU με πρωτόκολλο NTP: 6 βήματα
Internet Clock: Εμφάνιση ημερομηνίας και ώρας με OLED με χρήση ESP8266 NodeMCU Με πρωτόκολλο NTP: Γεια σας παιδιά σε αυτά τα εκπαιδευτικά θα δημιουργήσουμε ένα ρολόι διαδικτύου που θα παίρνει χρόνο από το διαδίκτυο, οπότε αυτό το έργο δεν θα χρειαστεί RTC για να τρέξει, θα χρειαστεί μόνο ένα λειτουργική σύνδεση στο Διαδίκτυο Και για αυτό το έργο χρειάζεστε ένα esp8266 το οποίο θα διαθέτει
Μια χαριτωμένη μονάδα εμφάνισης ημερομηνίας, ώρας και θερμοκρασίας: 3 βήματα
Μια χαριτωμένη μονάδα εμφάνισης ημερομηνίας, ώρας και θερμοκρασίας: Γεια σας φίλοι, Σε αυτό το διδακτικό, θα εξηγήσω τη διαδικασία για τη δημιουργία μιας μονάδας εμφάνισης ημερομηνίας, ώρας και τρέχουσας θερμοκρασίας χρησιμοποιώντας, Arduino pro mini, ένα RTC και οκταψήφια οθόνη επτά τμημάτων σε μια πολύ συμπαγή μονάδα, η οποία είναι μια χρήσιμη απόκλιση
Προώθηση ημερομηνίας και ώρας στην εφαρμογή Blynk χρησιμοποιώντας το Wemos D1 Mini Pro: 10 βήματα
Προώθηση ημερομηνίας και ώρας στην εφαρμογή Blynk χρησιμοποιώντας το Wemos D1 Mini Pro: Θα χρησιμοποιήσουμε το Wemos D1 Mini Pro για να πιέσουμε την ώρα & ημερομηνία στην εφαρμογή Blynk. Δεν θα χρειαστεί να συνδέσετε κανένα στοιχείο στο Wemos D1 Mini Pro για αυτήν τη δραστηριότητα