اتصال LCD 1602 به آردوینو: توضیحات، توابع، دستورالعمل ها، ویژگی ها، مشکلات و راه حل ها

فهرست مطالب:

اتصال LCD 1602 به آردوینو: توضیحات، توابع، دستورالعمل ها، ویژگی ها، مشکلات و راه حل ها
اتصال LCD 1602 به آردوینو: توضیحات، توابع، دستورالعمل ها، ویژگی ها، مشکلات و راه حل ها
Anonim

هر آماتور رادیویی، پس از چند کار ساده DIY، به هدف خود می رسد که با استفاده از حسگرها و دکمه ها چیزی بزرگ بسازد. از این گذشته ، نمایش داده ها روی صفحه نمایش بسیار جالب تر از نمایشگر پورت است. اما پس از آن این سوال مطرح می شود: کدام صفحه نمایش را انتخاب کنیم؟ و به طور کلی نحوه اتصال آن چه چیزی برای اتصال لازم است؟ پاسخ به این سوالات در این مقاله مورد بحث قرار خواهد گرفت.

نمایشگر LCD 1602 برای اتصال به آردوینو
نمایشگر LCD 1602 برای اتصال به آردوینو

LCD 1602

در میان بسیاری از گزینه ها در بین نمایشگرها، من می خواهم صفحه نمایش LCD1602 مبتنی بر کنترلر HD4478 را مشخص کنم. این صفحه نمایش در دو رنگ وجود دارد: حروف سفید در پس زمینه آبی، حروف سیاه در پس زمینه زرد. اتصال LCD 1602 به آردوینو نیز مشکلی ایجاد نمی کند، زیرا یک کتابخانه داخلی وجود دارد و نیازی به دانلود چیز اضافی ندارید. نمایشگرها نه تنها از نظر قیمت، بلکه در اندازه نیز متفاوت هستند. اغلب آماتورهای رادیویی از 16 استفاده می کنندx 2، یعنی 2 خط 16 کاراکتری. اما 20 × 4 نیز وجود دارد که در آن 4 خط 20 کاراکتری وجود دارد. ابعاد و رنگ هیچ نقشی در اتصال نمایشگر lcd 1602 به آردونو ندارد و به همین صورت به هم متصل می شوند. زاویه دید 35 درجه، زمان پاسخگویی نمایشگر 250 میلی ثانیه است. می تواند در دمای 20- تا 70 درجه سانتیگراد کار کند. هنگام کار، از 4 میلی آمپر برای صفحه نمایش و 120 میلی آمپر برای نور پس زمینه استفاده می کند.

پین اوت نمایشگر LCD 1602
پین اوت نمایشگر LCD 1602

کجا استفاده می شود؟

این نمایشگر نه تنها در بین آماتورهای رادیویی، بلکه در بین تولیدکنندگان بزرگ نیز محبوبیت دارد. به عنوان مثال، چاپگرها، دستگاه های قهوه ساز نیز از LCD1602 استفاده می کنند. این به دلیل قیمت پایین آن است، این نمایشگر در سایت های چینی 200-300 روبل قیمت دارد. ارزش خرید از آنجا را دارد، زیرا در فروشگاه های ما حاشیه های این نمایشگر بسیار زیاد است.

اتصال به آردوینو

اتصال LCD 1602 به آردوینو نانو و یونو تفاوتی ندارد. شما می توانید با نمایشگر در دو حالت 4 بیتی و 8 بیتی کار کنید. هنگام کار با نمایشگر 8 بیتی، هر دو بیت پایین و بالاتر و با 4 بیت فقط از بیت های پایین استفاده می شود. هیچ نکته خاصی در کار با 8 بیت وجود ندارد، زیرا 4 مخاطب دیگر برای اتصال اضافه می شود، که توصیه نمی شود، زیرا سرعت بالاتر نخواهد بود، محدودیت به روز رسانی نمایشگر 10 بار در ثانیه است. به طور کلی، سیم های زیادی برای اتصال ال سی دی 1602 به آردوینو استفاده می شود که باعث ایجاد ناراحتی می شود، اما سپرهای ویژه ای وجود دارد، اما بعداً در مورد آن صحبت خواهیم کرد. عکس اتصال صفحه نمایش به آردوینو Uno را نشان می دهد:

اتصال صفحه نمایش به آردوینو
اتصال صفحه نمایش به آردوینو

مثال کد:


شامل //کتابخانه مورد نیاز LiquidCrystal lcd (7، 6، 5، 4، 3، 2) را اضافه کنید. // (RS, E, DB4, DB5, DB6, DB7) void setup(){ lcd.begin(16, 2); // تنظیم ابعاد صفحه نمایش lcd.setCursor(0, 0); // مکان نما را در ابتدای خط 1 قرار دهید lcd.print("Hello, world!"); // نمایش ال سی دی متنی setCursor(0, 1); // مکان نما را در ابتدای خط 2 قرار دهید lcd.print("fb.ru"); // خروجی متن } void loop(){ }

