autoworks24.com

1602 Module 16×2 LCD Display + I2C Interface

1602 Module 16×2 LCD Display + I2C Interface

1602 Module 16×2 LCD Display + I2C Interface ในโลกของการพัฒนาไมโครคอนโทรลเลอร์และการสร้างโปรเจกต์อิเล็กทรอนิกส์ การแสดงผลข้อมูลเป็นหนึ่งในฟังก์ชันสำคัญที่ช่วยให้ผู้ใช้สามารถโต้ตอบกับอุปกรณ์ได้อย่างมีประสิทธิภาพ หนึ่งในโมดูลแสดงผลที่ได้รับความนิยมมากที่สุดคือ 1602 Module 16×2 LCD Display โดยเฉพาะเมื่อรวมเข้ากับ I2C Interface ที่ช่วยลดความยุ่งยากในการเชื่อมต่อ บทความนี้จะอธิบายลักษณะการทำงาน องค์ประกอบ และข้อดีของโมดูลนี้อย่างละเอียด 1602 LCD Display คืออะไร 1602 LCD Display หรือ Character LCD 16×2 เป็นโมดูลแสดงผลอักขระชนิดคริสตัลเหลว (Liquid Crystal Display) ที่สามารถแสดงตัวอักษรได้ 32 ตัว พร้อมกัน โดยแบ่งเป็น 2 บรรทัด บรรทัดละ 16 ตัวอักษร แต่ละตัวอักษรประกอบด้วยจุด (dot) ขนาด 5×8 พิกเซล ซึ่งสามารถแสดงได้ทั้งตัวเลข ตัวอักษรภาษาอังกฤษ และสัญลักษณ์พื้นฐาน ข้อมูลจำเพาะทางกายภาพ  1602 Module 16×2 LCD Display + I2C Interface

จากข้อมูลของผู้ผลิต WINSTAR โมดูล LCD 1602 รุ่นมาตรฐาน (WH1602A) มีขนาดทางกายภาพดังนี้ ขนาดโมดูล 84.0 x 44.0 x 13.5 มม. พื้นที่แสดงผล 66.0 x 16.0 มม. ขนาดตัวอักษร 2.95 x 5.55 มม. ขนาดจุด 0.55 x 0.65 มม. ข้อกำหนดทางไฟฟ้า โมดูล 1602 LCD ทั่วไปใช้แรงดันไฟฟ้า 5V สำหรับการทำงานของวงจรลอจิก และสามารถทำงานได้ในช่วงอุณหภูมิ -20°C ถึง +70°C ค่ากระแสไฟฟ้าที่ใช้โดยทั่วไปอยู่ที่ประมาณ 1.0-1.5 mA ซึ่งถือว่าประหยัดพลังงานเหมาะสมกับการใช้งานในโปรเจกต์ขนาดเล็ก ปัญหาของการเชื่อมต่อแบบดั้งเดิม ในรูปแบบดั้งเดิม LCD 1602 ต้องการสายเชื่อมต่อจำนวนมากถึง 16 พิน ประกอบด้วย VSS, VDD, VO พินสำหรับจ่ายไฟและปรับความคมชัด RS, R/W, E พินควบคุมการทำงาน DB0-DB7 พินข้อมูล 8 เส้น A, K พินสำหรับไฟ Backlight การเชื่อมต่อด้วยสายจำนวนมากนี้สร้างปัญหาให้กับนักพัฒนาโดยเฉพาะเมื่อใช้ไมโครคอนโทรลเลอร์ที่มีพิน I/O จำกัด เช่น Arduino Uno หรือ ESP8266 การใช้พินมากถึง 6-10 เส้นสำหรับจอแสดงผลเพียงอย่างเดียวจะเหลือพินสำหรับเชื่อมต่อเซนเซอร์หรืออุปกรณ์อื่นน้อยลง นี่คือเหตุผลที่ I2C Interface กลายเป็นทางเลือกยอดนิยม

I2C Interface โซลูชันที่ช่วยลดสายเชื่อมต่อ

