آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

آموزش راه اندازی LCD کاراکتری 2×16 با آردوینو

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو | LCD های کاراکتری یک نمایشگر متنی هستند که به دلیل قیمت مناسب و استفاده آسان، گزینه‌های محبوبی برای نمایش داده‌ها در پروژه‌های الکترونیکی  هستند.  LCD  های  ۲×۱۶ یکی از پرکاربرد‌ترین LCD ها برای استفاده در  پروژه ها هستند که می‌توانند تا ۳۲ کاراکتر را در دو ردیف شانزده تایی نمایش دهند. البته با توجه به نیاز می‌توان از انواع LCD های دیگر که بر مبنای چیپ کنترلر HD44780 هیتاچی  هستند نیز استفاده کرد.

در این مقاله که توسط خانه رباتیک ایران آماده شده است می‌خواهیم نحوه راه اندازی LCD کارکتری با آردوینو را به شما آموزش دهیم.

آشنایی با LCD :

LCD کاراکتری 2×16

LCD کاراکتری ۲×۱۶

LCD مخفف عبارت Liquid Crystal Display و به معنای « صفحه نمایش کریستال مایع » است. در واقع  LCD دو شیشه که نوعی فیلتر هستند و کریستال مایع که هم ویژگی جامدات و هم مایعات را دارد (که همین امر سبب بکارگیری این ماده در چنین تکنولوژی شده است) را داراست. کریستال‌های مایع میان دو شیشه پلاریزه قرار دارند و هنگامی که نور وارد این دو فیلتر می‌شود، اگر الگوی مناسب آن‌ها را نداشته باشد  توانایی عبور از آن‌ها را نخواهد داشت.

LCD کاراکتری همانطور که از اسمش پیداست تنها برای نمایش پیام متنی و یا کاراکتری ساخته شده است. این LCD دارای یک LED برای نور پس زمینه است که اگر بادقت به آن نگاه کنید، می‌توانید ۳۲ بلوک مستطیلی شکل در دو ردیف شانزده تایی را مشاهده کنید، که هر یک از این مستطیل‌ها به شکل  شبکه‌ای از ۵×۸ پیکسل است.

اگرچه این LCD ها فقط نمایش دهنده متن و کاراکتر هستند اما در اندازه و رنگ‌ها متفاوتی وجود دارند. مانند صفحات نمایش ۱×۱۶، ۴×۱۶ و ۴×۲۰  با متن سفید در زمینه آبی یا متن سیاه در زمینه سبز.

پین‌های ماژول LCD کاراکتری ۲×۱۶ :

پین‌های LCD

پین‌های LCD

قبل از راه اندازی این LCD با آردوینو، ابتدا نگاهی به پین‌های LCD می‌اندازیم:

۱- پین GND: به پین  GND آردوینو وصل می‌شود.

۲- پین VCC: تغذیه الکتریکی LCD است و به پین ۵ ولت آردوینو وصل می‌شود.

۳- پین Vo: جهت کنترل کنتراست (Contrast) و نور LCD مورد استفاده قرار می‌گیرد. با استفاده از یک تقسیم کننده ولتاژ و یک پتانسیومتر می‌توانید کنتراست را به‌سادگی تنظیم کنید تا متن به خوبی قابل مشاهده باشد.

۴- پین RS: (ثبت انتخاب) به آردوینو  اجازه می‌دهد که به LCD اطلاع دهد که آیا در حال ارسال دیتا یا ارسال دستورات است. این پین اصولا برای ایجاد تمایز بین دستورات و دیتا مورد استفاده قرار می‌گیرد. به عنوان مثال هنگامی‌که مقدار پین RS به‌صورت Low باشد، در واقع شما در حال ارسال دستوری از آردوینو  به LCD  هستید (دستور‌هایی مانند دستور تنظیم مکان نما در یک مکان خاص، دستور پاک کردن صفحه نمایش، دستور رفتن به سمت راست صفحه نمایش و یا …. ).  اما زمانی‌که پین RS به‌صورت High باشد، شما در حال ارسال دیتا یا کاراکتر از آردوینو  بر روی LCD  هستید.

۵- پین R/W: ( خواندن / نوشتن ) بر روی  LCD  به شما نشان می‌دهد که آیا در حال نوشتن دیتا بر روی LCD هستید یا در حال خواندن دیتا از آن هستید. با توجه به اینکه در این پروژه از این LCD  تنها به عنوان خروجی استفاده  می‌کنیم، باید مقدار این پین را LOW تنظیم کنید. زمانی‌که این پین LOW باشد، LCD در مد نوشتن ( Write ) قرار می‌گیرد و شما می‌توانید به LCD دیتا ارسال کنید.

۶- پین En: (فعال) جهت فعال‌سازی LCD استفاده می‌شود. یعنی زمانی‎‌که این پین LOW باشد، در حقیقت LCD اهمیتی به مقادیر پین‌های R/W ،RS و خطوط باس دیتا نمی‌دهد. اما با High شدن این پین، LCD  اطلاعات ورودی را پردازش خواهد کرد.

۷- پین‌های  (data bus) D0-D7: برای انتقال دیتای ۸ تا ۱۴ بیتی مورد استفاده قرار می‌گیرند که شما برای LCD ارسال می‌کنید. به عنوان مثال اگر بخواهید کاراکتر A را بر روی LCD مشاهده کنید، باید این هشت پین‌‎ را با کد ۰۱۰۰۰۰۰۱ ( براساس جدول اسکی ) تنظیم کنید. به این شکل LCD کاراکتر A را نمایش خواهد داد.

۸- پین‌های A-K (آند و کاتد): برای  کنترل  نور پس زمینه LCD مورد استفاده  قرار  می‌گیرند.

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

سیم کشی و تست LCD  کاراکتری 2×16

سیم کشی و تست LCD  کاراکتری ۲×۱۶

سیم کشی و تست LCD  کاراکتری ۲×۱۶ :

اکنون برای سیم کشی و تست LCD نیاز به وسایل زیر دارید:

  • برد آردوینو UNO
  • LCD کاراکتری ۲×۱۶
  • پتانسیومتر ۵ کیلو اهم (برای تنظیم کنتراست)
  • مقاومت ۲۲۰ اهم
  • سیم جامپر
  • مینی برد بورد
  • کابل USB

بعد از تهیه وسایل باید به ترتیب مراحل زیر را طی کنید:

  • ابتدا پین GND و ۵ ولت آردوینو را به ریل‌های برد بورد و سوکت LCD را نیز به برد‌ بورد متصل کنید.
  • سپس پین شماره ۳ (Vo) LCD  که برای کنترل کنتراست و روشنایی پس زمینه ال سی دی است را به پایه وسط  یک پتانسیومتر ۵ کیلو اهمی بین پین‌های GND و ۵ ولت وصل کنید.

در نهایت  تغذیه الکتریکی را از طریق سیم و برد بورد به LCD  اعمال کنید. LCD دارای ۲ رابط برای اتصال تغذیه الکتریکی است. رابط‌های LCD عبارتند از پین‌های ۱ (GND) و ۲ (VCC) که برای تغذیه الکتریکی LCD به کار می‌رود و دیگری پین ۱۵ (Anode) و ۱۶ (Kathod) که برای نور پس زمینه است. پین ۱ و ۱۶ LCD را به GND و پین ۲ و ۱۵ را به ۵ ولت وصل کنید.

البته توجه کنید که بیشتر LCD ها در مسیر تغذیه نور پس زمینه دارای مقاومت‌های داخلی هستند. اگر LCD  شما  دارای این مقاومت الکتریکی نبود می‌بایست یک مقاومت در مسیر اتصال پین ۵ ولت به پایه ۱۵ قرار دهید. برای اینکه بفهمید مقاومت مناسب برای این LCD  چقدر است باید به دیتاشیت LCD  مراجعه کنید و با استفاده از اطلاعتی از قبیل حداکثر جریان نور پس زمینه و افت ولتاژ معمول آن از طریق قانون اهم مقدار مقاومت مورد نیاز را محاسبه کنید. چنانچه اگر به دیتاشیت LCD  دسترسی نداشتید  می‌توانید با رعایت اصول ایمنی از یک مقامت ۲۲۰ اهمی استفاده کنید. اگر نور پس زمینه LCD  شما تا حدودی ضعیف شود گویای این است که مقدار مقاومت مورد استفاده LCD  زیادی است.

خانه رباتیک ایران

آموزش راه اندازی LCD کاراکتری 2×16 با آردوینو

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

همانطور که مشاهده می‌کنید با روشن کردن آردوینو خواهید دید که نور پس زمینه LCD نیز روشن می‌شود و با چرخاندن پتانسیومتر می‌توانید کنتراست LCD را تنظیم کنید.

اگر بتوانید با چرخاندن پتانسیومتر خط اول بلوک‌های مستطیلی شکل را مشاهده کنید یعنی به درستی LCD را به آردوینو متصل کرده‌اید.

بعد از کسب اطمینان خاطر بابت درستی نصب LCD اکنون باید برای استفاده LCD از آردوینو باید مابقی پین‌ها را از LCD به آردوینو متصل کنید. LCD کاراکتری ۲×۱۶ دارای ۱۶ پین است که نیازی به اتصال تمام پین‌ها نیست.

آموزشگاه رباتیک ایران

بیشتر بدانید:

برای انتقال دیتا به صفحه نمایش ۸ خط دیتا وجود دارد. اما LCD های HD44780 طوری طراحی شده اند که با وجود ۸ پین تنها  با استفاده از ۴ پین (مد ۴ بیتی) می‌توان دیتا را انتقال داد. از این منظور می‌توان برای صرفه جویی در استفاده از پین‌های ورودی / خروجی بکار برد. هرچند که انتقال دیتا در مد ۸ بیتی از سرعت بیشتری برخوردار است و به همین خاطر حداقل ۱۰ پین در دسترس شما وجود دارد. البته  شما  در اینجا از مد ۴ بیتی استفاده می‌کنید.

برای نوشتن پیام بر روی LCD فقط نیاز به ۶ پین RS ،EN ،D4 ،D5 ،D6 و D7 داریم:

  • پین ۴ (RS) LCD را به دیجیتال پین شماره ۱۲ آردوینو وصل کنید.
  • پین ۵ (R/W) LCD را به GND آردوینو وصل کنید.
  • پین ۶ (En) LCD را به پین ۱۰ آردوینو وصل کنید.
  • پین ۱۱ (D4) LCD را  به پین ۵ آردوینو وصل کنید.
  • پین ۱۲ (D5) LCD را به پین ۴ آردوینو وصل کنید.
  • پین ۱۳ (D6) LCD را به پین ۳ آردوینو وصل کنید.
  • پین ۱۴ (D7) LCD را  به پین ۲ آردوینو وصل کنید.

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

آموزش راه اندازی LCD کاراکتری 2×16 با آردوینو

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

پس از سیم کشی و اتصال پین‌ها به آردوینو حالا برای نمایش دیتا بر روی LCD سراغ کد نویسی بروید.

کد نویسی با آردوینو:

قسمتی از راه اندازی LCD کاراکتری ۲×۱۶ مربوط به کد نویسی است.

کد زیر پیام ” Khaneh Robotic Iran ” را بر روی LCD نمایش می‌دهد.

شرح کد:

ابتدا قبل از ورود به توابع setup و loop باید کتابخانه liquidcrystal را برای راه اندازی ساده‌تر LCD که بصورت پیش فرض در آردوینو قرار دارد، فراخوانی کنید.

در گام بعدی باید شی LCD را ایجاد کنید که از ۶ پارامتر RS ،Enو D4 تا D7 استفاده می‌کند و مشخص می‌کند که کدام یک از پین‌های آردوینو به یکی از این ۶ پارامتر متصل است.

اکنون که شی LCD را ایجاد کردید وارد بخش setup می‌شوید. در این بخش باید ۲ تابع ()begin و ()clear استفاده کنید.

تابع ()begin برای مشخص کردن ابعاد LCD است. برای مثال شما در اینجا از LCD 2×۱۶ استفاده می‌کنید پس باید پارامتر‌های تابع را به صورت ۲ و ۱۶ قرار دهید. اگر ابعاد LCD متفاوت بود مثلا ۱۶×۱ بود باید پارامتر‌های تابع را ۱ و ۱۶ قرار دهید.

تابع ()clear صفحه را پاک می‌کند و مکان نمای کاراکتر را در گوشه بالا سمت چپ قرار می‌دهد.

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

در بخش loop، از تابع ()print برای چاپ متن مورد نظر و از تابع ()setCursor برای تنظیم مکانمای متن استفاده می‌کنیم. در این LCD که دارای ۲ سطر است در سمت راست تابع ()setCursor می‌توانید از اعداد ۰ و ۱ (چون در زبان برنامه نویسی شماره گذاری‌ها از ۰ شروع می‌شود) برای مشخص کردن سطر و در سمت چپ تابع می‌توانید از اعداد ۰ تا ۱۵ برای مشخص کردن ستون متن برای شروع نمایش متن استفاده کنید.

اگر تمام نکات بالا را رعایت کرده باشید در آخر باید خروجی شما به شکل زیر باشد:

آموزش راه اندازی LCD کاراکتری 2×16 با آردوینو

آموزش راه اندازی LCD کاراکتری ۲×۱۶ با آردوینو

شعبه بابل:  پل کارگر به سمت کشوری، روبروی ماکروویو، جنب فروشگاه جانبو

موبایل:  ۰۹۱۱۹۵۱۴۸۸۲

خط ثابت:  ۰۱۱۳۲۲۲۳۹۲۹

ایمیل: info@khanerobotic.ir

اینستاگرام: khanerobotic

شعبه بابل:  پل کارگر به سمت کشوری، روبروی ماکروویو، جنب فروشگاه جانبو

موبایل:  ۰۹۱۱۹۵۱۴۸۸۲

خط ثابت:  ۰۱۱۳۲۲۲۳۹۲۹

ایمیل: info@khanerobotic.ir

اینستاگرام: khanerobotic