
การพัฒนางานด้วย ESP32 ซึ่งเป็นไมโครคอนโทรลเลอร์ที่ทรงพลังและยืดหยุ่น สามารถช่วยให้งานของคุณสะดวกขึ้น โดยเฉพาะเมื่อใช้งานร่วมกับจอ LCD ผ่านการเชื่อมต่อแบบ I2C วันนี้เราจะมาแนะนำวิธีการตั้งค่าและการเขียนโค้ดเพื่อใช้งาน LCD แบบ I2C บน ESP32 อย่างละเอียด
1. การเชื่อมต่อฮาร์ดแวร์
จากแผนภาพที่แสดง การเชื่อมต่อระหว่าง ESP32 กับจอ LCD มีดังนี้:
- VIN (5V) จาก ESP32 -> VCC ของจอ LCD
- GND จาก ESP32 -> GND ของจอ LCD
- D21 จาก ESP32 -> SDA ของจอ LCD
- D22 จาก ESP32 -> SCL ของจอ LCD
หมายเหตุ: การเชื่อมต่อนี้อ้างอิงตามการตั้งค่าขา I2C มาตรฐานของ ESP32 หากคุณเปลี่ยนขา I2C จะต้องแก้ไขโค้ดให้ตรงกับการเชื่อมต่อใหม่
2. ไลบรารีที่ต้องใช้
คุณจะต้องติดตั้งไลบรารีสองตัวดังนี้:
- Wire.h – ใช้สำหรับการสื่อสารกับอุปกรณ์ I2C
- LiquidCrystal_I2C.h – ใช้ควบคุมจอ LCD แบบ I2C
คุณสามารถติดตั้งไลบรารีเหล่านี้ผ่าน Arduino IDE โดยไปที่ Tools > Manage Libraries แล้วค้นหาไลบรารีที่ต้องการ
3. ตัวอย่างโค้ด
ด้านล่างเป็นตัวอย่างโค้ดที่ใช้ควบคุมจอ LCD:
#include <Wire.h> // เรียกใช้ไลบรารี Wire เพื่อสื่อสารกับอุปกรณ์ I2C
#include <LiquidCrystal_I2C.h> // เรียกใช้ไลบรารี LiquidCrystal_I2C สำหรับควบคุมจอ LCD แบบ I2C
// ตั้งค่าที่อยู่ของ LCD เป็น 0x27 (หรือ 0x3F) สำหรับจอขนาด 16 ตัวอักษรใน 2 แถว
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup()
{
// เริ่มต้นการใช้งานจอ LCD
lcd.begin();
// เปิดไฟ backlight และพิมพ์ข้อความ
lcd.backlight(); // เปิดไฟ backlight ของจอ LCD
lcd.setCursor(0, 0); // ตั้งตำแหน่งตัวอักษรไปที่ตำแหน่งแรกของแถวแรก
lcd.print("Welcome To"); // พิมพ์ข้อความ "Welcome To" บนแถวแรกของจอ LCD
lcd.setCursor(7, 1); // ตั้งตำแหน่งตัวอักษรไปที่ตำแหน่งที่ 7 ของแถวที่สอง
lcd.print("Damrong"); // พิมพ์ข้อความ "Damrong" บนแถวที่สองของจอ LCD
}
void loop() {
// ไม่มีการกระทำในฟังก์ชัน loop สำหรับโค้ดนี้
}
4. การทำงานของโค้ด
- ตั้งค่าที่อยู่ I2C: ในตัวอย่างนี้เราใช้ที่อยู่
0x27ซึ่งเป็นค่าที่อยู่ทั่วไปของโมดูล I2C LCD หากโมดูลของคุณใช้ที่อยู่อื่น ให้เปลี่ยนให้ตรงกับอุปกรณ์ของคุณ - ตั้งค่าขนาดจอ LCD: ตัวอย่างนี้ตั้งค่าขนาดจอ LCD เป็น 16 คอลัมน์ และ 2 แถว
- การแสดงข้อความ:
- บรรทัดแรก (
lcd.setCursor(0, 0)) พิมพ์ข้อความ “Welcome To” - บรรทัดที่สอง (
lcd.setCursor(7, 1)) พิมพ์ข้อความ “Damrong”
- บรรทัดแรก (
5. คำแนะนำเพิ่มเติม
- หากจอ LCD ไม่แสดงผล ลองตรวจสอบที่อยู่ I2C ของโมดูล LCD โดยใช้ I2C Scanner (โค้ด Scanner หาได้จากอินเทอร์เน็ต)
- ระวังการเชื่อมต่อผิดขั้ว เช่น VCC และ GND เพื่อป้องกันความเสียหายต่ออุปกรณ์
สรุป
การใช้งาน ESP32 ร่วมกับจอ LCD ผ่าน I2C นั้นช่วยลดจำนวนสายที่ต้องเชื่อมต่อและทำให้ง่ายต่อการพัฒนาโปรเจกต์ นอกจากนี้ คุณยังสามารถประยุกต์ใช้งานได้หลากหลาย เช่น การแสดงผลข้อความหรือข้อมูลเซ็นเซอร์ในโปรเจกต์ IoT
หวังว่าบทความนี้จะช่วยให้คุณสามารถเริ่มต้นใช้งาน ESP32 กับจอ LCD ได้ง่ายขึ้น! 😊
หากมีคำถามหรือปัญหาเพิ่มเติม สามารถแสดงความคิดเห็นใต้บทความเพื่อพูดคุยและสอบถามได้!



