ทำไมต้องใช้ I2C BUS โดยปกติแล้วจอมีการส่งคำสั่งเป็นมาตราฐานอยู่แล้วแต่ต้องใช้สายจำนวนมาก(Parallel) เพื่อส่งชุดคำสั่งการนำ I2C BUS มาใช้จะเป็นการเปลี่ยนรูปแบบการส่งข้อมูล แต่ยังใช้ชุดคำสั่งเดิมอยู่ทำให้ไม่ต้องใช้สายเพื่อส่งข้อมูลเยอะเหมือนเดิม
ตัวอย่าง I2C BUS สามารถปรับความสว่างโดยการหมุนน๊อตในกรอบสี่เหลี่ยมเล็ก
สิ่งที่ต้องเตรียม
Arduino uno ราคาประมาณ 200-300 บาท
LCD ที่มี I2C BUSติดมาให้ ขนาด 16x4 หรือใกล้เคียงกัน ราคาประมาณ 200 บาท
Library Arduino-LiquidCrystal-I2C
การวางวงจร LCD GND >> GND Aduino
LCD VCC >> 5v Aduino
LCD SDA >> SDA aduino
LCD SCL >> SCL arduino
คำสั่ง
โค้ด: เลือกทั้งหมด
#include <Wire.h> //เรียกใช้ไรบรารี่ wire
#include <LiquidCrystal_I2C.h> //เรียกใช้ไรบารี LiquidCrystal_I2C
LiquidCrystal_I2C lcd(0x27, 16, 2); #กำหนดช่อง ช่องสัญญาณ,จำนวนตัวอักษร/แถว,จำนวน
void setup() //กำหนดค่าเริ่มต้น
{
lcd.begin(); //เริ่มการทำงานจอ lcd
lcd.setCursor(0, 0); //ตั้งให้แสดงผลที่บรรทัดที่1
lcd.print("Hello MindPhp"); //แสดงผลข้อความ
lcd.setCursor(0, 1); //ตั้งให้แสดงผลที่บรรทัดที่2
lcd.print("I'm Arduino"); //แสดงผลข้อความ
}
https://www.mindphp.com//forums/viewtop ... 15&t=61980