کد چه کاری انجام می دهد؟ اول از همه، کتابخانه کار با نمایشگر متصل است. همانطور که در بالا ذکر شد، این کتابخانه قبلاً در Arduino IDE گنجانده شده است و نیازی به دانلود و نصب اضافی آن ندارید. در مرحله بعد کنتاکت هایی که به پین ها متصل می شوند به ترتیب RS، E، DB4، DB5، DB6، DB7 تعریف می شوند. سپس اندازه صفحه نمایش تنظیم می شود. از آنجایی که ما با نسخه ای با 16 کاراکتر و 2 خط کار می کنیم، چنین مقادیری را می نویسیم. مکان نما را در ابتدای خط اول قرار می دهیم و اولین متن Hello World را نمایش می دهیم. سپس مکان نما را در خط دوم قرار دهید و نام سایت را نمایش دهید. همین! اتصال lcd 1602 به Arduino Uno در نظر گرفته شد.

I2C چیست و چرا لازم است؟

همانطور که در بالا ذکر شد، اتصال صفحه نمایش پین های زیادی را می طلبد. به عنوان مثال، هنگام کار با چندین سنسور و صفحه نمایش LCD، 1602 مخاطب ممکن است به سادگی کافی نباشد. اغلب، آماتورهای رادیویی از نسخه های Uno یا Nano استفاده می کنند، جایی که مخاطبین زیادی وجود ندارد. سپس مردم با سپرهای مخصوص آمدند. مثلا I2C. این امکان را به شما می دهد تا صفحه نمایش را تنها با 4 پین متصل کنید. این دو برابر کمتر است. ماژول I2C هم به صورت جداگانه فروخته می شود، جایی که باید خودتان آن را لحیم کنید و هم قبلاً به آن لحیم شده استصفحه نمایش LCD 1602.

ماژول I2C برای نمایشگر LCD 1602
ماژول I2C برای نمایشگر LCD 1602

اتصال با ماژول I2C

اتصال LCD 1602 به آردوینو نانو با I2C فضای کمی را اشغال می کند، فقط 4 پین: زمین، برق و 2 خروجی داده. برق و زمین را به ترتیب به 5 ولت و GND در آردوینو وصل می کنیم. دو کنتاکت باقیمانده: SCL و SDA به هر پین آنالوگ متصل هستند. در عکس نمونه ای از اتصال lcd 1602 به آردوینو با ماژول I2C را مشاهده می کنید:

اتصالات را با استفاده از ماژول I2C نمایش دهید
اتصالات را با استفاده از ماژول I2C نمایش دهید

کد برنامه

اگر برای کار با نمایشگر بدون ماژول فقط از یک کتابخانه استفاده می شد، برای کار با یک ماژول به دو کتابخانه نیاز بود. یکی از آنها در حال حاضر در Arduino IDE - Wire است. کتابخانه دیگری به نام LiquidCrystal I2C باید جداگانه دانلود و نصب شود. برای نصب کتابخانه در آردوینو، محتویات آرشیو دانلود شده باید در پوشه ریشه Libraries آپلود شود. نمونه کد با استفاده از I2C:


شامل شامل ال سی دی LiquidCrystal_I2C (0x27, 16, 2); // تنظیم نمایش void setup() { lcd.init(); lcd.backlight();// نور پس زمینه نمایشگر را روشن کنید lcd.print("FB.ru"); lcd.setCursor(8, 1); lcd.print("LCD 1602"); } void loop() { // مکان نما را روی خط دوم و کاراکتر تهی قرار دهید. lcd.setCursor(0, 1); // چاپ کردن تعداد ثانیه هایی که از زمانی که آردوینو شروع به کار کرده است lcd.print(millis()/1000); }

همانطور که می بینید، کد تقریباً یکسان است.

چگونه نماد خود را اضافه کنم؟

مشکل این نمایشگرها این است که وجود نداردپشتیبانی از سیریلیک و نمادها. برای مثال، باید مقداری کاراکتر را در صفحه نمایش بارگذاری کنید تا بتواند آن را منعکس کند. برای انجام این کار، صفحه نمایش به شما اجازه می دهد تا حداکثر 7 کاراکتر خود را ایجاد کنید. ارائه جدول:

0 0 0 1 0
0 0 0 0 1
1 1 0 0 1
0 0 0 0 1
1 1 0 0 1
0 0 0 0 1
0 0 0 1 0
0 0 0 0 0

اگر 0 - چیزی در آنجا وجود ندارد، اگر 1 - یک منطقه سایه دار است. در مثال بالا، می توانید ایجاد شخصیت "خنداننده لبخند" را مشاهده کنید. با استفاده از یک برنامه نمونه در آردوینو، به این صورت خواهد بود:


include include // شامل کتابخانه مورد نیاز // نماد لبخند بیت ماسک بایت لبخند[8]={ B00010, B00001, B11001, B00001, B11001, B00001, B00010, ال سی دی LiquidCrystal (7، 6، 5، 4، 3، 2); // (RS, E, DB4, DB5, DB6, DB7) void setup(){ lcd.begin(16, 2); // تنظیم ابعاد صفحه نمایش lcd.createChar(1، لبخند)؛ // ایجاد کاراکتر شماره 1 lcd.setCursor(0, 0); // مکان نما را در ابتدای خط 1 قرار دهید lcd.print("\1"); // نمایش شکلک (نویسه شماره 1) - "\1" } void loop(){ }

همانطور که می بینید، ایجاد شدبیت ماسک همان جدول است. پس از ایجاد، می توان آن را به عنوان یک متغیر به نمایشگر خروجی داد. به یاد داشته باشید که فقط 7 کاراکتر را می توان در حافظه ذخیره کرد. در اصل، این کافی است. به عنوان مثال، اگر می خواهید نماد درجه را نشان دهید.

افزودن کاراکترهای سفارشی به LCD 1602
افزودن کاراکترهای سفارشی به LCD 1602

مشکلاتی که ممکن است نمایشگر کار نکند

مواقعی وجود دارد که نمایشگر کار نمی کند. به عنوان مثال، روشن می شود، اما شخصیت ها را نشان نمی دهد. یا اصلا روشن نمیشه ابتدا ببینید آیا مخاطبین را به درستی وصل کرده اید یا خیر. اگر قبلاً ال سی دی 1202 را بدون I2C به آردوینو وصل می کردید، گره خوردن در سیم ها بسیار آسان است که باعث می شود نمایشگر به درستی کار نکند. همچنین باید مطمئن شوید که کنتراست نمایشگر افزایش یافته است، زیرا در حداقل کنتراست حتی روشن نیست یا خیر LCD 1602 قابل مشاهده نیست. اگر این کمکی نکرد، ممکن است مشکل در لحیم کاری مخاطبین باشد، این هنگام استفاده از ماژول I2C است. همچنین، یک دلیل رایج برای اینکه نمایشگر ممکن است کار نکند، تنظیم نادرست آدرس I2C است. واقعیت این است که تولید کنندگان زیادی وجود دارند، و آنها می توانند آدرس متفاوتی را تنظیم کنند، شما باید آن را در اینجا اصلاح کنید:


LCD LiquidCrystal_I2C(0x27, 16, 2);

در پرانتزها می توانید دو مقدار 0x27 و 16, 2 را ببینید (16,2 اندازه نمایشگر است و 0x27 فقط آدرس I2C است). به جای این مقادیر، می توانید سعی کنید 0x37 یا 0x3F را قرار دهید. خوب، دلیل دیگر صرفاً یک LCD 1602 معیوب است. با توجه به اینکه تقریباً همه چیز برای آردوینو ساخت چین است، نمی توانید 100٪ مطمئن باشید که خریداری شده است.محصول معیوب نیست.

مزایا و معایب LCD 1602

بیایید به جوانب مثبت و منفی LCD 1602 نگاه کنیم.

طرفداران

  • قیمت. این ماژول را می توان با قیمت بسیار مقرون به صرفه در فروشگاه های چین خریداری کرد. قیمت 200-300 روبل است. گاهی اوقات حتی با یک ماژول I2C فروخته می شود.
  • اتصال آسان. احتمالاً این روزها هیچ کس LCD 1602 را بدون I2C وصل نمی کند. و با این ماژول، اتصال فقط 4 پین طول می کشد، هیچ "وب" سیم وجود نخواهد داشت.
  • برنامه نویسی. به لطف کتابخانه های آماده، کار با این ماژول آسان است، همه توابع قبلاً ثبت شده اند. و اگر بخواهید شخصیت خود را اضافه کنید، فقط چند دقیقه طول می کشد.

معایب

در طول زمان استفاده توسط هزاران آماتور رادیویی، هیچ منفی بزرگی شناسایی نشده است، فقط مواردی از خرید ازدواج وجود دارد، زیرا از گزینه های نمایش چینی عمدتا استفاده می شود

در این مقاله نحوه اتصال نمایشگر LCD 1602 به آردوینو مورد بحث قرار گرفت و همچنین نمونه برنامه هایی برای کار با این نمایشگر ارائه شد. این واقعاً یکی از بهترین ها در رده خود است، فقط این نیست که هزاران آماتور رادیویی آن را برای پروژه های خود انتخاب می کنند!

توصیه شده: