กลับไปหน้ารวมไฟล์
display-temperature-and-humidity-on-lcd-786556.md

สภาพอากาศในห้อง: อุณหภูมิและความชื้นบนจอ LCD

โปรเจกต์ Temperature and Humidity LCD เป็นเหมือนพิธีเริ่มต้นสำหรับผู้เริ่มต้น Arduino ทุกคน มันช่วยให้ผู้สร้างเปลี่ยนจากการส่งข้อมูลดิบไปยัง Serial Monitor ที่มองไม่เห็น ไปเป็นการแสดงผลบนจอแสดงผลจริงแบบสแตนด์อะโลนที่สามารถวางบนโต๊ะได้

lcd_distance_sensor_sr04_view_1772706727668.png

โปรโตคอลแบบสายเดี่ยว

DHT11 (หรือ DHT22 ที่แม่นยำกว่า) ดูเหมือนเป็นส่วนประกอบ 3-pin ที่เรียบง่าย แต่มันมีไมโครโปรเซสเซอร์ขนาดเล็กของตัวเองอยู่ภายใน!

  • ต่างจาก Analog probe ที่ส่งออกแรงดันไฟฟ้าแบบแปรผัน DHT ใช้ Digital pulse train ที่เป็นกรรมสิทธิ์ของตัวเอง
  • เมื่อใช้ไลบรารี <DHT.h> Arduino จะส่งคำสั่งว่า "Send me the data."
  • เซ็นเซอร์ DHT จะส่งข้อมูลกลับมาเป็น Binary bits 40 บิต อย่างรวดเร็ว ซึ่งเข้ารหัสอุณหภูมิและความชื้นที่แม่นยำ ไลบรารีจะแยกวิเคราะห์ข้อมูลนี้ให้เป็น Floating-point numbers สองค่า: 24.5C และ 60.0%

การจัดรูปแบบจอแสดงผล LiquidCrystal

จอ LCD ขนาด 16x2 มาตรฐานต้องใช้ 6 Data pins (RS, EN, D4, D5, D6, D7) ขอแนะนำอย่างยิ่งให้ใช้ I2C backpack เพื่อลดจำนวนสายไฟเหลือเพียง 2 wiring pins!

  • Arduino จะต้องจัดรูปแบบหน้าจออย่างแม่นยำเพื่อป้องกันการเกิด Ghosting
  • แถวที่ 1: lcd.setCursor(0,0); lcd.print("Temp: 24.5 C");
  • แถวที่ 2: lcd.setCursor(0,1); lcd.print("Humidity: 60 %");
  • เคล็ดลับสำคัญ: คุณต้องอัปเดตหน้าจอทุกๆ 2000 มิลลิวินาทีเท่านั้น (delay(2000);) เซ็นเซอร์ DHT11 ทางกายภาพทำงานช้ามาก และจะ Crash หากคุณเรียกขอข้อมูลอุณหภูมิมันหลายล้านครั้งต่อวินาที

สิ่งที่ต้องใช้

  • Arduino Uno/Nano
  • DHT11 or DHT22 Sensor
  • 16x2 LCD Display (แนะนำอย่างยิ่งให้มี I2C Module)

ข้อมูล Frontmatter ดั้งเดิม

title: "Display Temperature and Humidity on LCD"
description: "The classic weather station! Safely wire a DHT11 sensor and output real-time room climate data onto a 16x2 Text LCD without flickering."
category: "Sensors & Environment"
difficulty: "Easy"