การเชื่อมต่อ บอร์ด Arduino UNO R3 กับ LCD1602 i2C
อธิบาย LCD1602 I2C
LCD1602 เป็นจอแสดงผลคริสตัลเหลว (Liquid Crystal Display) ขนาดเล็ก
นิยมใช้กับโครงงานอิเล็กทรอนิกส์ต่าง ๆ เช่น Arduino หรือ Raspberry Pi โดยมีขนาด
16 ตัวอักษรต่อแถว และ 2 แถว ทำให้สามารถแสดงผลข้อความได้สูงสุด 2 บรรทัด
I2C คืออะไร ?
I2C (Inter-Integrated Circuit) เป็นโปรโตคอลการสื่อสารแบบอนุกรม
ที่ใช้ในการเชื่อมต่ออุปกรณ์อิเล็กทรอนิกส์ต่างๆ เข้าด้วยกัน โดยมีจุดเด่นคือใช้สายสัญญาณเพียง 2 เส้น
SDA และ SCL) ทำให้การเดินสายง่ายขึ้น และประหยัดพินของไมโครคอนโทรลเลอร์
LCD1602 I2C เป็น LCD1602 ที่มีการเพิ่มโมดูล I2C เข้ามา ทำให้สามารถสื่อสาร
กับไมโครคอนโทรลเลอร์ได้โดยตรงผ่านโปรโตคอล I2C โดยไม่ต้องใช้พินควบคุมจอ LCD
จำนวนมากเหมือนแบบทั่วไป ทำให้การเขียนโปรแกรมง่ายขึ้น และประหยัดพินของไมโครคอนโทรลเลอร์
ข้อดีของ LCD1602 I2C
เชื่อมต่อง่าย: ใช้สายสัญญาณเพียง 2 เส้น (SDA และ SCL)
ประหยัดพิน: ไม่ต้องใช้พินควบคุมจอ LCD จำนวนมาก
ใช้งานง่าย: มีไลบารีสำหรับควบคุมจอ LCD ผ่าน I2C พร้อมใช้งาน
สามารถต่อเชื่อมได้หลายจอ: สามารถต่อเชื่อม LCD1602 I2C ได้หลายจอเข้ากับไมโครคอนโทรลเลอร์ตัวเดียวกัน
การใช้งาน LCD1602 I2C
โดยทั่วไปการใช้งาน LCD1602 I2C จะประกอบด้วยขั้นตอนดังนี้
เชื่อมต่อจอ LCD เข้ากับ Arduino UNO R3 ผ่านสายสัญญาณ I2C
I2C module Arduino UNO R3
VCC ------> 5V Pin
GND ------> Ground Pin
SDA ------> A4 Pin
SCL ------> A5 Pin
ติดตั้งไลบารีสำหรับควบคุมจอ LCD ผ่าน I2C
ติดตั้งไลบรารี LiquidCrystal ให้ไปที่ Arduino IDE:
ไปที่เมนู Sketch > Include Library > Manage Libraries...
ค้นหา LiquidCrystal I2C และติดตั้ง
เขียนโปรแกรมเพื่อสั่งให้จอ LCD แสดงผล
//ตัวอย่างโค้ด
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
lcd.begin(16,2);
lcd.init();
lcd.backlight();
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Arduino UNO R3");
delay(3000);
lcd.setCursor(0,1);
lcd.print("LCD1602 I2C");
delay(3000);
}
void loop()
{
lcd.clear();
lcd.print("Hello World");
delay(5000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Welcome To Omit");
delay(3000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Arduino UNO R3 Board");
delay(5000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Please Subscribe!");
delay(5000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Thank You!");
delay(5000);
}
ความคิดเห็น
แสดงความคิดเห็น