s

مقدمه

در این اموزش قصد داریم نحوه راه اندازی lcd کاراکتری به وسیله برد node mcu را اموزش دهیم LCD 2*16 یعنی 2 سطر و 16ستون میباشد یعنی در هر سطر میتواند 16کاراکتر را نمایش دهد و در مجموع میتوان 32کاراکتر را بر روی lcd نمایش داد

کلید واژه ها
esp8266,LCD16,دیجیتال,

وسایل مورد نیاز

#نوعتعدادخرید
1node mcu1
2سیم جامپر2
3برد بورد1
4lcd 16 کاراکتری1
5پتانسیومتر خوابیده 10k1
6مقاومت2201

پیش نیاز ها

برای برنامه نویسی این پروژه از نرم افزار اردوینو استفاده میکنیم.

  1. ابتدا نرم افزار اردوینو را دانلود و نصب کنید
  2. به منو File بروید و گزینه Preferencesرا بزنید
  3. add boardFile -> arduino Preferences
  4. متن زیر را وارد کنید
  5. http://arduino.esp HYPERLINK "http://arduino.esp8266.com/stable/package_esp8266com_index.json"8266 HYPERLINK "http://arduino.esp8266.com/stable/package_esp8266com_index.json".com/stable/package_esp HYPERLINK "http://arduino.esp8266.com/stable/package_esp8266com_index.json"8266 HYPERLINK "http://arduino.esp8266.com/stable/package_esp8266com_index.json"com_index.json

    add boardpaste link
  6. بعد از افزودن لینک ها برنامه را باز و بسته کرده تا لینک به مخازن برنامه اضافه شوند
  7. به منو tools رفته و از بخش Borads manager ... را بزنید
  8. boardesp8266 اضافه شده است
  9. در قسمت search بنویسید Esp8266 و برد را نصب کنید
  10. board esp32 اضافه شده است
  11. بعد اینکه برد نصب شده باید نوع برد Arduino را عوض کنیم
  12. boardesp32 اضافه شده است
  13. افزودن کتابخانه مورد نیاز iotkaran
  14. tools-> manager Library

    boardافزودن کتابخانه iotkaran
  15. تایپiotkaran در بخش جستجو
  16. boardافزودن کتابخانه iotkaran

توضیحات تکمیلی

معرفی پایه های lcdکاراکتری:

در این بخش تمامی پایه های lcd را معرفی می کنیم و به کاربرد هر یک میپردازیم

pin

معرفی پایه ها

  • GND : این پایه را باید به GNDاردوینو متصل کنیم
  • Vcc : تغذیه  ال‌سی‌دی  می‌باشد که باید به ۵+ولت DC متصل  شود
  • VEE :  (پایه سوم) از این پین برای تنظیم کانتراست (شدت نور صفحه)صفحه نمایش استفاده میشود. این پین را توسط یک پتانسومتر۱۰ کیلواهم به زمین متصل می کنیم. نحوه تنظیم کنتراست به این صورت می باشد که هرچقدر ولتاژ اعمالی به این پایه به مثبت 5 ولت نزدیک باشد متن ها بر روی نمایشگر به صورت کم رنگ تر نمایش داده می شوند و بلعکس هر گاه ولتاژ اعمالی به این پایه به صفر ولت یا همان GNDنزدیکتر باشد متن ها به صورت پر رنگ تر نمایش داده می شوند.
  • Rs :  این پایه مربوط به رجیستر و آدرس دهی برای خواندن و یا نوشتن بر روی چیپ های درایور ال سی دی می باشد.
  • R/W : به وسیله این پایه مشخص می کنیم که قصد نوشتن داده بر روی نمایشگر را داریم یا خواندن داده را.برای نوشتن بر روی نمایشگر این پایه را صفر ،و برای خواندن دیتا این پایه را یک می کنیم
  • EN : از این پین برای فعال یا غیرفعال کردن LCD استفاده می‌شود پین‌های D0 تا D7  از این 8پایه برای برای انتقال اطلاعات مورد نظر به صورت 4 بیتی و یا 8 بیتی به LCD کاراکتری به منظور نمایش اطلاعات در LCD استفاده میشود
  • Backlight VCC: این پین برای نور پس زمینه LCDمی باشد
  • Backlight GND: این پین برای نور پس زمینه LCD می باشد
  • Data 1-8 8 پایه برای انتقاق دیتا می باشند که بتوان متن های خورا بر روی lcd نمایش دهیم

نکته

در این پروژه LCD را بصورت 4بیتی به اردوینو متصل میکنیم.در اتصال بصورت 4بیتی ،فقط چهار پایه از هشت پایه D0 الی D7مورد استفاده قرار میگیرد

نکته

به دلیل اینکه در این نوع اتصال تعداد پایه کمتری از اردوینو نسبت به اتصال بصورت 8بیتی مورد استفاده قرار میگیرد،و باعث کاهش اشغال پایه های اردوینو به وسیله LCD نسبت به اتصال به صورت 8بیتی میشود،در بیشتر پروژه ها که نیاز به LCD میباشد،از اتصال به صورت 4بیتی استفاده میشود

اولین قدم افزودن کتابخانه به برنامه است

بعد از افزودن کتابخانه می بایست پایه های lcd را متصل کنیم ترتیب پایه ها در قسمت بالا توضیح داده شده است

از ویژگی کتابخانه LiquidCrystal پشتیبانی از انواع lcd ها می باشد و ما می بایست پایه های مورد نیاز خودرا به ان معرفی کنیم تا طبق نیاز ما lcd را راه اندازی کند

() Setup

توسط تابع begin() ، LCDبه اردوینو معرفی میشود.و به وسیله این دستور مشخص میکنیم که LCD ما دارای چند سطر و ستون میباشد

() loop

برنامه‌های آردوینو دو قسمت دارند همانطور که پیش تر گفته شد،مقدار دهی اولیه در void setup انجام میشود.اما برنامه اصلی که همیشه هم در حال تکرار است در حلقه لوپ یاهمان void loopانجام میشود

از این رو که این مثال اولیه باری lcd می باشد فقط از تابع lcd.noDisplay() جهت خاموش کردن نور صفحه lcd استفاده می کنیم و بعد از نیم ثانیه صفحه دوباره روشن می شود

در این بخش lcd دوباره روشن می شود و مدت نیم ثانیه دیگر روشن می ماند

شماتیک

rشماتیک برد

کد کامل

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include <LiquidCrystal.h> const int rs = D6, en = D5, d4 = D4, d5 = D3, d6 = D2, d7 = D1; LiquidCrystal lcd(rs, en, d4, d5, d6, d7); void setup() { // set up the LCD's number of columns and rows: lcd.begin(16, 2); // Print a message to the LCD. lcd.print("hello, world!"); } void loop() { // Turn off the display: lcd.noDisplay(); delay(500); // Turn on the display: lcd.display(); delay(500);

اپلود کد

  1. در برنامه اردوینو یک برگه جدید باز می کنیم
  2. dFile -> arduino Preferences
  3. جهت اپلود کد می بایست پورت سریال دستگاه متصل را انتخاب کنیم (توجه شماره com با پورت کامپیوتر در ارتباط است و بسته به پورت دارای شماره های مختلفی می باشد )
  4. programFile -> arduino Preferences
  5. کد کامل را جایگزاری می کنیم و گزینه اپلود را می زنیم
  6. sFile -> arduino Preferences

دیدگاهتان را بنویسید

کامنت ها