วิธีแสดงการอ่านค่าเซ็นเซอร์บนจอ LCD 16x2
ในฐานะซัพพลายเออร์ของจอแสดงผล LCD ขนาด 16x2 ฉันมักจะพบลูกค้าที่สนใจใช้จอแสดงผลของเราเพื่อแสดงค่าที่อ่านได้จากเซ็นเซอร์ ในบล็อกโพสต์นี้ ฉันจะแนะนำคุณตลอดขั้นตอนการแสดงค่าที่อ่านได้จากเซ็นเซอร์บน LCD ขนาด 16x2 ตั้งแต่การทำความเข้าใจส่วนประกอบพื้นฐานไปจนถึงการเขียนโค้ด
การทำความเข้าใจพื้นฐาน
ก่อนที่เราจะเริ่ม มาทำความเข้าใจองค์ประกอบหลักสองส่วนที่เกี่ยวข้องกันก่อน: เซ็นเซอร์และจอแสดงผล LCD ขนาด 16x2
เซ็นเซอร์เป็นอุปกรณ์ที่ตรวจจับและตอบสนองต่ออินพุตบางประเภทจากสภาพแวดล้อมทางกายภาพ ข้อมูลเข้าอาจเป็นแสง ความร้อน การเคลื่อนไหว ความชื้น ความดัน หรือปรากฏการณ์สิ่งแวดล้อมอื่นๆ จำนวนมาก โดยทั่วไปเอาต์พุตจะเป็นสัญญาณที่ถูกแปลงเป็นจอแสดงผลที่มนุษย์สามารถอ่านได้โดยใช้หน่วยแสดงผล เช่น LCD 16x2 ของเรา


ตามชื่อจอแสดงผล LCD ขนาด 16x2 สามารถแสดงอักขระได้ 16 ตัวต่อบรรทัดและมี 2 บรรทัดดังกล่าว เป็นตัวเลือกยอดนิยมสำหรับหลายโครงการเนื่องจากความเรียบง่าย ต้นทุนต่ำ และใช้งานง่าย
การเชื่อมต่อฮาร์ดแวร์
ขั้นตอนแรกคือการเชื่อมต่อเซ็นเซอร์และจอแสดงผล LCD 16x2 เข้ากับไมโครคอนโทรลเลอร์ของคุณ สำหรับวัตถุประสงค์ของคู่มือนี้ เราจะถือว่าคุณกำลังใช้ Arduino ซึ่งเป็นแพลตฟอร์มอิเล็กทรอนิกส์แบบโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลาย
-
เชื่อมต่อจอ LCD 16x2 เข้ากับ Arduino-
- VSS: เชื่อมต่อกับ GND บน Arduino
- วีดีดี: เชื่อมต่อกับ 5V บน Arduino
- V0: เชื่อมต่อกับพินตรงกลางของโพเทนชิออมิเตอร์ โพเทนชิออมิเตอร์อีกสองพินเชื่อมต่อกับ 5V และ GND ใช้เพื่อปรับคอนทราสต์ของจอ LCD
- อาร์เอส: เชื่อมต่อกับพินดิจิทัลบน Arduino (เช่น พิน 12)
- รว: เชื่อมต่อกับ GND ใช้เพื่ออ่านจากจอ LCD แต่เราจะเขียนลงไปเท่านั้น จึงสามารถต่อสายดินได้
- และ: เชื่อมต่อกับพินดิจิทัลบน Arduino (เช่น พิน 11)
- D4 - D7: เชื่อมต่อกับพินดิจิทัลบน Arduino (เช่น พิน 5 - 8)
- ก: เชื่อมต่อกับ 5V ผ่านตัวต้านทาน 220 โอห์ม นี่คือขั้วบวกของแบ็คไลท์
- เค: เชื่อมต่อกับ GND นี่คือแคโทดแบ็คไลท์
-
เชื่อมต่อเซ็นเซอร์กับ Arduino-
การเชื่อมต่อของเซ็นเซอร์ขึ้นอยู่กับประเภทของเซ็นเซอร์ ตัวอย่างเช่น หากคุณใช้เซ็นเซอร์อุณหภูมิเช่น DHT11 คุณจะต้องเชื่อมต่อ VCC ของมันกับ 5V, GND กับ GND และพินข้อมูลเข้ากับพินดิจิทัลบน Arduino (เช่น พิน 2)
การตั้งค่าซอฟต์แวร์
เมื่อเชื่อมต่อฮาร์ดแวร์แล้ว ก็ถึงเวลาเขียนโค้ดเพื่อแสดงการอ่านเซ็นเซอร์บน LCD
ขั้นแรก คุณจะต้องติดตั้งไลบรารีที่จำเป็น สำหรับ LCD ขนาด 16x2 คุณสามารถใช้ไลบรารี LiquidCrystal ซึ่งได้รับการติดตั้งมาพร้อมกับ Arduino IDE ไว้ล่วงหน้า หากคุณใช้เซ็นเซอร์ DHT11 คุณจะต้องติดตั้งไลบรารีเซ็นเซอร์ DHT
#include <LiquidCrystal.h> #include <DHT.h> // เริ่มต้นไลบรารี LCD ด้วยหมายเลขของหมุดอินเทอร์เฟซ LiquidCrystal lcd (12, 11, 5, 6, 7, 8); // เริ่มต้นเซ็นเซอร์ DHT #กำหนด DHTPIN 2 #กำหนด DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); การตั้งค่าเป็นโมฆะ () { // ตั้งค่าจำนวนคอลัมน์และแถวของ LCD: lcd.begin (16, 2); dht.begin(); // พิมพ์ข้อความไปยังจอ LCD lcd.print("การอ่านเซ็นเซอร์"); - void loop() { // รอสักครู่ระหว่างการวัด ล่าช้า (2000); // อ่านอุณหภูมิหรือความชื้นใช้เวลาประมาณ 250 มิลลิวินาที! // การอ่านเซ็นเซอร์อาจ 'เก่า' นานถึง 2 วินาที (เป็นเซ็นเซอร์ที่ช้ามาก) float h = dht.readHumidity(); // อ่านอุณหภูมิเป็นเซลเซียส (ค่าเริ่มต้น) float t = dht.readTemperature(); // ตรวจสอบว่าการอ่านล้มเหลวและออกก่อนเวลาหรือไม่ (เพื่อลองอีกครั้ง) ถ้า (isnan (h) || isnan (t)) { lcd.setCursor (0, 1); lcd.print("อ่านล้มเหลว!"); กลับ; - // ล้างหน้าจอ lcd.clear(); จอแอลซีดี setCursor (0, 0); lcd.print("อุณหภูมิ: "); จอแอลซีดีพิมพ์(t); จอแอลซีดีพิมพ์("C"); จอแอลซีดี setCursor (0, 1); lcd.print("ความชื้น: "); จอแอลซีดีพิมพ์(h); จอแอลซีดีพิมพ์(" %"); -
ในโค้ดนี้ เราจะรวมไลบรารีที่จำเป็นก่อน จากนั้นเราเริ่มต้นจอ LCD และเซ็นเซอร์ DHT ในการตั้งค่า()ฟังก์ชั่นเราตั้งค่า LCD และเริ่มเซ็นเซอร์ ในวนซ้ำ()ฟังก์ชั่นเราอ่านอุณหภูมิและความชื้นจากเซ็นเซอร์ทุกๆ 2 วินาที หากการอ่านสำเร็จ เราจะล้างจอ LCD และแสดงค่าอุณหภูมิและความชื้น
การแก้ไขปัญหา
หากคุณมีปัญหาในการอ่านค่าเซ็นเซอร์เพื่อแสดงบน LCD ต่อไปนี้คือปัญหาและวิธีแก้ปัญหาทั่วไปบางประการ:
-
ไม่มีการแสดงผลบนจอ LCD-
- ตรวจสอบคอนทราสต์: ปรับโพเทนชิออมิเตอร์ที่เชื่อมต่อกับพิน V0 จนกว่าคุณจะเห็นตัวอักษรบน LCD
- ตรวจสอบพาวเวอร์ซัพพลาย: ตรวจสอบให้แน่ใจว่าเชื่อมต่อ LCD กับ 5V และ GND อย่างถูกต้อง
- ตรวจสอบการเชื่อมต่อพิน: ตรวจสอบอีกครั้งว่าพินทั้งหมดระหว่าง LCD และ Arduino เชื่อมต่ออย่างถูกต้อง
-
การอ่านเซ็นเซอร์ไม่ถูกต้อง-
- ตรวจสอบการเชื่อมต่อเซ็นเซอร์: ตรวจสอบให้แน่ใจว่าเซ็นเซอร์เชื่อมต่อกับ Arduino อย่างถูกต้อง
- ตรวจสอบไลบรารีเซ็นเซอร์: ตรวจสอบให้แน่ใจว่าคุณใช้ไลบรารีที่ถูกต้องสำหรับเซ็นเซอร์ของคุณ และติดตั้งอย่างถูกต้อง
ตัวเลือกจอแสดงผล LCD อื่น ๆ
นอกจากจอแสดงผล LCD ขนาด 16x2 ของเราแล้ว เรายังนำเสนอผลิตภัณฑ์จอภาพอื่นๆ ที่หลากหลาย เช่นจอแสดงผล VA ตัวอักษร Cog Dot 128*64-ฟันเฟือง LCD 12840 โมดูล St7565r, และโมดูลและอุปกรณ์เสริมในการแสดงผลกราฟิก LCD- ผลิตภัณฑ์เหล่านี้มีคุณสมบัติและข้อมูลจำเพาะที่แตกต่างกันเพื่อตอบสนองความต้องการเฉพาะของคุณ
หากคุณสนใจผลิตภัณฑ์ของเราหรือมีคำถามใดๆ เกี่ยวกับการแสดงค่าการอ่านเซ็นเซอร์บนจอ LCD โปรดอย่าลังเลที่จะติดต่อเราเพื่อขอจัดซื้อจัดจ้างและเจรจาเพิ่มเติม เรามีทีมงานมืออาชีพที่พร้อมช่วยเหลือคุณในการค้นหาโซลูชั่นที่ดีที่สุดสำหรับโครงการของคุณ
อ้างอิง
- เอกสาร Arduino: https://www.arduino.cc/en/Reference/HomePage
- เอกสารประกอบไลบรารีเซ็นเซอร์ DHT
- เอกสารประกอบไลบรารี LiquidCrystal