جدول المحتويات:

شاشة OLED I2C دروس Arduino / NodeMCU: 15 خطوة
شاشة OLED I2C دروس Arduino / NodeMCU: 15 خطوة

فيديو: شاشة OLED I2C دروس Arduino / NodeMCU: 15 خطوة

فيديو: شاشة OLED I2C دروس Arduino / NodeMCU: 15 خطوة
فيديو: Master OLED Displays with Arduino, ESP32: A Complete Guide 2024, يوليو
Anonim
Image
Image

أول برنامج تكتبه عندما تبدأ في تعلم أ

لغة البرمجة الجديدة هي: "Hello World!".

البرنامج نفسه لا يفعل شيئًا أكثر من طباعة نص "Hello World" على الشاشة.

لذا ، كيف نجعل Arduino الخاص بنا يعرض "Hello World!"؟

في هذا الفيديو ، سأوضح لك كيفية البدء في الشاشات الصغيرة 0.91 (128x32) و 0.96 (128x64) I2C OLED.

هناك مئات البرامج التعليمية على الويب تشرح نفس الشيء بطرق مختلفة ، لكن لم أجد واحدة تخبرني بكل شيء عن شاشة OLED وكيفية استخدامها في سيناريوهات مختلفة. استغرق الأمر مني بعض الوقت للعمل على كل شيء. لذلك ، اعتقدت أنه يجب علي إنشاء برنامج تعليمي حول ما تعلمته والجمع بين جميع الميزات والطرق التي يمكن من خلالها استخدام شاشات OLED في مشاريعنا.

الخطوة 1: الأشياء التي سوف نتعلمها اليوم

متطلبات الأجهزة
متطلبات الأجهزة

في هذا الفيديو سنتحدث عن:

- ما هي شاشة OLED؟

- ثم سنلقي نظرة فاحصة على شاشات 0.91 (128 × 32) و 0.96 (128 × 64) I2C OLED

- بعد ذلك سنتحدث عن تثبيت مكتبة Adafruit على Arduino IDE الخاص بك

- ثم سنقوم بتوصيل NodeMCU و Arduino بشاشة OLED

- بعد ذلك سنلقي نظرة على الكود ونعرض بعض الرسومات والنصوص عليه

- سنتحدث أيضًا عن تطبيق الخطوط المخصصة وعرض الصور

- ثم سنقوم بتوصيل OLEDs متعددة بوحدة تحكم دقيقة باستخدام I2C Multiplexer

- أخيرًا ، سنتحدث عن بعض الأخطاء الشائعة التي يرتكبها الأشخاص أثناء استخدام شاشات OLED

الخطوة 2: متطلبات الأجهزة

في هذا البرنامج التعليمي نحتاج إلى:

- لوح توصيل

- شاشات I2C OLED مقاس 0.91 بوصة (128 × 32) و 0.96 بوصة (128 × 64)

- Arduino UNO / NANO (كل ما هو سهل)

- NodeMCU

- معدد TCA9548A I2C

- عدد قليل من الكابلات المتصلة

- وكابل USB لتحميل الكود

الخطوة 3: ما هي شاشة OLED؟

ما هي شاشة OLED؟
ما هي شاشة OLED؟
ما هي شاشة OLED؟
ما هي شاشة OLED؟

OLED أو الصمام الثنائي العضوي الباعث للضوء هو مصدر ضوئي

الصمام الثنائي (LED) حيث تكون الطبقة الانبعاثية الكهربائية عبارة عن فيلم من مركب عضوي (ملايين من مصابيح LED الصغيرة) ينبعث منها الضوء استجابة للتيار الكهربائي.

تُستخدم OLEDs لإنشاء شاشات رقمية في أجهزة مثل شاشات التلفزيون وشاشات الكمبيوتر والأنظمة المحمولة مثل الهواتف المحمولة وأجهزة الألعاب المحمولة وأجهزة المساعد الرقمي الشخصي. تعمل شاشة OLED بدون إضاءة خلفية لأنها تصدر ضوءًا مرئيًا.

الخطوة الرابعة:

صورة
صورة

هناك العديد من أنواع شاشات OLED المتاحة في

السوق على أساس

- الأحجام

- لون

- العلامات التجارية

- بروتوكول

- SPI (الواجهة المحيطية التسلسلية) أو I2C

- نظام التحكم في المصفوفة السلبية (PMOLED) أو المصفوفة النشطة (AMOLED)

في هذا البرنامج التعليمي ، سأتحدث عن توصيل ملف

يعرض اللون الأزرق 0.91 (128x32 OLED) و 0.96 (128x64 OLED) I2C OLDE على Arduino NANO و NodeMCU. تستخدم تقنية ناقل I2C فقط دبابيس من MCU لذلك لدينا أكوام متاحة لأجهزة الاستشعار الأخرى.

الخطوة 5: نظرة فاحصة

نظرة اقرب
نظرة اقرب
نظرة اقرب
نظرة اقرب
نظرة اقرب
نظرة اقرب

لنأخذ أقرب في هاتين الشاشتين.

يوجد في الجزء الخلفي من هذه الشاشات أكوام من المكثفات والمقاومات SMD ملحومة على متن الطائرة ؛ ولكن نظرًا لأنه جهاز I2C ، فإننا نهتم فقط بهذين المسامير (SCL و SDA)

تتصل الشاشة بـ Arduino باستخدام أربعة أسلاك فقط - اثنان للطاقة (VCC و GND) واثنان للبيانات (الساعة التسلسلية SCL و

SDA للبيانات التسلسلية) ، مما يجعل الأسلاك بسيطة للغاية. اتصال البيانات هو I2C (I²C أو IIC أو Inter-Integrated Circuit) وتسمى هذه الواجهة أيضًا TWI (واجهة سلكية).

- يمكن أن تكون المسامير الموجودة على اللوحة بترتيب مختلف ، لذا تحقق دائمًا ثلاث مرات قبل ربطها بمشروعك.

- يتراوح جهد التشغيل بين 3 فولت إلى 5 فولت ، ولكن من الأفضل استخدام الإرشادات الواردة في ورقة بيانات الشركة المصنعة.

- نحتاج أحيانًا إلى استخدام شاشتين في مشاريعنا. إذن ، كيف يمكننا تحقيق ذلك؟

الحيلة هي الحصول على عنوان قابل للتكوين على شاشتك. تحتوي هذه الوحدة على عنوان قابل للتكوين بين 0x78 و 0x7A. فقط عن طريق فك لحام المقاوم 0Ohm من جانب وربطه بالجانب الآخر أو فقط عن طريق وضع لحام عالمي يمكننا تغيير العنوان. سنتحدث عن ذلك بعمق عندما نربط شاشات متعددة بـ Arduino في القسم الأخير من هذا البرنامج التعليمي.

في الصورة ، تبدو هذه الشاشات كبيرة جدًا. لكن ، من الناحية العملية ، فهي صغيرة جدًا. إنها مصنوعة من 128 × 32/64 بكسل فردي OLED ولا تتطلب أي إضاءة خلفية. فقط قم بإلقاء نظرة على هذا ولاحظ مدى صغر حجمه. على الرغم من صغر حجمها ، إلا أنها يمكن أن تكون مفيدة جدًا في أي مشاريع إلكترونية.

الخطوة 6: المكتبة

مكتبة
مكتبة
مكتبة
مكتبة
مكتبة
مكتبة

هناك العديد من المكتبات المتاحة للتحكم في هذه

يعرض. استخدمت في الماضي "مكتبة u8glib" ولكني أجد مكتبة AdaFruit سهلة الفهم والاستخدام في مشاريعنا. لذلك ، سأستخدم مكتبة AdaFruit في هذا البرنامج التعليمي.

للتحكم في شاشة OLED ، ستحتاج إلى مكتبة "adafruit_GFX.h" ومكتبة "adafruit_SSD1306.h".

هناك طريقتان يمكنك من خلالهما تنزيل المكتبة وتثبيتها على Arduino IDE.

طريقة 1

انتقل إلى "مدير المكتبة" وابحث عن "adafruit_SSD1306" و "adafruit_gfx"

حدد أحدث إصدار واضغط على زر التثبيت.

بمجرد التثبيت ، يمكنك استخدام هذه المكتبات في برنامجك.

الطريقة الثانية

يمكن أيضًا تنزيل هاتين المكتبتين من جيثب (تحتاج كلاهما):

سأقدم الروابط في الوصف أدناه.

مكتبة العرض:

مكتبة GFX:

بمجرد التنزيل ، انسخ المجلد Adafruit_SSD1306-master من الملف المضغوط الذي تم تنزيله إلى مجلد مكتبات Arduino. يوجد هذا المجلد عادةً في المستندات> Arduino> مكتبات على أنظمة Windows. على نظام Linux ، يوجد عادةً في المجلد الرئيسي> Arduino> المكتبات. أخيرًا في مجلد مكتبة Arduino ، أعد تسمية المجلد Adafruit_SSD1306-master إلى Adafruit_SSD1306. حتى لو لم تقم بإعادة التسمية فلا بأس بذلك.

الخطوة السابعة:

صورة
صورة

الآن ، دعنا نلقي نظرة على "Adafruit_SSD1306.h"

ملف

شيئين نحتاج إلى معرفتهما في هذه المكتبة:

1. إذا كنت ترغب في استخدام الشاشة الأصغر حجمًا ، فاستخدم 128_32 الافتراضي وإلا بالنسبة لتعليق العرض الأكبر ، استخدم 128_32 وأزل التعليق عن 128_64

2. إذا كنت قد قمت بلحام عنوان 0x7A على اللوحة (والذي سنتحدث عنه لاحقًا) ، فاستخدم عنوان 7 بت 0x3D للشاشات الأكبر ، وإلا استخدم العنوان الافتراضي 0x3C. بالنسبة للشاشات الأصغر يكون العنوان هو 0x3C.

الخطوة 8: توصيل أسلاك 128 X 64/32 OLED

الأسلاك 128 X 64/32 OLEDs
الأسلاك 128 X 64/32 OLEDs

لنبدأ بتوصيل NodeMCU بالشاشة.

أول وأهم شيء يجب ملاحظته هو أن بعض الشاشات قد تحتوي على دبابيس طاقة GND و VCC متبادلة حولها. تحقق من شاشتك للتأكد من أنها مماثلة للصورة. إذا تم تبديل الدبابيس ، فتأكد من تغيير التوصيلات بـ Arduino أو NodeMCU.

- الأسلاك NodeMCU OLED

OLED VCC - NodeMCU 3.3 فولت

OLED GND - NodeMCU GND

OLED SCL - NodeMCU D1

OLED SDA - NodeMCU D2

- أسلاك اردوينو أونو OLED

OLED VCC - اردوينو 5 فولت

OLED GND - اردوينو GND

OLED SCL - اردوينو أونو A5

OLED SDA - Arduino Uno A4

- اردوينو MEGA 2560 OLED Wiring

OLED VCC - اردوينو 5 فولت

OLED GND - اردوينو GND

OLED SCL - Arduino MEGA 2560 pin 21

OLED SDA - Arduino MEGA 2560 pin 20

الخطوة 9: الكود

الشفرة
الشفرة
الشفرة
الشفرة
الشفرة
الشفرة
الشفرة
الشفرة

تأتي مكتبة Adafruit مع أمثلة جيدة حقًا لكليهما

شاشات 128 × 32 و 128 × 64.

توجد المكتبة ضمن ملف> أمثلة> Adafruit SSD1306> ثم نوع العرض في Arduino IDE.

سنستخدم مثال 128x32 I2C وسنقوم بتعديله للعمل مع قبضة عرض 128x64 و 128x32 من خلال ربطه بـ Arduino ثم بلوحة NodeMCU.

يبدأ الكود بتضمين كل من مكتبات Adafruit. في هذا البرنامج التعليمي ، سأركز فقط على تلك الأجزاء من الكود والتي تعتبر ضرورية لنا للتحميل على كل من اللوحات والشاشات. إذا كنت تريد معرفة المزيد عن الكود ، فيرجى ترك تعليق على مدونتي أو في قسم التعليقات أدناه وسأحاول الرد عليك.

- سنقوم أولاً بتحميل الكود على Arduino Nano متصل بشاشة 128x32.

يمكننا استخدام الكود كما هو دون أي تعديلات.

يستخدم 128 × 32 عنوان 0x3C ، لذا يبدو هذا الجزء جيدًا هنا ، ويتيح التحقق من مكتبة الرأس بشكل مزدوج ، ونعم أيضًا باستخدام عنوان 0x3C ونوع العرض هو 128 × 32.

- الآن دعنا نربط شاشة 128x64. كما نعلم ، يستخدم عنوان 0x3C افتراضيًا ، لذلك لا نحتاج إلى تحديث العنوان في الكود أو المكتبة.

نحتاج فقط إلى التعليق على 128_32 وإلغاء التعليق على 128_64 في مكتبة الرأس وتغيير LCDHEIGHT إلى 64 في الكود الخاص بنا.

- الآن لتشغيل نفس الكود على NodeMCU ، نحتاج إلى تغيير سطر آخر في الكود الخاص بنا.

"#define OLED_RESET 4"> "#define OLED_RESET LED_BUILTIN" باقي الكود هو نفسه Arduino

إلى حد كبير لعرض أي شيء نحتاجه أولاً لمسح الشاشة السابقة باستخدام

display.clearDisplay () ، // مسح المخزن المؤقت

ثم ارسم الكائن

testdrawline () ؛ // ارسم خطا

أظهرها على الجهاز

display.display () ، // اجعلها مرئية على أجهزة العرض!

انتظر بعض الوقت قبل عرض العنصر التالي.

تأخير (2000) ؛ // انتظر لمدة ثانيتين

في هذا المثال ، نعرض بعض العناصر مثل النص ، والخطوط ، والدوائر ، وتمرير النص ، والمثلثات ، والمزيد. انطلق واستخدم خيالك واعرض كل ما تريد على هذه الشاشات الصغيرة.

الخطوة 10: تخصيص النص وإضافة الصور

تخصيص النص وإضافة الصور
تخصيص النص وإضافة الصور
تخصيص النص وإضافة الصور
تخصيص النص وإضافة الصور
تخصيص النص وإضافة الصور
تخصيص النص وإضافة الصور

تحتاج التعليمات البرمجية أحيانًا إلى عرض الخطوط المخصصة وملفات

الصور. إذا كنت جيدًا جدًا في رسم الخرائط ، فأنت تحتاج فقط إلى إنشاء مصفوفات بايت عن طريق تشغيل أو إيقاف تشغيل مصابيح LED الصغيرة للشاشة لإنشاء خطوط وصور مخصصة.

ومع ذلك ، فأنا لست جيدًا جدًا في إجراء هذه التعيينات ولا أريد قضاء ساعات في إنشاء جداول خرائط البت.

فما هي الخيارات المتاحة أمامي؟ عادةً ما أستخدم موقعين لإنشاء خطوط وصور مخصصة. يتم توفير الروابط في الوصف أدناه.

خطوط عادية

انتقل إلى موقع محول الخطوط ، وحدد عائلة الخطوط ، والنمط ، والحجم ، وإصدار المكتبة باسم "Adafruit GFX Font" ثم اضغط على الزر "إنشاء". على الجانب الأيمن من هذه الصفحة ، يمكنك أن ترى كيف سيبدو الخط الخاص بك على الشاشة الفعلية.

بناءً على اختيارك ، تنشئ صفحة الويب ملف رأس الخطوط. قم بإنشاء ملف يسمى "modified_font.h" في نفس المجلد حيث توجد التعليمات البرمجية الخاصة بك وانسخ الرمز الذي تم إنشاؤه فيه واحفظه. ثم تحتاج فقط إلى تضمين ملف الرأس في التعليمات البرمجية الخاصة بك لاستخدام الخط المخصص.

# تضمين "modified_font.h"

بعد ذلك ، تحتاج فقط إلى ضبط الخط قبل عرض النص لتطبيق الخط المخصص عليه.

display.setFont (& Your_Fonts_Name) ؛

يمكنك الحصول على اسم الخط من ملف الرأس الذي أضفته للتو إلى مشروعك. هذا كل شيء ، سهل.

تعتبر الذاكرة دائمًا مصدر قلق أثناء استخدام الخطوط المخصصة ، لذلك ضع في اعتبارك دائمًا وحدات البايت التي ستستهلكها الذاكرة. فقط تذكر أن Arduino UNO يحتوي على 32 كيلو بايت فقط من الذاكرة.

صور مخصصة

لعرض صورة نقطية على شاشتك ، تحتاج أولاً إلى إنشاء صورة بحجم 128 × 64/32.

أنا أستخدم "MS Paint" القديم الجيد لإنشاء صورة نقطية بحجم 128 × 64 والتي سأقوم بتحميلها بعد ذلك إلى موقع محول الصور هذا. يقوم موقع الويب بتحويل الصور إلى سلاسل بايت ، والتي يمكن استخدامها مع شاشات Arduino و OLED.

ابدأ بتحميل الصورة على الموقع. ثم ضع علامة على مربع الاختيار "عكس ألوان الصورة" وقم بتغيير "تنسيق كود الإخراج" إلى "كود Arduino" ثم حدد الاتجاه واضغط على زر "إنشاء رمز" لإنشاء مجموعة البايت. يوضح لك قسم "المعاينة" كيف ستبدو صورتك على الشاشة الفعلية.

لقد قمت بتضمين الكود مع هذا البرنامج التعليمي الذي يمكنك استخدامه لعرض صورك. تحتاج فقط إلى استبدال المصفوفة الموجودة في الكود الخاص بي بالمصفوفة التي أنشأتها للتو ثم تحميلها على Arduino.

الخطوة 11: توصيل 2 شاشات

توصيل 2 يعرض
توصيل 2 يعرض
توصيل 2 يعرض
توصيل 2 يعرض

يعد توصيل شاشتين بحجم 128 × 64 بمشروعك أمرًا سهلاً.

تحتاج فقط إلى إلغاء تثبيت المقاوم 0Ohm من عنوان 0x78 ووضعه على 0x7A ثم استخدام عنوان 0x3D في الرمز الخاص بك بدلاً من 0x3C الافتراضي.

يجب أن تتساءل عن سبب استخدامنا لعنوان 0x3C و 0x3D وليس 0x78 و 0x7A الفعليين. يقبل Arduino عنوان 7 بت وليس عناوين الأجهزة 8 بت. لذا ، نحتاج أولاً إلى تحويل العنوان المكون من 8 بتات إلى ثنائي ، ثم تقطيع الجزء الأقل أهمية للحصول على البتات السبعة. ثم قم بتحويل 7 بت إلى HEX للحصول على عناوين 0x3C أو 0x3D التي تدخلها في التعليمات البرمجية الخاصة بك.

أولاً ، قم بتهيئة العرض بإعطائه اسمًا فريدًا:

Adafruit_SSD1306 display1 (OLED_REST) ؛

Adafruit_SSD1306 display2 (OLED_REST) ؛

ثم في الكود الخاص بك ، استخدم العرض 1 والعرض 2 لاستدعاء عبارات البدء مع عناوين الجهاز الموجودة فيها:

display1.begin (SSD1306_SWITCHCAPVCC ، 0x3C) ؛ // عرض عنوان المرجع الأول 0x3C

display2.begin (SSD1306_SWITCHCAPVCC ، 0x3D) ؛ // عرض 2 عنوان المرجع 0x3D

هذا كل شيء ، يمكنك الآن المضي قدمًا والقيام بكل ما تريد باستخدام إما Display 1 أو Display 2 في بقية التعليمات البرمجية الخاصة بك. لقد قدمت مثالا مع هذا البرنامج التعليمي.

الأسلاك هي نفسها تمامًا كما فعلنا من قبل ، تحتاج فقط إلى إضافة شاشة أخرى إلى نفس دبابيس I2C في Arduino أو NodeMCU. بناءً على العناوين ، ترسل MCU البيانات على خط بيانات I2C.

الخطوة 12: توصيل أكثر من شاشتين

توصيل أكثر من شاشتي عرض
توصيل أكثر من شاشتي عرض
توصيل أكثر من شاشتي عرض
توصيل أكثر من شاشتي عرض
توصيل أكثر من شاشتي عرض
توصيل أكثر من شاشتي عرض

الآن ، ماذا لو كنت تريد توصيل أكثر من شاشتين؟

يحتوي Arduino على عدد محدود من المسامير ، وبالتالي لا يمكن أن يكون لديك أكثر من عدد معين من الدروع المرفقة به. علاوة على ذلك ، لديها زوج واحد فقط من حافلات I2C.

إذن ، كيف يمكننا توصيل أكثر من شاشتين من شاشات I2C بأردوينو؟ الحيلة هي استخدام معدد TCA9548.

يسمح TCA9548 لوحدة تحكم صغيرة واحدة بالاتصال بما يصل إلى '64 مستشعرًا' جميعها بنفس عنوان I2C أو مختلف عن طريق تعيين قناة فريدة لكل ناقل فرعي تابع لجهاز الاستشعار.

عندما نتحدث عن إرسال البيانات عبر سلكين إلى أجهزة متعددة ، نحتاج بعد ذلك إلى طريقة لمعالجتها. إنه نفس ساعي البريد الذي يأتي على طريق واحد ويسقط حزم البريد إلى منازل مختلفة لأن لديهم عناوين مختلفة مكتوبة عليها.

يتصل المضاعف بخطوط 3V3 و GND و SDA و SCL لوحدة التحكم الصغيرة. المستشعرات التابعة متصلة بواحد من ثمانية منافذ SCL / SDA التابعة على اللوحة. يتم تحديد القنوات عن طريق إرسال TCA9548A عنوان I2C الخاص به (0x70 {افتراضي} - 0x77) متبوعًا برقم القناة (0b00000001 - 0b10000000). يمكن أن يكون لديك بحد أقصى 8 من معددات الإرسال متصلة ببعضها البعض على عناوين 0x70-0x77 للتحكم في 64 من نفس أجزاء I2C المعنونة. من خلال توصيل بتات العناوين الثلاثة A0 و A1 و A2 بـ VIN ، يمكنك الحصول على مجموعة مختلفة من العناوين. سأشرح هذا بالتفصيل في تعليمي القادم على لوحة اندلاع TCA9548A. في الوقت الحالي ، دعنا نربط 8 OLEDs بهذه اللوحة ونلقي نظرة سريعة على الكود.

اتصال:

VIN إلى 5V (أو 3.3V)

GND على الأرض

SCL إلى ساعة I2C

SDA إلى بيانات I2C

ثم قم بتوصيل المستشعرات إلى VIN و GND واستخدم أحد حافلات SCn / SDn متعددة الإرسال

الآن ، يتيح لك الرمز الدولي البدء بتضمين مكتبة "Wire" وتحديد عنوان معددات الإرسال.

# تضمين "Wire.h"

#يشمل

#define MUX_Address 0x70 // عنوان التشفير TCA9548A

ثم نحتاج إلى تحديد المنفذ الذي نريد الاتصال به وإرسال البيانات الموجودة عليه باستخدام هذه الوظيفة:

باطل tcaselect (uint8_t i) {

إذا (i> 7) يعود ؛

Wire.beginTransmission (MUX_Address) ؛

Wire.write (1 << i) ؛

Wire.endTransmission () ؛

}

بعد ذلك سنقوم بتهيئة العرض في قسم الإعداد عن طريق استدعاء "u8g.begin ()؛" لكل شاشة متصلة بـ MUX "tcaselect (i) ؛"

بمجرد التهيئة ، يمكننا بعد ذلك القيام بكل ما نريد فقط من خلال استدعاء الوظيفة "tcaselect (i)؛" حيث "i" هي قيمة ناقل متعدد الإرسال ثم إرسال البيانات والساعة وفقًا لذلك.

الخطوة 13: المزايا والعيوب

المميزات والعيوب
المميزات والعيوب

صورة OLED جميلة. ومع ذلك ، فإن OLEDs لديها أيضًا

سلبيات. نظرًا لأن شاشات OLED تحتوي على مواد عضوية ، فإن عمرها الافتراضي يكون أقصر من شاشات LCD. بالإضافة إلى ذلك ، تتعرض العديد من شاشات OLED للاحتراق بعد عرض نفس الصورة لفترة طويلة. بعد الاحتراق ، تظل الصورة على الشاشة حتى بعد إظهار صورة أخرى. لذا تأكد من استمرار تحديث الشاشة كل بضع ثوانٍ. يمكن للمياه أن تلحق الضرر على الفور بالمواد العضوية لهذه الشاشات.

مزايا

لا حاجة للإضاءة الخلفية

شاشات العرض رفيعة جدًا وخفيفة الوزن

استهلاك منخفض للطاقة

زوايا المشاهدة أوسع من شاشات LCD

السطوع والتباين رائعان

سرعة عالية ووقت استجابة منخفض

لون أسود عميق

سلبيات

تكنولوجيا مكلفة

دورة حياة قصيرة

من المرجح أن تحترق OLEDS

الأضرار الناجمة عن المياه

الخطوة 14: الأخطاء الشائعة

الأخطاء الشائعة
الأخطاء الشائعة

في الختام ، دعنا نتحدث عن بعض الأخطاء الشائعة

يقوم الأشخاص بعملهم أثناء استخدام هذه الشاشات:

- تحقق دائمًا من المسامير ثلاث مرات قبل استخدامها في مشروعك

- اختر عنوان المكتبة الصحيح في ملف الرأس وفي التعليمات البرمجية الخاصة بك

#define SSD1306_I2C_ADDRESS 0x3C // في Adafruit_SSD1306.h

و

display.begin (SSD1306_SWITCHCAPVCC ، 0x3C) ؛ // في التعليمات البرمجية الخاصة بك

إذا كان العنوان خاطئًا ، فلن يعرض OLED أي شيء

- يجب تغيير حجم العرض في برنامج التشغيل قبل استخدامه. إذا لم يتم تغييره ، فستتلقى رسالة خطأ عند محاولة التحقق من الرمز

# Error ("الارتفاع غير صحيح ، الرجاء إصلاح Adafruit_SSD1306.h!") ؛

- إذا كنت تستخدم NodeMCU ، فتأكد من استبدال OLED_RESET من 4 إلى LED_BUILTIN

#define OLED_RESET LED_BUILTIN

لدي أشخاص يصنعون كل أنواع الأشياء باستخدام شاشة OLED هذه. حتى أن البعض صنع ألعاب الفيديو وجميعها. أنا حقًا لست مهتمًا بصنع لعبة فيديو باستخدام هذه الشاشة الصغيرة. ومع ذلك ، سأتركك الآن لتستكشف خيالك وتخرج بأفكار مذهلة.

الخطوة 15: الروابط

- المدونة:

- أضف صورة:

- نص مخصص:

- مكتبة عرض Adafruit:

- مكتبة Adafruit GFX:

- مكتبة u8glib: https://code.google.com/archive/p/u8glib/ أو

إذا كنت ترغب في استخدام شاشة أصغر ، فاستخدم 128_32 الافتراضي وإلا بالنسبة لتعليق العرض الأكبر ، فإن 128_32 وإلغاء التعليق 128X64 NO_ACK في الكود الخاص بك (فقط قم بإلغاء التعليق على نوع الشاشة التي تستخدمها) (الخطوط موجودة في مكتبة الخطوط)

موصى به: