مقدمه
در دنیای پروژههای الکترونیک، نمایشگرها نقش مهمی در نمایش دادهها دارند. تصور کنید شما یک ربات ساختهاید و میخواهید دمای محیط، سرعت موتور یا حتی وضعیت حسگرها را روی یک صفحه نمایش دهید. سادهترین انتخاب برای این کار، LCD کاراکتری ۱۶x۲ یا ۲۰x۴ است.
این نمایشگرها ارزانقیمت، در دسترس و بسیار پرکاربرد هستند. اما یک مشکل دارند: برای راهاندازی مستقیم (بدون I2C) به تعداد زیادی پایه دیجیتال آردوینو نیاز دارند. به عنوان مثال یک LCD معمولی ۱۶x۲ در حالت موازی حداقل ۶ تا ۱۰ پین از آردوینو را اشغال میکند. این موضوع وقتی دردسرساز میشود که شما چندین سنسور و ماژول دیگر هم دارید.
اینجاست که ماژول I2C وارد ماجرا میشود. با استفاده از I2C شما فقط با دو سیم (SDA و SCL) میتوانید LCD را راهاندازی کنید. همین ویژگی باعث شده استفاده از ماژول I2C در کنار LCD به یک استاندارد تبدیل شود.

I2C چیست و چرا استفاده میکنیم؟
I2C (Inter-Integrated Circuit) یک پروتکل ارتباطی سریال است که توسط فیلیپس توسعه داده شد. این پروتکل برای برقراری ارتباط بین میکروکنترلر و سنسورها یا ماژولها استفاده میشود.

ویژگیهای اصلی I2C:
فقط دو سیم نیاز دارد (SDA و SCL).
میتواند چندین دستگاه را به صورت همزمان مدیریت کند.
آدرسدهی ساده دارد (هر ماژول یک آدرس منحصربهفرد دارد).
سرعت بالا و استفاده گسترده در پروژههای آردوینو.
بنابراین وقتی شما یک LCD کاراکتری را به کمک I2C راهاندازی کنید، تنها با دو پین از آردوینو سر و کار دارید و دیگر نیازی به اشغال شدن تعداد زیادی پین نیست.
وسایل لازم برای پروژه
برای این آموزش به وسایل زیر نیاز دارید:
برد آردوینو (Uno, Mega یا Nano) – (ترجیحاً Uno برای شروع)
LCD کاراکتری 16x2 یا 20x4 – برای نمایش دادهها
ماژول I2C مخصوص LCD – ماژول کوچکی که پشت LCD نصب میشود
برد بورد (Breadboard) – برای اتصال آسان
سیم جامپر (Jumper Wire) – سیمهای نری-نری یا نری-مادگی
منبع تغذیه (۵ ولت از خود آردوینو یا آداپتور)
نحوه سیمکشی LCD با I2C
ماژول I2C معمولاً به صورت مستقیم روی پینهای LCD لحیم میشود. بعد از اتصال ماژول به LCD، چهار پایه اصلی روی آن قرار دارد:
VCC → به ۵ ولت آردوینو
GND → به زمین (GND) آردوینو
SDA → به پایه A4 در آردوینو Uno (یا پایه ۲۰ در Mega)
SCL → به پایه A5 در آردوینو Uno (یا پایه ۲۱ در Mega)
دیاگرام اتصال:
LCD I2C → Arduino Uno VCC → 5V GND → GND SDA → A4 SCL → A5
نکته: در آردوینو Mega و Leonardo پایههای SDA و SCL جداگانه وجود دارند. همیشه دیتاشیت برد خود را بررسی کنید.
نصب کتابخانههای مورد نیاز
برای اینکه آردوینو بتواند با LCD از طریق I2C ارتباط برقرار کند، باید کتابخانههای زیر را نصب کنید:
LiquidCrystal_I2C
Wire (به صورت پیشفرض در آردوینو نصب است)
مراحل نصب کتابخانه:
وارد Arduino IDE شوید.
از منوی Sketch → Include Library → Manage Libraries استفاده کنید.
عبارت
LiquidCrystal I2Cرا جستجو کنید.آخرین نسخه را نصب کنید.
آدرس I2C
هر ماژول I2C یک آدرس مخصوص دارد (معمولاً 0x27 یا 0x3F). برای اینکه مطمئن شوید آدرس درست را وارد میکنید.
کد کامل راهاندازی LCD با I2C
حالا میرسیم به کد اصلی پروژه:
//فراخوانی کتابخانه ال سی دی<include<LiquidCrystal_I2C.h#
//مشخص کردن پورت ال سی دی و سطر و ستون;LiquidCrystal_I2C lcd(0X27,16,2)
}() void setup
;()lcd.begin
//روشن کردن بک لایت ال سی دی;()lcd.backlight
{
}()void loop
//مشخص کردن مکان نشانگر در ال سی دی در خانه 0 و 0;()lcd.home
//نوشتن متن مد نظر برای نمایش;lcd.print("MRH")
{توضیح خط به خط کد
#include <Wire.h>→ برای ارتباط I2C استفاده میشود.#include <LiquidCrystal_I2C.h>→ کتابخانه LCD با I2C.LiquidCrystal_I2C lcd(0x27, 16, 2);→ آدرس LCD و ابعاد آن مشخص میشود.lcd.init();→ LCD آماده به کار میشود.lcd.backlight();→ نور پسزمینه روشن میشود.lcd.setCursor(x, y);→ تعیین مکاننما در ستون و ردیف مشخص.lcd.print("متن");→ چاپ متن روی LCD.
نکات مهم و رفع خطاها
نمایش ندادن متن روی LCD → آدرس I2C را با کد Scanner پیدا کنید.
کم بودن نور یا دیده نشدن کاراکترها → پیچ پتانسیومتر پشت ماژول I2C را تنظیم کنید.
عدم شناسایی LCD → سیمکشی SDA و SCL را بررسی کنید.
نمایش حروف عجیب → تنظیمات ابعاد LCD (
16,2یا20,4) را بررسی کنید.
پروژههای پیشنهادی با LCD I2C
بعد از یادگیری راهاندازی LCD با I2C میتوانید پروژههای جالبی بسازید:
نمایش دما و رطوبت محیط با سنسور DHT11 یا DHT22.
ساخت ساعت دیجیتال با ماژول RTC.
نمایش فاصله با سنسور آلتراسونیک HC-SR04.
منوهای کنترلی برای رباتها یا دستگاههای هوشمند.
جمعبندی
در این مقاله یاد گرفتیم که چگونه میتوان یک LCD کاراکتری را به کمک ماژول I2C راهاندازی کرد. مزیت اصلی I2C استفاده از تنها دو سیم برای ارتباط است که باعث صرفهجویی زیادی در تعداد پینهای آردوینو میشود.
ما وسایل لازم، نحوه سیمکشی، نصب کتابخانهها، پیدا کردن آدرس I2C و کد کامل آردوینو را بررسی کردیم. حالا شما میتوانید در پروژههای خود از این نمایشگر برای نمایش دادهها استفاده کنید.





