עשה זאת בעצמך
שיעורי אמן, הוראות, טיפים שימושיים, מתכונים.
» » »כיצד לחבר תצוגת OLED I2C ל- ARDUINO
הקדמה: הצגת תצוגת OLED I2C 128 * 64/128 * 32.
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

הי בהיותי חובב - חובב אלקטרוניקה, אני בטוח שכל מה שאנחנו עושים זה צעצועים אלקטרוניים - מוצרים תוצרת בית, או פרויקטים גדולים, כולם מתוך סקרנות ועצלנות. הסקרנות מבקשת להבין ולהבין את העצום, הלא ידוע, להבין איך היא עובדת שם, מה היא עושה, איך היא נעה. ועצלנות ממציאה, על מנת לבוא עם זה, כדי לא לקום, לא בכושר, לא להרים, לא להתלכלך או משהו חשוב אחר.

מכיוון שרואה מידע טוב יותר מלהבין מה עומד לקרות במכשיר שלנו, או שכבר קרה או קורה, אנו בהחלט נרצה לקבל מידע שימושי מאוד זה מבקרי המיקרו שלנו, חיישנים או מכשירים אחרים. ואני, בכל מקרה, רוצה לקבל כל הודעה, כמו שאלות, אזהרות, תזכורות, סמיילים, כוכביות, לבבות וכדומה.

למי שיש לו גם רצון דומה, הנה מדריך מהיר לחיבור ובדיקת תצוגות OLED קטנות וזולות.
בשלב הבא, נדבר על אחד הדגמים הרבים הזמינים לדגמי רדיו של חזיר של תצוגות OLED הנשלטות על ידי שבב SSD1306, עם גודל מסך של 0.96 אינץ 'ורזולוציה של 128 * 64 או 128 * 32 פיקסלים. תצוגות אלה אידיאליות לעיצובים קטנים של רדיו חובבים ומוצרים תוצרת בית.
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

שלב 1: מושגי מפתח


נחבר אותו לארדואינו UNO / NANO, ובכן, ולתכנת, בהתאמה, נחבר אותו גם דרך ארדואינו.
  • OLED הוא דיודה פולטת אור אורגנית, כלומר מכשיר מוליכים למחצה העשוי מתרכובות אורגניות, שמתחיל לפלוט אור כאשר זרם חשמלי עובר דרכו.
  • ARDUINO היא פלטפורמה להדרכה ובניית מערכות אוטומציה ורובוטיקה.
  • ArduinoIDE היא סביבת פיתוח. זהו כלי תכנות Arduino בחינם.
  • I2C - מעגלים אינטגרטיביים, קו תקשורת בין-מעגל מעגלים.
  • מערכון, זה קוד, זו תוכנית - טרמינולוגיה של ארדואינו.

עקוב אחר ההוראות כדי להבין כיצד לחבר ולהגדיר כראוי תצוגת OLED לארduino וכיצד להציג הודעה משלך בתצוגה שלה.
אנחנו עושים הכל בצעדים.

שלב 2: אביזרים


נצטרך רק ארבעה דברים:
  • 1. תצוגת OLED עצמה היא 0.96 אינץ '(ניתן לקנות ב- Aliexpress או ב- eBay, - ארוך, אך זול!).
  • 2. ארדואינו UNO / Nano (באותו מקום בתצוגה).
  • 3. חיבור חוטים (שם).
  • 4. מחשב או מחשב נייד המותקנים בו ArduinoIDE.

כיצד לחבר תצוגת OLED I2C ל- ARDUINO

באופן כללי, קניית חלקים לפרויקטים שונים ב- Aliexpress ו- Ebay זה דבר מגניב מאוד, בזמן שאתה עוסק בפרויקט אחד, חלקים לפרויקט אחר כבר בדרך. העיקר לא לשכוח לבצע הזמנה.

שלב 3: חבר את הצג


התצוגה נשלטת על ידי שבב SSD1306, התומך בחמישה פרוטוקולי תקשורת ואחד מהם הוא I2C. נתונים על פרוטוקול זה מועברים בשני חוטים בלבד, וככל שפחות חוטים במקרה, כך ייטב, כך שהם מתאימים לנו היטב. אבל! ישנם מודולים עם פרוטוקול SPI ואפילו מיתוג פרוטוקול, לכן היזהר בקנייה של מודול זה.
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

מסקנות משומשות:
תצוגת OLED - SCL / SCK (שעון) ו- SDA (נתונים), כוח "פלוס" (VCC) וכוח "מינוס" (GND).
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

מסקנות משומשות:
ארדואינו UNO - SCL / SCK ב- A5 ו- SSD על A4, כוח "פלוס" (+ 5V) וכוח "מינוס" (GND).
חבר את התצוגה לארדואינו:
  • Vcc - 5V
  • GND - GND
  • SDA - A4
  • SCL - A5

כיצד לחבר תצוגת OLED I2C ל- ARDUINO

שלב 4: סורק I2C


לכל מכשיר באוטובוס I2C יש כתובת הקסדצימלית, אינך יכול לשנות אותו, הוא תפור בחוזקה, כל יצרן אחראי חייב לציין אותו איפשהו בתיק או בהוראות. ישנם מודולים עם מתגים וקופצים איתם ניתן לשנות את הכתובת, אבל ... אם המכשירים זולים, לכיעור, ייתכן שהיצרן לא יטרח להתמודד עם זוטא כזה, אז תצטרך לקבוע זאת בעצמך.

בסך הכל ניתן להשתמש עד 127 כתובות באוטובוס - 119 למכשירים ו 8 כתובות שירות. התקשורת מתבצעת בכתובות אלה.יש אדון, הוא מאסטר, אבל יש עבד, הוא גם עבד - אדונים שואלים, העוקבים מגיבים, הכל פשוט.
מכיוון שתצוגת ה- OLED שלנו משתמשת בפרוטוקול התקשורת I2C, וייתכן שלא ניתן לציין את הכתובת, אנו ננסה לגלות את הכתובת הזו ממש.

ניתן לעשות זאת על ידי הורדת סקיצה קצרה ללוח Arduino שלך עם חיבור OLED. אבל!
קח את הזמן שלך להעלות את הסקיצה לארדוינו מייד! נתחיל בהורדת "מנהל ההתקן", כלומר נחבר את הספריות, ובשביל זה נעבור ישר ל"שלב 5 "ואז נחזור ונמשיך.

שלב 4: המשך:


הורד CODE Finder_I2C_Hex_Address.ino, העלה ל- Arduino.
פתח את "צג ​​היציאה", קבע את המהירות על 9600 ואם הכל מחובר כראוי התוכנית תציג את כתובת המכשיר, במקרה שלי OLED עם הכתובת 0x3F.
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

שלב 5: הורד וחבר ספריות


בכדי שהכל יעבוד נכון, ולא היית צריך להמציא מחדש את הגלגל, אתה צריך לחבר כמה ספריות לסביבת ArduinoIDE, כלומר: ADAFRUIT GFX ו- ADAFRUIT SSD1306, הם נחוצים כדי שארדינו יוכל לתקשר באופן עצמאי עם התצוגה של OLED.
באפשרותך לחבר ספריות אלה על ידי ביצוע השלבים הבאים.
  • 1. ב- ArduinoIDE, עבור לתפריט Sketch.
  • 2. בחר "כלול ספריות".
  • 3. בחר "נהל ספריות" / ספריות מנוהלות.
  • 4. מצא את ADAFRUIT GFX והתקן אותם.
  • 5. מצא את ADAFRUIT SSD1306 והתקן אותם.

עם הגרסאות האחרונות של הספריות, התצוגה עבדה בשבילי בצורה עקומה, אולי זה כמובן בגלל עקמומיות הידיים, אבל אחרי שהתקנתי את הגרסאות הראשונות ביותר של הספריות הללו, הכל החל להופיע בצורה חלקה ויפה. משום מה הקווים של פושקין צצים בזכרונו:
... וניסיון, בן לטעויות קשות,
וגאונות, פרדוקסים ידידים.

דרך נוספת להתקין ספריות היא למצוא, להוריד ולהתקין ספריות אלה בעצמך.
לדוגמה לגיתוב:
https://github.com/adafruit/Adafruit-GFX-Library
https://github.com/adafruit/Adafruit_SSD1306

אלה אותן ספריות Adafruit, אך ניתן לחפש בספריות דומות בקלות במנועי חיפוש, לבקשת OLED I2C. חובבים רבים כותבים ספריות "לעצמם", ואז מעלים אותם לרשת. באיזו ספרייה להשתמש תלוי בך.
על מנת שהתצוגה תציג אותיות רוסיות, יש צורך גם בספריות מיוחדות, אך זהו נושא נפרד למאמר נפרד.
לאחר התקנת הספריות תוכלו לחזור לשלב 4 ולבסוף לגלות את הכתובת ההקסדצימלית של התצוגה שלכם.

שלב 6: בדיקת התצוגה


כדי לבדוק אם הכל עובד כצפוי, הרץ את דוגמת המבחן מ- ArduinoIDE.
לשם כך:
עבור לתיקייה> דוגמאות> SSD 1306> בחר 128x64 i2c
אם מופיעה שגיאה, נסה לבחור את SSD 1306> 128x32 i2c.
אם שוב שגיאה, נסה לשנות את כתובת I2C בשורה 61 של קוד ההדגמה והחלף אותה בכתובת התצוגה שלך, שקבעת בשלב 4.
אם השגיאה מתרחשת שוב, אתה יכול לנסות לערוך את הקובץ Adafruit_SSD1306.h, הוא ממוקם בתיקיה עם ספריות Arduino.
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

פתח את קובץ Adafruit_SSD1306.h בעורך טקסטים ומצא את השורות:
// # הגדירו SSD1306_128_64
# הגדר SSD1306_128_32
// # הגדר את SSD1306_96_16 

בטל את הפרק של הקו:
# הגדר SSD1306_128_64. 

זה צריך להיות כך:
# הגדר SSD1306_128_64
// # הגדיר SSD1306_128_32
// # הגדר את SSD1306_96_16

אם השגיאה שוב, יש לבדוק את נכונות החיבורים.
לאחר סיום ההורדה, תראה אנימציית מבחן על המסך, כלומר הגדרת בהצלחה את תצוגת ה- OLED שלך.

כשתיהנו מהאנימציה הזו תוכלו להמשיך לשלב הבא.

שלב 7: כתיבת הודעה משלך


כדי לכתוב הודעה משלך, צור תחילה סקיצה חדשה בסביבת התכנות ArduinoIDE.
בכותרת, אנו מחברים בין 4 ספריות:
# כלול 
# כלול 
# כלול 
# כלול 

ואז אנו כותבים את פרוטוקול האיפוס:
# הגדר את OLED_RESET 4
תצוגה של Adafruit_SSD1306 (OLED_RESET);

בהגדרת VOID, ציין את הכתובת ההקסדצימאלית של התצוגה 0x3C שלנו, שגילינו ב"שלב מס '4 ".
לאחר מכן, אתחל את התצוגה ונקה אותו:
display.begin (SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay ();

בשלב הבא, ב- VOID LOOP, אנו כותבים את הקוד הראשי, כלומר את המסר שלנו, אותו אנו רוצים להציג בתצוגה.
לשם כך, אנו מתארים את גודל הטקסט, צבע הטקסט, מיקום הסמן ולבסוף, מציגים הודעה באמצעות הפקודה println:
display.setTextSize (2);
display.setTextColor (לבן);
display.setCursor (0,0);
display.println ("כל הכבוד!");
display.display ();

בסוף, אל תשכח לכתוב הצגתכך שהתמונה תופיע על המסך, אחרת תקבל ריק.
אם עשית הכל נכון, תופיע הודעה בתצוגה.
כיצד לחבר תצוגת OLED I2C ל- ARDUINO

להלן קוד ההתחלה_עם_ארדינו_OLED.ino של התוכנית שלנו:
[946 ב] (הורדות: 1100)
הערות (3)
  1. טאטושקה
    #1 טאטושקה אורחים 14 בנובמבר 2018 21:18
    0
    תודה חבר! זה הסקיצה הראשונה שהועלתי וההיכרות שלי עם ארדואינו. לא סופר מהבהב מהבהב))
  2. אלישר
    #2 אלישר אורחים 28 ביולי, 2019 19:35
    0
    והיכן להוריד קוד Finder_I2C_Hex_Address.ino?
    1. אל
      #3 אל אורחים 14 באוגוסט, 2019 12:51
      0
      מתחת לתמונה יש קישור "הנה קוד ההתחלה עם_ארדינו_OLED.ino של התוכנית שלנו:"

קרא גם

קודי שגיאה למכונות כביסה