I2C (Inter-Integrated Circuit) เป็นโปรโตคอลการสื่อสารแบบอนุกรมที่พัฒนาโดย Philips Semiconductor (ปัจจุบันคือ NXP) ใช้สายเพียง 2 เส้นในการรับส่งข้อมูล SDA (Serial Data Line) สายส่งข้อมูล SCL (Serial Clock Line) สายส่งสัญญาณนาฬิกา การทำงานของ I2C Adapter โมดูล LCD 1602 ที่มาพร้อม I2C Interface จะมีวงจรแปลงสัญญาณติดตั้งอยู่ด้านหลังของจอ โดยทั่วไปจะใช้ชิป PCF8574 หรือ PCF8574T ซึ่งเป็น I/O expander ที่แปลงสัญญาณ I2C แบบอนุกรมให้เป็นสัญญาณขนาน (Parallel) ที่ LCD เข้าใจ ชิปตัวนี้ทำหน้าที่เสมือน นักแปล รับข้อมูลจากไมโครคอนโทรลเลอร์ผ่านสาย SDA/SCL เพียง 2 เส้น จากนั้นส่งข้อมูลไปยัง LCD ผ่านพินควบคุมทั้ง 6-8 เส้นที่จำเป็น ช่วยลดจำนวนสายเชื่อมต่อจาก 16 เหลือเพียง 4 เส้น ได้แก่ VCC, GND, SDA และ SCL I2C Address และการกำหนดค่า I2C Address อุปกรณ์ I2C แต่ละตัวต้องมี Address เฉพาะเพื่อให้ไมโครคอนโทรลเลอร์สามารถสื่อสารได้อย่างถูกต้อง สำหรับโมดูล I2C LCD 1602 ที่ใช้ชิป PCF8574 ค่า Address เริ่มต้น (Default Address) มักเป็น 0x27 หรือ 0x3F ขึ้นอยู่กับผู้ผลิตและวงจรที่ใช้

การปรับแต่ง Address บนแผงวงจร I2C Adapter มักจะมีจุดบัดกรี (Solder Pad) สำหรับปรับ Address ผ่านพิน A0, A1, A2 โดยในสถานะเริ่มต้นพินเหล่านี้จะถูกดึงให้มีค่าเป็น 1 หากต้องการเปลี่ยน Address ให้บัดกรีเชื่อมต่อพินดังกล่าวลงกราวนด์ (GND) เพื่อให้ได้ค่า 0 การปรับแต่งนี้ช่วยให้สามารถใช้โมดูล I2C หลายตัวบนบัสเดียวกันได้ โดยแต่ละตัวจะมี Address ที่ไม่ซ้ำกัน การปรับความคมชัด (Contrast) และ Backlight

  • ปุ่มปรับ Contrast

บนแผงวงจร I2C Adapter จะมี โพเทนชิโอมิเตอร์สีน้ำเงิน (Blue Potentiometer) สำหรับปรับความคมชัดของตัวอักษร การปรับทำได้โดยใช้ไขควงปากแบนหมุนตามเข็มนาฬิกาเพื่อเพิ่มความคมชัด หรือหมุนทวนเข็มนาฬิกาเพื่อลดความคมชัด หากจอแสดงผลไม่แสดงตัวอักษรหรือแสดงเป็นสี่เหลี่ยมทึบ ให้ทำการปรับโพเทนชิโอมิเตอร์นี้ก่อนการตรวจสอบสาเหตุอื่น

  • การควบคุม Backlight

โมดูล I2C LCD 1602 ส่วนใหญ่มี จัมเปอร์ (Jumper) สำหรับเปิด-ปิดไฟ Backlight หากต้องการเปิดไฟ Backlight ตลอดเวลา ให้เสียบจัมเปอร์ค้างไว้ หากต้องการปิดเพื่อประหยัดพลังงาน ให้ถอดจัมเปอร์ออก นอกจากนี้สามารถควบคุมการเปิด-ปิด Backlight ผ่านซอฟต์แวร์ได้โดยใช้คำสั่ง lcd.backlight() และ lcd.noBacklight() ในการเขียนโปรแกรม

ข้อดีของการใช้ I2C LCD 1602

ข้อดีของการใช้ I2C LCD 1602 ประหยัดพิน I/O ข้อได้เปรียบที่สำคัญที่สุดคือการใช้พินเพียง 2 เส้นสำหรับการสื่อสารข้อมูล (SDA และ SCL) บวกกับ VCC และ GND สำหรับจ่ายไฟ ทำให้เหลือพินสำหรับเชื่อมต่อเซนเซอร์และอุปกรณ์อื่นๆ มากขึ้น ลดความซับซ้อนของวงจร การต่อวงจรทำได้ง่ายและรวดเร็ว ลดโอกาสในการต่อสายผิดพลาด โดยเฉพาะสำหรับผู้เริ่มต้น รองรับการเชื่อมต่อหลายอุปกรณ์ ด้วยคุณสมบัติของ I2C ที่สามารถเชื่อมต่ออุปกรณ์ได้หลายตัวบนบัสเดียวกัน (โดยใช้ Address ต่างกัน) ทำให้สามารถเพิ่มเซนเซอร์หรือโมดูลอื่นๆ เข้าไปในระบบได้โดยไม่ต้องใช้พินเพิ่ม แรงดันไฟฟ้ากว้าง โมดูล I2C LCD 1602 รุ่นใหม่หลายรุ่นรองรับแรงดันไฟฟ้า 3.3V-5V ทำให้สามารถใช้งานร่วมกับไมโครคอนโทรลเลอร์ที่ใช้แรงดัน 3.3V เช่น ESP32, Raspberry Pi ได้โดยตรง ตัวอย่างการใช้งานกับ Arduino การใช้งาน I2C LCD 1602 กับ Arduino ทำได้ง่ายโดยใช้ไลบรารี LiquidCrystal_I2C ขั้นตอนเบื้องต้นมีดังนี้ การต่อวงจร เชื่อมต่อโมดูลเข้ากับ Arduino VCC → 5V (หรือ 3.3V สำหรับรุ่นที่รองรับ) GND → GND SDA → A4 (สำหรับ Arduino Uno) หรือ SDA pin SCL → A5 (สำหรับ Arduino Uno) หรือ SCL pin โค้ดตัวอย่าง

cpp

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); // กำหนด Address 0x27, 16×2

void setup() {

 lcd.init();  // เริ่มต้นการทำงานของ LCD

 lcd.backlight(); // เปิดไฟ Backlight

 lcd.setCursor(2, 0); // กำหนดตำแหน่ง cursor (คอลัมน์, บรรทัด)

 lcd.print(Hello World!);

 lcd.setCursor(1, 1);

 lcd.print(I2C LCD1602);

}

void loop() {

 // ไม่ต้องทำอะไร

}

ข้อควรระวังในการใช้งาน

ข้อควรระวังในการใช้งาน การตรวจสอบ Address ก่อนใช้งานควรตรวจสอบ Address I2C ที่แท้จริงของโมดูล โดยใช้โปรแกรม I2C Scanner เพื่อค้นหา การปรับ Contrast หากจอแสดงผลไม่ปรากฏตัวอักษร ให้หมุนโพเทนชิโอมิเตอร์บนโมดูลจนกว่าจะมองเห็นชัดเจน แรงดันไฟฟ้า ตรวจสอบให้แน่ใจว่าโมดูลรองรับแรงดันไฟฟ้าที่ใช้ (3.3V หรือ 5V) เพื่อป้องกันความเสียหาย ตัวต้านทาน Pull-up บัส I2C ต้องมีตัวต้านทาน Pull-up บนสาย SDA และ SCL โมดูลส่วนใหญ่มีติดตั้งมาให้แล้ว แต่หากไม่มีจำเป็นต้องต่อเพิ่ม โมดูล 1602 16×2 LCD Display ที่รวม I2C Interface ถือเป็นนวัตกรรมที่ช่วยยกระดับการพัฒนาโปรเจกต์อิเล็กทรอนิกส์ให้ง่ายขึ้น ด้วยการลดจำนวนสายเชื่อมต่อจาก 16 เหลือเพียง 4 สาย ทำให้การติดตั้งและการเขียนโปรแกรมเป็นไปอย่างสะดวกรวดเร็ว คุณสมบัติเด่น ได้แก่ การใช้ชิป PCF8574 ในการแปลงสัญญาณ I2C เป็นสัญญาณขนาน, การปรับ Contrast ด้วยโพเทนชิโอมิเตอร์, การควบคุม Backlight ผ่านจัมเปอร์ และความเข้ากันได้กับแรงดันไฟฟ้าทั้ง 3.3V และ 5V โมดูลนี้ได้รับความนิยมอย่างแพร่หลายในวงการเมคเกอร์และนักพัฒนา เนื่องจากช่วยประหยัดทรัพยากรพิน I/O ของไมโครคอนโทรลเลอร์ ทำให้สามารถเพิ่มเซนเซอร์หรืออุปกรณ์อื่นๆ ได้มากขึ้น จึงเหมาะอย่างยิ่งสำหรับโปรเจกต์ที่ต้องการแสดงผลข้อมูลพร้อมกับฟังก์ชันอื่นๆ อาทิ นาฬิกาดิจิทัล เครื่องวัดอุณหภูมิ ระบบควบคุมอัตโนมัติ และอุปกรณ์ IoT ต่างๆ

Arduino IDE, Arduino UNO คือ, Arduino โค้ด, Arduino โหลด, Arduino คือ, Arduino ต่อ Relay, Arduino บอร์ด, Sensor ตรวจจับวัตถุ Arduino, เขียน Arduino, เขียน Code Arduino, เซ็นเซอร์ Arduino, เซ็นเซอร์อุณหภูมิ Arduino, เรียน Arduino, โค้ด Arduino, โค้ด Arduino เซ็นเซอร์, โค้ด Arduino ง่ายๆ, โปรเจค Arduino เซ็นเซอร์อุณหภูมิ, โปรแกรม Arduino, โปรแกรม Arduino IDE, โปรแกรม Arduino UNO, ใช้ Arduino, กล้อง Arduino, ข้อมูล Arduino, ขาย Arduino, คู่มือ Arduino, ซอฟต์แวร์ Arduino, ซื้อ Arduino, ต่อ Arduino, ต่อ LCD กับ Arduino, นวัตกรรม Arduino, บอร์ด Arduino, ร้าน Arduino, ร้านขายอุปกรณ์อิเล็ค, วงจร Arduino, สอน Arduino, ออกแบบ Arduino, อุปกรณ์ Arduino, อุปกรณ์ Sensor Arduino

Human Detection

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *