สารบัญ:
- ขั้นตอนที่ 1: โมดูลกราฟิก LCD 128x128 RGB TFT ILI 9163C
- ขั้นตอนที่ 2: เซ็นเซอร์ความชื้นและอุณหภูมิ AM2302 DHT22
- ขั้นตอนที่ 3: วงจร
- ขั้นตอนที่ 4: การประกอบ
- ขั้นตอนที่ 5: ห้องสมุด
- ขั้นตอนที่ 6: รหัส
- ขั้นตอนที่ 7: ฟังก์ชั่นที่น่าสนใจอื่นๆ
วีดีโอ: ESP8266 เทอร์โมมิเตอร์ดิจิตอลพร้อมจอ LCD: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
วันนี้ ผมจะแสดงวิธีการใช้จอแสดงผล 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 เชื่อมต่อกับ Data และตัวต้านทานแบบดึงขึ้นกับ ESP8266 ซึ่งควบคุมจอแสดงผล LCD
ขั้นตอนที่ 4: การประกอบ
ที่นี่ เรามีไดอะแกรมไฟฟ้าของชุดประกอบ ซึ่งแสดง NodeMCU เซ็นเซอร์ และจอแสดงผล จำไว้ว่านี่คือจอแสดงผลแบบอนุกรม i2c ซึ่งใช้งานง่ายกว่าเพราะมีพินมากกว่า
ขั้นตอนที่ 5: ห้องสมุด
เนื่องจากเราจะตั้งโปรแกรมการแสดงผลด้วยภาษา Arduino C เราจึงต้องการไลบรารี DHT22 เช่นเดียวกับ LCD
ขั้นแรก เพิ่มไลบรารี "ไลบรารีเซ็นเซอร์ DHT" ต่อไปนี้สำหรับการสื่อสารกับเซ็นเซอร์ความชื้นและอุณหภูมิ
เพียงเข้าไปที่ "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 เซ็นเซอร์ de umidade e อุณหภูมิ
คำจำกัดความ
เราจะเห็นด้านล่างของตัวแปรที่เราจะใช้ระหว่างโปรแกรมและอินสแตนซ์ของวัตถุ
#define DHTPIN D6 // pino que conectaremos o เซ็นเซอร์ DHT22#define DHTTYPE DHT22 // DHT22 é o tipo do เซ็นเซอร์ que utilizaremos (ตัวสร้างที่สำคัญ) DHT dht (DHTPIN, DHTTYPE); // คอนสตรัคเตอร์ทำ 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 WFFFFF81F #define YELLOW กำหนด _CS D1 // pino que conectaremos o CS do módulo LCD #define _DC D4 // pino que conectaremos o RS สำหรับโมดูล LCD TFT_ILI9163C display = TFT_ILI9163C(_CS, _DC); // Constructor do objeto que utilizaremos para se comunicar com o โมดูโล LCD
ติดตั้ง
ในฟังก์ชันการตั้งค่า () เราเริ่มต้นตัวแปร "dht" ซึ่งมีหน้าที่ในการสื่อสารกับเซ็นเซอร์ความชื้นและอุณหภูมิ นอกจากนี้ เราจะเริ่มต้นตัวแปร "การแสดงผล" ที่ใช้ในการสื่อสารกับโมดูล LCD ด้วย
เราจะกำหนดค่าวัตถุให้เริ่มวาดบนหน้าจอด้วย
การตั้งค่าเป็นโมฆะ (เป็นโมฆะ) { dht.begin(); // เริ่มต้นสำหรับ comunicar com o เซ็นเซอร์ display.begin(); // เริ่มต้นสำหรับ comunicar com หรือโมดูล LCD display.clearScreen(); // ลบเป็น tela ลบ todos ระบบปฏิบัติการ desenhos display.fillScreen(BLACK); // pinta a tela toda de preto display.setTextSize(2); // configura o tamanho do texto com o tamanho 2 display.setTextColor (สีเขียว); // กำหนดค่า a cor do texto como verde display.setCursor(5, 10); // posiciona o เคอร์เซอร์ para começar a escrita a partir do (x, y) display.print("TEMPERATUR"); // escreve em tela display.setCursor(22, 70); // reposiciona หรือเคอร์เซอร์ display.print ("UMIDADE"); // escreve em tela display.setTextColor(WHITE); // กำหนดค่า a cor do texto como branco (a partir de agora) ล่าช้า (1000); // espera ของ 1 segundo }
ห่วง
ในฟังก์ชันวนรอบ () เราจะดึงความชื้นและอุณหภูมิที่เซ็นเซอร์อ่านและเขียนไว้บนหน้าจอในตำแหน่งเฉพาะ ในแต่ละช่วงเวลา 5 วินาที ค่าจะถูกอ่านจากเซ็นเซอร์และเขียนบนหน้าจอ
วงเป็นโมฆะ () { 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 utilizando o método “fillRect”, são para fazer a limpeza do local onde escreveremos a umidade e a temperatura, apagaremos o valor atualment para escrualizadodo. display.fillRect (5, 32, 120, 20, สีดำ); // fillRect(x, y, ความกว้าง, ความสูง, สี); display.fillRect (5, 92, 120, 20, สีดำ); display.setCursor(40, 35); // reposiciona หรือเคอร์เซอร์สำหรับ escrever display.print(t); // หลีกเลี่ยงอุณหภูมิ display.print ((ถ่าน) 247); // escreve o símbolo de grau ° através de código display.print("C"); // coloca o “C” สำหรับ indicar que é graus Celcius display.setCursor(40, 95); // reposiciona หรือเคอร์เซอร์สำหรับ escrever display.print(h); // หลีกเลี่ยง umidade em tela display.print("%"); // escreve o símbolo de “porcentagem” สำหรับ indicar a umidade delay(5000); }
ขั้นตอนที่ 7: ฟังก์ชั่นที่น่าสนใจอื่นๆ
// หมุนเนื้อหาของหน้าจอ (พารามิเตอร์ 0, 1, 2 หรือ 3)
display.setRotation (uint8_t);
// กลับสีที่แสดง (ทำให้เป็นค่าลบ)
display.invertDisplay (บูลีน);
// วาดพิกเซลเดียวบนหน้าจอที่ตำแหน่ง (x, y)
display.drawPixel (x, y, สี);
// ลากเส้นแนวตั้งในตำแหน่ง
display.drawFastVLine (x, y, ความกว้าง, สี);
// ลากเส้นแนวตั้งที่ตำแหน่งที่กำหนด
display.drawFastHLine (x, y, ความกว้าง, สี);
// ลากเส้นแนวนอนที่ตำแหน่งที่กำหนด
display.drawRect (x, y, ความกว้าง, ความสูง, สี);
// วาดวงกลมในตำแหน่งที่กำหนด
display.drawCircle (x, y, รัศมี, สี);
แนะนำ:
LCD Invaders: Space Invaders Like Game บนจอแสดงผล LCD ขนาด 16x2: 7 ขั้นตอน
LCD Invaders: Space Invaders Like Game บนจอแสดงผล LCD ขนาด 16x2: ไม่จำเป็นต้องแนะนำเกม "Space Invaders" ในตำนาน คุณลักษณะที่น่าสนใจที่สุดของโครงการนี้คือการใช้การแสดงข้อความสำหรับการแสดงผลแบบกราฟิก ทำได้โดยใช้อักขระที่กำหนดเอง 8 ตัว คุณสามารถดาวน์โหลด Arduino
Arduino LCD 16x2 บทช่วยสอน - การเชื่อมต่อจอแสดงผล LCD 1602 กับ Arduino Uno: 5 ขั้นตอน
Arduino LCD 16x2 บทช่วยสอน | การเชื่อมต่อจอแสดงผล LCD 1602 กับ Arduino Uno: สวัสดีทุกคนเนื่องจากหลายโครงการต้องการหน้าจอเพื่อแสดงข้อมูลไม่ว่าจะเป็นมิเตอร์แบบ DIY หรือการแสดงจำนวนการสมัคร YouTube หรือเครื่องคิดเลขหรือล็อคปุ่มกดพร้อมจอแสดงผลและหากโครงการประเภทนี้ทั้งหมดถูกสร้างขึ้นด้วย Arduino พวกเขาจะกำหนด
จอ LCD I2C / IIC - ใช้ SPI LCD กับจอแสดงผล LCD I2C โดยใช้โมดูล SPI เป็น IIC กับ Arduino: 5 ขั้นตอน
จอ LCD I2C / IIC | ใช้ SPI LCD กับจอแสดงผล LCD I2C โดยใช้โมดูล 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 Display: การใช้จอแสดงผล spi lcd จำเป็นต้องมีการเชื่อมต่อมากเกินไป ซึ่งทำได้ยากมาก ดังนั้นฉันจึงพบโมดูลที่สามารถแปลง i2c lcd เป็น spi lcd ได้ ดังนั้นมาเริ่มกันเลย
SENSOR SUHU DENGAN LCD DAN LED (สร้างเซ็นเซอร์อุณหภูมิด้วย LCD และ LED): 6 ขั้นตอน (พร้อมรูปภาพ)
SENSOR SUHU DENGAN LCD DAN LED (การทำเซ็นเซอร์อุณหภูมิด้วย LCD และ LED): hai, saya Devi Rivaldi mahasiswa UNIVERSITAS NUSA PUTRA dari Indonesia, di sini saya akan berbagi cara membuat sensor suhu menggunakan Arduino dengan Output ke LCD และ LED. Ini adalah pembaca suhu dengan desain saya sendiri, dengan sensor ini anda… เพิ่มเติม