แนะนำการใช้จอ LCD ร่วมกับ Arduino

Post a reply

Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: แนะนำการใช้จอ LCD ร่วมกับ Arduino

แนะนำการใช้จอ LCD ร่วมกับ Arduino

by puopun.p » 09/07/2016 2:56 pm

ในบทความนี้จะสอนการต่อจอ LCD ขนาด 16x2 โดยจะเชื่อมต่อกับบอร์ด I2C BUS มาแทนแบบเดิมต้องใช้สายต่อถึง16สาย ซึ่งจะช่วยให้ประหยัดสาย อีกทั้งช่วยลดความซับซ้อนของวงจร
ทำไมต้องใช้ I2C BUS โดยปกติแล้วจอมีการส่งคำสั่งเป็นมาตราฐานอยู่แล้วแต่ต้องใช้สายจำนวนมาก(Parallel) เพื่อส่งชุดคำสั่งการนำ I2C BUS มาใช้จะเป็นการเปลี่ยนรูปแบบการส่งข้อมูล แต่ยังใช้ชุดคำสั่งเดิมอยู่ทำให้ไม่ต้องใช้สายเพื่อส่งข้อมูลเยอะเหมือนเดิม
ตัวอย่าง I2C BUS
i2c.jpg
i2c.jpg (43.41 KiB) Viewed 1373 times
สามารถปรับความสว่างโดยการหมุนน๊อตในกรอบสี่เหลี่ยมเล็ก

สิ่งที่ต้องเตรียม
Arduino uno ราคาประมาณ 200-300 บาท
LCD ที่มี I2C BUSติดมาให้ ขนาด 16x4 หรือใกล้เคียงกัน ราคาประมาณ 200 บาท
Library Arduino-LiquidCrystal-I2C
การวางวงจร
adrdu.jpg
adrdu.jpg (64.48 KiB) Viewed 1373 times
รูปขนาดใหญ่
lcd.jpg
lcd.jpg (28.24 KiB) Viewed 1373 times
LCD GND >> GND Aduino
LCD VCC >> 5v Aduino
LCD SDA >> SDA aduino
LCD SCL >> SCL arduino

คำสั่ง

Code: Select all

#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");  //แสดงผลข้อความ
}

Top