Πίνακας περιεχομένων:
- Βήμα 1: Μονάδα γραφικών LCD 128x128 RGB TFT ILI 9163C
- Βήμα 2: Αισθητήρας υγρασίας και θερμοκρασίας AM2302 DHT22
- Βήμα 3: Κύκλωμα
- Βήμα 4: Συναρμολόγηση
- Βήμα 5: Βιβλιοθήκη
- Βήμα 6: Κωδικός
- Βήμα 7: Ορισμένες άλλες ενδιαφέρουσες λειτουργίες
Βίντεο: SPηφιακό θερμόμετρο ESP8266 με οθόνη LCD: 7 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Σήμερα, θα σας δείξω πώς να χρησιμοποιήσετε μια οθόνη TFT LCD στο ESP8266 NodeMCU για να εμφανίσετε δεδομένα θερμοκρασίας και υγρασίας για ένα δεδομένο περιβάλλον σε πραγματικό χρόνο. Κάνω ένα παράδειγμα χρήσης της οθόνης με DHT22, που είναι ο μετρητής θερμοκρασίας και υγρασίας. Σε αυτό το βίντεο, συγκεκριμένα, χρησιμοποιώ μια συμπαγή οθόνη για το ψηφιακό μας θερμόμετρο, η οποία είναι γραφική και επιτρέπει την παρακολούθηση του ίδιου του συστήματος. Ο στόχος του σήμερα, λοιπόν, είναι να μάθουμε για τον χειρισμό της οθόνης υγρών κρυστάλλων χρησιμοποιώντας το ESP8266.
Βήμα 1: Μονάδα γραφικών LCD 128x128 RGB TFT ILI 9163C
Η οθόνη που χρησιμοποιούμε σε αυτό το έργο είναι 128x128 εικονοστοιχεία. Το 0, 0 βρίσκεται στην επάνω αριστερή γωνία και αυτό το μοντέλο έχει λειτουργίες εκτύπωσης κειμένου και γραφικής εκτύπωσης, με τις οποίες θα ασχοληθούμε αργότερα.
Βήμα 2: Αισθητήρας υγρασίας και θερμοκρασίας AM2302 DHT22
Θα χρησιμοποιήσουμε το AM2302 DHT22 στη συναρμολόγησή μας, ο οποίος είναι ένας αισθητήρας που μου αρέσει πολύ, καθώς είναι πολύ ακριβής.
Βήμα 3: Κύκλωμα
Στο έργο, έχουμε έναν ESP8266 που είναι ήδη προγραμματισμένος και χρησιμοποιεί την τροφοδοσία USB. Το DHT22 είναι συνδεδεμένο με τα Δεδομένα και η αντίσταση έλξης με το ESP8266, το οποίο ελέγχει την οθόνη LCD.
Βήμα 4: Συναρμολόγηση
Εδώ, έχουμε το ηλεκτρικό διάγραμμα της διάταξής μας, το οποίο δείχνει το NodeMCU, τον αισθητήρα και την οθόνη. Θυμηθείτε ότι πρόκειται για μια σειριακή οθόνη, i2c, η οποία είναι ευκολότερη στη χρήση επειδή έχει περισσότερες καρφίτσες.
Βήμα 5: Βιβλιοθήκη
Δεδομένου ότι πρόκειται να προγραμματίσουμε την οθόνη με γλώσσα Arduino C, χρειαζόμαστε τη βιβλιοθήκη DHT22, καθώς και την οθόνη LCD.
Αρχικά, προσθέστε την ακόλουθη βιβλιοθήκη "DHT sensor sensor" για επικοινωνία με τον αισθητήρα υγρασίας και θερμοκρασίας.
Απλώς αποκτήστε πρόσβαση στο "Sketch >> Include Libraries >> Manage Libraries …"
Τώρα, προσθέστε την ακόλουθη βιβλιοθήκη, "Adafruit-GFX-Library-master."
Απλώς αποκτήστε πρόσβαση στο "Sketch >> Include Libraries >> Manage Libraries …"
Επίσης, προσθέστε τη βιβλιοθήκη "TFT_ILI9163C" για επικοινωνία με τη μονάδα γραφικών LCD.
Αποκτήστε πρόσβαση στον σύνδεσμο ((((((https://github.com/sumotoy/TFT_ILI9163C)))) και κατεβάστε τη βιβλιοθήκη.
Αποσυμπιέστε το αρχείο και επικολλήστε το στο φάκελο βιβλιοθηκών του Arduino IDE.
C: / Αρχεία προγράμματος (x86) / Arduino / βιβλιοθήκες
Βήμα 6: Κωδικός
Αρχικά ας προσθέσουμε τις βιβλιοθήκες που θα χρησιμοποιηθούν στον κώδικά μας.
#include // utilizada para se comunicar com o módulo LCD#include // utilizada para se comunicar com o sensor de umidade e temperatura
Ορισμοί
Θα δούμε παρακάτω τις μεταβλητές που θα χρησιμοποιήσουμε κατά τη διάρκεια του προγράμματος και την παρουσία των αντικειμένων.
#define DHTPIN D6 // pino que conectaremos o sensor DHT22#define DHTTYPE DHT22 // DHT22 é o tipo do sensor que utilizaremos (importante para or construtor) DHT dht (DHTPIN, DHTTYPE); // construtor do objeto que utilizaremos para se comunicar com o sensor // Έννοιες χρωμάτων #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFEFFEFEFF 0FF ορίστε _CS D1 // pino que conectaremos o CS do módulo LCD #define _DC D4 // pino que conectaremos o RS do módulo LCD TFT_ILI9163C display = TFT_ILI9163C (_ CS, _DC); // construtor do objeto que utilizaremos para se comunicar com o módulo LCD
Ρύθμιση
Στη συνάρτηση setup (), αρχικοποιούμε τη μεταβλητή "dht", η οποία είναι υπεύθυνη για την επικοινωνία με τον αισθητήρα υγρασίας και τη θερμοκρασία. Θα ξεκινήσουμε επίσης τη μεταβλητή "display" που χρησιμοποιείται για την επικοινωνία με τη μονάδα LCD.
Θα διαμορφώσουμε επίσης το αντικείμενο ώστε να αρχίζει να σχεδιάζεται στην οθόνη.
void setup (void) {dht.begin (); // inicialização para se comunicar com o sensor display.begin (); // επισήμανση για την επικοινωνία με την οθόνη LCD.clearScreen (); // limpa a tela, removendo todos os desenhos display.fillScreen (ΜΑΥΡΟ); // pinta a tela toda de preto display.setTextSize (2); // configura o tamanho do texto com o tamanho 2 display.setTextColor (ΠΡΑΣΙΝΟ); // configura a cor do texto como verde display.setCursor (5, 10); // posiciona o cursor para começar a escrita a partir do (x, y) display.print ("TEMPERATUR"); // escreve em tela display.setCursor (22, 70); // reposiciona o cursor display.print ("UMIDADE"); // escreve em tela display.setTextColor (ΛΕΥΚΟ); // configura a cor do texto como branco (a partir de agora) καθυστέρηση (1000). // espera de 1 segundo}
Βρόχος
Στη λειτουργία βρόχου (), θα ανακτήσουμε την υγρασία και τις θερμοκρασίες που διαβάζονται από τον αισθητήρα και γράφονται στην οθόνη στη συγκεκριμένη θέση. Σε κάθε διάστημα 5 δευτερολέπτων, η τιμή διαβάζεται από τον αισθητήρα και γράφεται στην οθόνη.
void loop () {int h = dht.readHumidity (); // faz a leitura da umidade do sensor int t = dht.readTemperature (); // faz a leitura da temperatura do sensor // as 2 linhas seguintes utilisando ή metodo “fillRect”, για να σας βοηθήσουμε να κάνετε τοπικές εκδηλώσεις για τον αέρα και τη θερμοκρασία, για να αποκτήσετε μια αξιοσημείωτη αντίσταση για την αρχή. display.fillRect (5, 32, 120, 20, ΜΑΥΡΟ); // fillRect (x, y, πλάτος, ύψος, χρώμα); display.fillRect (5, 92, 120, 20, ΜΑΥΡΟ); display.setCursor (40, 35); // reposiciona o cursor para escrever display.print (t); // escreve a temperatura em tela display.print ((char) 247); // escreve o símbolo de grau ° através de código display.print ("C"); // coloca o “C” para indicar que é graus Celcius display.setCursor (40, 95); // reposiciona o cursor para escrever display.print (h); // escreve a umidade em tela display.print ("%"); // επισημάνετε το σύμβολο "porcentagem" για την ένδειξη μιας καθυστέρησης umidade (5000). }
Βήμα 7: Ορισμένες άλλες ενδιαφέρουσες λειτουργίες
// Περιστρέφει το περιεχόμενο της οθόνης (παράμετροι 0, 1, 2 ή 3)
display.setRotation (uint8_t);
// Αντιστρέφει τα χρώματα της οθόνης (κάνει αρνητικό)
display.invertDisplay (boolean);
// Σχεδιάζει ένα μόνο pixel στην οθόνη στη θέση (x, y)
display.drawPixel (x, y, χρώμα);
// Σχεδιάζει κάθετη γραμμή στη θέση
display.drawFastVLine (x, y, πλάτος, χρώμα);
// Σχεδιάζει κάθετη γραμμή στην καθορισμένη θέση
display.drawFastHLine (x, y, πλάτος, χρώμα);
// Σχεδιάζει μια οριζόντια γραμμή στην καθορισμένη θέση
display.drawRect (x, y, πλάτος, ύψος, χρώμα);
// Σχεδιάζει έναν κύκλο στην καθορισμένη θέση
display.drawCircle (x, y, ακτίνα, χρώμα).
Συνιστάται:
Χρήση smartphone ως θερμόμετρο χωρίς επαφή / φορητό θερμόμετρο: 8 βήματα (με εικόνες)
Χρήση Smartphone ως Θερμόμετρο χωρίς επαφή / Φορητό θερμόμετρο: Μέτρηση της θερμοκρασίας του σώματος χωρίς επαφή / χωρίς επαφή, όπως ένα θερμοβόλο. Δημιούργησα αυτό το έργο επειδή το Thermo Gun τώρα είναι πολύ ακριβό, οπότε πρέπει να βρω εναλλακτική λύση για να φτιάξω DIY. Και ο σκοπός είναι να φτιάξετε με έκδοση χαμηλού προϋπολογισμού. ΠρομήθειεςMLX90614Arddu
Υπέρυθρο θερμόμετρο μη επαφής με βάση το Arduino - Θερμόμετρο IR με χρήση Arduino: 4 βήματα
Υπέρυθρο θερμόμετρο μη επαφής με βάση το Arduino | Θερμόμετρο με βάση το IR χρησιμοποιώντας Arduino: Γεια σας παιδιά σε αυτά τα εκπαιδευτικά θα κάνουμε ένα θερμόμετρο χωρίς επαφή χρησιμοποιώντας arduino. Δεδομένου ότι μερικές φορές η θερμοκρασία του υγρού/στερεού είναι πολύ υψηλή ή πολύ χαμηλή και στη συνέχεια είναι δύσκολο να έρθετε σε επαφή με αυτό και να το διαβάσετε θερμοκρασία τότε σε αυτό το σκηνικό
Οθόνη LCD I2C / IIC - Χρήση LCD SPI στην οθόνη LCD I2C Χρήση μονάδας SPI σε IIC με Arduino: 5 βήματα
Οθόνη LCD I2C / IIC | Χρησιμοποιήστε μια οθόνη SPI στην οθόνη I2C LCD χρησιμοποιώντας μονάδα SPI σε IIC με Arduino: Γεια σας παιδιά, καθώς ένα κανονικό SPI LCD 1602 έχει πάρα πολλά καλώδια για να συνδεθεί, οπότε είναι πολύ δύσκολο να το διασυνδέσετε με το arduino, αλλά υπάρχει μια μονάδα διαθέσιμη στην αγορά που μπορεί μετατρέψτε την οθόνη SPI σε οθόνη IIC, οπότε πρέπει να συνδέσετε μόνο 4 καλώδια
Οθόνη LCD I2C / IIC - Μετατρέψτε μια οθόνη SPI LCD στην οθόνη LCD I2C: 5 βήματα
Οθόνη LCD I2C / IIC | Μετατρέψτε ένα SPI LCD σε οθόνη I2C LCD: η χρήση της οθόνης spi LCD χρειάζεται πάρα πολλές συνδέσεις για να γίνει κάτι που είναι πραγματικά δύσκολο να το κάνω, έτσι βρήκα μια μονάδα που μπορεί να μετατρέψει το i2c LCD σε spi LCD οπότε ας ξεκινήσουμε
Οθόνη θερμοκρασίας και επιπέδου φωτός με οθόνη στην οθόνη NOKIA 5110: 4 βήματα
Οθόνη θερμοκρασίας και φωτός με οθόνη στην οθόνη NOKIA 5110: Γεια σε όλους! Σε αυτήν την ενότητα κατασκευάζουμε απλή ηλεκτρονική συσκευή για την παρακολούθηση της θερμοκρασίας και του επιπέδου φωτός. Οι μετρήσεις αυτών των παραμέτρων εμφανίζονται στην οθόνη LCD NOKIA 5110. Η συσκευή βασίζεται στον μικροελεγκτή AVR ATMEGA328P. Η παρακολούθηση