فهرست مطالب:

LCD COG برای آردوینو نانو: 3 مرحله
LCD COG برای آردوینو نانو: 3 مرحله

تصویری: LCD COG برای آردوینو نانو: 3 مرحله

تصویری: LCD COG برای آردوینو نانو: 3 مرحله
تصویری: Arduino Nano display PROGMEM bitmap image with Arduino_GFX 2024, جولای
Anonim
LCD COG برای آردوینو نانو
LCD COG برای آردوینو نانو

این دستورالعمل نحوه استفاده از LCD COG با آردوینو نانو را توضیح می دهد.

نمایشگرهای COG LCD ارزان هستند اما رابط کاربری آنها کمی سخت تر است. (COG مخفف "Chip On Glass" است.) موردی که من استفاده می کنم دارای تراشه درایور UC1701 است. به 4 پین آردوینو نیاز دارد: SPI-clock ، SPI-data ، chip-select و command/data.

UC1701 توسط گذرگاه SPI کنترل می شود و با 3.3 ولت کار می کند.

در اینجا نحوه استفاده از آن را با Arduino Nano شرح می دهم. همچنین باید با Arduino Mini یا Uno کار کند - به زودی آن را امتحان می کنم.

این اولین پروژه آردوینو من است و من چندین دهه است که C ننوشته ام بنابراین اگر اشتباهات آشکاری مرتکب می شوم ، لطفاً به من اطلاع دهید.

مرحله 1: ساخت سخت افزار

ساخت سخت افزار
ساخت سخت افزار
ساخت سخت افزار
ساخت سخت افزار
ساخت سخت افزار
ساخت سخت افزار

LCD COG بخرید که حاوی تراشه UC1701 است. باید از گذرگاه SPI استفاده کند نه رابط موازی. دارای حدود 14 پین است که دارای نام هایی مانند موارد زیر است. (شما رابط موازی با تعداد زیادی پین با برچسب D0 ، D1 ، D2 نمی خواهید …)

موردی که خریدم این است: https://www.ebay.co.uk/itm/132138390168 یا می توانید در eBay "12864 LCD COG" را جستجو کنید.

دمی را انتخاب کنید که دارای دم نسبتاً پهن با سنجاق هایی با فاصله 1.27 میلی متر است - لحیم کاری سنجاق های سخت تر سخت خواهد بود. مطمئن شوید که دارای تراشه UC1701 است. توجه کنید که چگونه در تصویر ششم در صفحه ebay نوشته شده است "CONNECTOR: COG/UC1701".

صفحه نمایش شفاف است و نمی توان تشخیص داد که جلو و عقب کدام است. تصاویر من را با دقت مطالعه کنید. توجه کنید که پین 1 و 14 کجا هستند - آنها روی دم مشخص شده اند.

لحیم کاری دم انعطاف پذیر بسیار آسان است اما به یک آداپتور نیاز دارد تا بتوانید آن را به یک تخته نان متصل کنید. من خریدم: https://www.ebay.co.uk/itm/132166865767 یا می توانید eBay را برای "Adapter Smd SSOP28 DIP28" جستجو کنید.

آداپتور از یک طرف یک تراشه SOP 28 پین یا از طرف دیگر یک تراشه SSOP 28 پین می گیرد. یک تراشه SOP دارای فاصله پین 0.05 اینچ (1.27 میلی متر) است که با دم LCD یکسان است.

همچنین به تعدادی پین هدر نیاز خواهید داشت. هر زمان که من یک آردوینو یا ماژول دیگر خریداری می کنم ، تعداد پین های هدر بیشتری نسبت به آنچه نیاز است ارائه می شود ، بنابراین احتمالاً قبلاً تعدادی از آنها را دارید. در غیر این صورت ، eBay را برای "پین هدر 2.54 میلی متری" جستجو کنید.

14 سربرگ را روی آداپتور لحیم کنید. آنها را تا انتها فشار ندهید - اگر پشت آداپتور صاف باشد بهتر است. آن را به صورت صاف روی نیمکت خود قرار دهید تا سنجاق ها بیش از حد به داخل سوراخ ها رانده نشوند. مطمئن شوید که پین ها در سمت SOP تخته (یعنی تراشه بزرگتر) قرار دارند.

لنت های دم در نوعی پنجره قرار دارند. هر دو طرف آنها را با لحیم لحیم کنید. پدهای آداپتور را قلع دهید. دم آداپتور را در جای خود نگه دارید و سپس هر پد را با آهن لحیم کاری لمس کنید (به یک نوک نسبتاً خوب نیاز دارید).

مقداری نخ را از طریق سوراخ های آداپتور بچسبانید تا به عنوان کشنده فشار عمل کند. (من از "سیم ترانسفورماتور" استفاده کردم).

اگر آن را به روش اشتباه لحیم می کنید ، سعی نکنید دم را از بین ببرید. پین ها را یکی یکی بیرون آورده و به طرف دیگر تخته ببرید. (بله ، من آن اشتباه را کردم و دم را دوباره لحیم کردم ، به همین دلیل است که کمی در عکس بهم ریخته است.)

مرحله 2: اتصال به آردوینو

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

این بخش نحوه اتصال به Arduino Nano را توضیح می دهد. برای Mini یا Uno بسیار شبیه است ، اما من هنوز آن را امتحان نکرده ام.

نمودار مدار را مطالعه کنید.

یک آردوینو نانو که به پورت USB متصل است با 5 ولت کار می کند. LCD از 3.3 ولت کار می کند. بنابراین شما باید LCD را از پین 3V3 نانو تغذیه کرده و ولتاژ هر پین کنترل را از 5 ولت به 3.3 ولت کاهش دهید.

پینت LCD این است:

  • 1 CS
  • 2 RST
  • 3 سی دی
  • 4
  • 5 CLK
  • 6 SDA
  • 7 3V3
  • 8 0V Gnd
  • 9 VB0+
  • 10 VB0-
  • 11
  • 12
  • 13
  • 14

CS Chip-Select است. برای انتخاب (فعال کردن) تراشه UC1701 پایین کشیده می شود. (CS ممکن است CS0 یا En یا مشابه آن نامیده شود.)

RST بازنشانی می شود برای ریست کردن تراشه ، پایین کشیده می شود. (RST ممکن است Reset نامیده شود.)

CD فرمان/داده است. هنگام ارسال دستورات به تراشه با SPI به پایین کشیده می شود. هنگام ارسال داده بالا است. (CD ممکن است A0 نامیده شود.)

CLK و SDA پین های گذرگاه SPI هستند. (SDA ممکن است SPI-Data نامیده شود. CLK ممکن است SCL یا SPI-Clock باشد.)

VB0+ و VB0- توسط پمپ شارژ داخلی UC1701 استفاده می شود. پمپ شارژ ولتاژهای مورد نیاز LCD را تولید می کند. یک خازن 100n را بین VB0+ و VB0- متصل کنید. مستندات UC1701 2uF را توصیه می کند ، اما من نتوانستم تفاوتی با این LCD خاص ببینم.

اگر LCD شما دارای پین VB1+ و VB1 است ، یک خازن 100n را نیز بین آنها وصل کنید. (اگر LCD شما دارای پین VLCD است ، می توانید یک خازن 100n را بین VLCD و Gnd متصل کنید. با LCD من تفاوتی نکرد.)

LCD را به نانو به صورت زیر وصل کنید:

  • 1 CS = D10 *
  • 2 RST = D6 *
  • 3 CD = D7 *
  • 5 CLK = D13 *
  • 6 SDA = D11 *
  • 7 3V3 = 3V3
  • 8 0V = Gnd

("*" به معنای استفاده از تقسیم کننده بالقوه برای کاهش ولتاژ است. اگر آردوینو از منبع تغذیه مستقل در 3V3 کار می کند ، نیازی به مقاومت ندارید.)

3.3V توسط نانو خروجی می شود و می تواند جریان کافی را برای LCD فراهم کند. (میزان نمایشگر صفحه نمایش حدود 250uA است.)

5 ولت نیز توسط نانو تولید می شود و می توان از آن برای روشنایی نور پس زمینه استفاده کرد. با یک مقاومت 100 اهم ، جریان را به نور پس زمینه محدود کنید.

اگر پین روی نانو کم است ، می توانید RST را به 3V3 وصل کنید - سپس می توانید از D6 برای چیز دیگری استفاده کنید. U1701 را می توان با دستور SPI در نرم افزار تنظیم مجدد کرد. من هرگز با آن مشکلی نداشتم ، اما اگر از مدار شخصی خود در محیطی پر سر و صدا استفاده می کنید ، بهتر است از تنظیم مجدد سخت افزار استفاده کنید.

مرحله 3: نرم افزار

نرم افزار
نرم افزار

از لحاظ تئوری ، شما می توانید UC1701 را از کتابخانه U8g2 (یا Ucglib یا سایر کتابخانه های موجود) رانندگی کنید. من روزها تلاش کردم تا کار کنم و شکست خوردم. کتابخانه U8g2 یک هیولا است زیرا می تواند انواع زیادی تراشه را هدایت کند و پیروی از کد بسیار سخت است. بنابراین منصرف شدم و کتابخانه کوچکتر خودم را نوشتم. فضای بسیار کمتری در آردوینو اشغال می کند (تقریباً 3400 بایت بعلاوه فونت).

می توانید کتابخانه من را از اینجا بارگیری کنید (دکمه بارگیری در این صفحه). نمونه طرح و راهنمای کاربر گنجانده شده است. صفحه وب https://www.arduino.cc/fa/Guide/Libraries نحوه وارد کردن کتابخانه را توضیح می دهد. به بخش "وارد کردن کتابخانه.zip" بروید.

LCD را با آن اولیه کنید

UC1701Begin () ؛

UC1701Begin می تواند پارامترهایی را برای تغییر پین ها یا نادیده گرفتن پین RST استفاده کند. کتابخانه فقط از SPI سخت افزاری استفاده می کند (SPI نرم افزاری ارائه نمی شود). صفحه را می توان در محورهای x و y چرخاند. اگر می خواهید LCD را در جهت دیگری سوار کنید ، مفید است.

چندین روش از کتابخانه U8g2 کپی شده است:

  • DrawLine
  • DrawPixel
  • DrawHLine
  • DrawVLine
  • DrawBox
  • DrawFrame
  • DrawCircle
  • DrawDisc
  • DrawFilledEllipse
  • DrawEllipse
  • DrawTriangle
  • UC1701SetCursor
  • UC1701ClearDisplay

برخی از روش ها کمی متفاوت هستند:

  • void DrawChar (uint8_t c ، word font) ؛
  • void DrawString (char * s ، word font) ؛
  • void DrawInt (int i ، word Font) ؛

روش های کشیدن رشته از نمای یک قلم عبور می کند. فونت ها در حافظه فلش آردوینو اعلام می شوند بنابراین SRAM گرانبها را اشغال نمی کنند. سه فونت ارائه شده است (کوچک ، متوسط و بزرگ). فقط در صورت استفاده از آنها به حافظه متصل شده و حافظه فلش را اشغال می کنند (هر کدام تقریباً 500 تا 2000 بایت).

"رنگ" متفاوت از کتابخانه U8g2 است. هنگامی که LCD پاک می شود ، پس زمینه تیره دارد. اگر MakeMark (یک متغیر جهانی) درست باشد ، طراحی با رنگ سفید انجام می شود. اگر MakeMark نادرست باشد ، طراحی در تاریکی انجام می شود.

برخی از روشها منحصر به UC1701 هستند:

SetInverted به جای سفید روی سیاه ، سیاه و سفید را ترسیم می کند.

void SetInverted (bool inv) ؛

روشنایی و کنتراست UC1701 توسط:

  • void SetContrast (مقدار uint8_t) ؛ // پیشنهاد شده است 14
  • void SetResistor (مقدار uint8_t) ؛ // پیشنهاد شده است 7

آنها به طرز نسبتاً نامطلوبی با هم کار می کنند.

SetEnabled LCD را خاموش می کند:

void SetEnabled (bool en) ؛

هنگام خواب 4uA طول می کشد. شما همچنین باید نور پس زمینه را خاموش کنید - آن را از یک پین نانو هدایت کنید. پس از فعالسازی مجدد ، UC1701 بازنشانی می شود. صفحه نمایش پاک می شود و Contrast و Resistor به مقادیر پیش فرض خود بازگردانده می شود.

بنابراین ، در نتیجه ، نمایشگرهای COG ارزان و اندازه مناسبی دارند. اتصال آنها به آردوینو آسان است.

توصیه شده: