Mündəricat:

OLED I2C Ekran Arduino/NodeMCU Təlimatı: 15 addım
OLED I2C Ekran Arduino/NodeMCU Təlimatı: 15 addım

Video: OLED I2C Ekran Arduino/NodeMCU Təlimatı: 15 addım

Video: OLED I2C Ekran Arduino/NodeMCU Təlimatı: 15 addım
Video: Using LCD1602 or LCD2004 with ESP32 2024, Iyul
Anonim
Image
Image

A öyrənməyə başlayanda yazdığınız ilk proqram a

yeni proqramlaşdırma dili: "Salam Dünya!".

Proqramın özü ekranda "Hello World" mətnini çap etməkdən başqa bir şey etmir.

Beləliklə, Arduinomuzu "Salam Dünya!" Necə göstərə bilərik?

Bu videoda, kiçik 0.91 (128x32) və 0.96 (128x64) I2C OLED ekranlara necə başlayacağınızı sizə göstərəcəyəm.

İnternetdə eyni şeyi fərqli yollarla izah edən 100 -lər var, amma mənə OLED ekranı və fərqli ssenarilərdə necə istifadə ediləcəyini izah edən birini tapa bilmədim. Hər şeyi həll etmək üçün bir az vaxt lazım oldu. Beləliklə, öyrəndiklərimlə əlaqədar bir dərslik yaratmalı və OLED ekranların layihələrimizdə istifadə olunmasının bütün xüsusiyyətlərini və yollarını birləşdirməliyəm.

Addım 1: Bu gün öyrənəcəyimiz şeylər

Avadanlıq Tələbi
Avadanlıq Tələbi

Bu videoda bəhs edəcəyik:

- OLED ekran nədir?

- Sonra 0.91 (128x32) və 0.96 (128x64) I2C OLED displeylərinə daha yaxından baxacağıq.

- Sonra Adafruit Kitabxanasını Arduino IDE -yə quraşdırmaqdan bəhs edəcəyik

- Sonra NodeMCU və Arduino'yu bir OLED ekrana bağlayacağıq

- Sonra kodu nəzərdən keçirəcəyik və üzərində bir neçə qrafik və mətn göstərəcəyik

- Xüsusi Şriftlərin tətbiqi və Şəkillərin göstərilməsi haqqında da danışacağıq

- Sonra I2C Multiplexer istifadə edərək birdən çox OLED-ni mikro nəzarətçiyə bağlayacağıq

- Nəhayət, insanların OLED ekranlardan istifadə edərkən etdikləri bir neçə ümumi səhvdən bəhs edəcəyik

Addım 2: Avadanlıq Tələbi

Bu dərs üçün bizə lazımdır:

- Çörək lövhəsi

- 0.91 "(128x32) və 0.96" (128x64) I2C OLED ekranlar

- Arduino UNO/NANO (lazım olan hər şey)

- NodeMCU

- TCA9548A I2C multiplexer

- Bir neçə Bağlayıcı Kabel

- və kodu yükləmək üçün USB kabeli

Addım 3: OLED Ekran nədir?

OLED Ekran nədir?
OLED Ekran nədir?
OLED Ekran nədir?
OLED Ekran nədir?

OLED və ya üzvi işıq yayan diod işıq yayan bir cihazdır

emissiv elektroluminescent təbəqənin elektrik cərəyanına cavab olaraq işıq yayan üzvi birləşmə (milyonlarla kiçik LED işıq) filmi olduğu diod (LED).

OLED-lər televizor ekranları, kompüter monitorları, cib telefonları, əl oyun konsolları və PDA kimi portativ sistemlər kimi cihazlarda rəqəmsal ekranlar yaratmaq üçün istifadə olunur. OLED displey arxa işıqsız işləyir, çünki görünən işıq saçır.

Addım 4:

Şəkil
Şəkil

Proqramda bir çox növ OLED displey mövcuddur

bazarlarına əsaslanaraq

- Ölçülər

- Rəng

- Markalar

- Protokol

- SPI (Serial Periferik İnterfeys) və ya I2C

-Passiv matris (PMOLED) və ya aktiv matris (AMOLED) idarəetmə sxemi

Bu dərslikdə, bağlama haqqında danışacağam

mavi rəng 0.91 (128x32 OLED) və 0.96 (128x64 OLED) I2C OLDE Arduino NANO və NodeMCU -da göstərilir. I2C avtobus texnologiyası MCU -nun yalnız 2 pinindən istifadə edir, buna görə digər sensorlar üçün yığınlarımız var.

Addım 5: Daha yaxından baxın

Daha yaxından baxın
Daha yaxından baxın
Daha yaxından baxın
Daha yaxından baxın
Daha yaxından baxın
Daha yaxından baxın

Bu iki ekrana daha yaxından baxaq.

Bu ekranların arxasında, göyərtədə lehimli SMD kondansatörləri və rezistorlar yığınları var; lakin, bir I2C cihazı olduğu üçün yalnız bu 2 pin haqqında düşünürük (SCL və SDA)

Ekran Arduino -ya yalnız dörd tel istifadə edərək bağlanır - ikisi güc (VCC və GND) və ikisi məlumat üçün (seriyalı saat SCL və

serial məlumatları SDA), naqilləri çox sadə edir. Məlumat bağlantısı I2C (I²C, IIC və ya İnteqrasiya edilmiş Dövrə) və bu interfeysə TWI (İki Telli Arayüz) də deyilir.

- Bort sancaqları fərqli qaydada ola bilər, buna görə də layihənizə bağlamadan əvvəl həmişə üç dəfə yoxlayın.

- İşləmə gərginliyi 3v -5v arasındadır, lakin istehsalçının məlumat cədvəlindəki təlimatları istifadə etmək daha yaxşıdır.

- Bəzən layihələrimizdə 2 displeydən istifadə etməliyik. Yaxşı, buna necə nail ola bilərik?

Hiylə, ekranınızda konfiqurasiya edilə bilən bir ünvana sahib olmaqdır. Bu cihaz 0x78 ilə 0x7A arasında konfiqurasiya edilə bilən bir ünvana malikdir. 0Ohm rezistorunu bir tərəfdən açaraq digər tərəfə yandıraraq və ya qlobal bir lehim qoyaraq ünvanı dəyişə bilərik. Bu təlimatın sonrakı hissəsində bir çox ekranı Arduinoya bağladıqda bu barədə ətraflı danışacağıq.

Şəkildə bu ekranlar çox böyük görünür. Ancaq praktik olaraq kiçikdirlər. 128 x 32/64 fərdi OLED piksellərindən hazırlanmışdır və heç bir arxa işığa ehtiyac yoxdur. Yalnız buna bir baxın və nə qədər kiçik olduğunu görün. Kiçik olmalarına baxmayaraq, hər hansı bir elektron layihədə çox faydalı ola bilərlər.

Addım 6: Kitabxana

Kitabxana
Kitabxana
Kitabxana
Kitabxana
Kitabxana
Kitabxana

Bunları idarə etmək üçün bir neçə kitabxana mövcuddur

göstərir. Keçmişdə "u8glib kitabxanası" ndan istifadə etmişəm, amma AdaFruit kitabxanasını layihələrimizdə başa düşmək və istifadə etmək çox asandır. Beləliklə, bu dərsdə AdaFruit kitabxanasından istifadə edəcəyəm.

OLED ekranını idarə etmək üçün "adafruit_GFX.h" kitabxanasına və "adafruit_SSD1306.h" kitabxanasına ehtiyacınız olacaq.

Kitabxananı Arduino IDE -yə yükləyib yükləməyin iki yolu var.

Metod 1

"Kitabxana meneceri" nə gedin və "adafruit_SSD1306" və "adafruit_gfx" axtarın.

Ən son versiyanı seçin və Quraşdır düyməsini vurun.

Yüklədikdən sonra bu kitabxanaları proqramınızda istifadə edə bilərsiniz.

Metod 2

Bu iki kitabxana github -dan da endirilə bilər (hər ikisinə ehtiyacınız var):

Aşağıdakı təsvirdəki bağlantıları verəcəyəm.

Ekran kitabxanası:

GFX kitabxanası:

Yükləndikdən sonra Adafruit_SSD1306-master qovluğunu yüklənmiş sıxılmış fayldan Arduino kitabxana qovluğuna kopyalayın. Bu qovluq ümumiyyətlə Windows sistemlərindəki Sənədlər> Arduino> kitabxanalarında olur. Linux -da ümumiyyətlə ev qovluğu> Arduino> kitabxanalarında olur. Nəhayət, Arduino kitabxana qovluğunda Adafruit_SSD1306-master qovluğunu Adafruit_SSD1306 adlandırın. Adını dəyişməsən də bu yaxşıdır.

Addım 7:

Şəkil
Şəkil

İndi "Adafruit_SSD1306.h" ə baxaq.

fayl

Bu kitabxanada bilməli olduğumuz iki şey:

1. Kiçik ekrandan istifadə etmək istəyirsinizsə, standart 128_32 -dən istifadə edin, əks halda daha böyük ekran üçün 128_32 -ni şərh edin və 128_64 -ə şərh yazın.

2. Lövhədə 0x7A ünvanını lehimləmisinizsə (bundan sonra danışacağıq), daha böyük ekranlar üçün 7 bit 0x3D ünvanını istifadə edin, əks halda standart 0x3C ünvanını istifadə edin. Kiçik ekranlar üçün ünvan 0x3C -dir.

Addım 8: 128 X 64/32 OLED -ni bağlayın

Kablolama 128 X 64/32 OLED
Kablolama 128 X 64/32 OLED

NodeMCU -nu ekrana bağlayaraq başlayaq.

Diqqət etməli olduğunuz ilk və ən vacib şey, bəzi ekranlarda GND və VCC güc pinlərinin dəyişdirilə biləcəyidir. Ekranın şəkil ilə eyni olduğundan əmin olun. Sancaqlar dəyişdirilərsə, Arduino və ya NodeMCU ilə əlaqələri dəyişdirdiyinizə əmin olun.

- NodeMCU OLED naqilləri

OLED VCC - NodeMCU 3.3V

OLED GND - NodeMCU GND

OLED SCL - NodeMCU D1

OLED SDA - NodeMCU D2

- Arduino Uno OLED naqilləri

OLED VCC - Arduino 5V

OLED GND - Arduino GND

OLED SCL - Arduino Uno A5

OLED SDA - Arduino Uno A4

- Arduino MEGA 2560 OLED naqilləri

OLED VCC - Arduino 5V

OLED GND - Arduino GND

OLED SCL - Arduino MEGA 2560 pin 21

OLED SDA - Arduino MEGA 2560 pin 20

Addım 9: Kod

Kod
Kod
Kod
Kod
Kod
Kod
Kod
Kod

Adafruit kitabxanası hər ikisi üçün həqiqətən yaxşı nümunələrlə gəlir

128x32 və 128x64 ekranlar.

Kitabxana Fayl> Nümunələr> Adafruit SSD1306> altında və sonra Arduino IDE -də ekran növü altında yerləşir.

128x32 I2C nümunəsini istifadə edəcəyik və onu bir Arduino -ya, sonra NodeMCU lövhəsinə bağlayaraq həm 128x64, həm də 128x32 ekranlarla işləmək üçün dəyişdirəcəyik.

Kod həm Adafruit kitabxanalarını daxil etməklə başlayır. Bu təlimatda, kodun yalnız lövhələrə və ekranlara yükləməyimiz üçün lazım olan hissələrini vurğulayacağam. Kod haqqında daha çox bilmək istəyirsinizsə, bloqumda və ya aşağıdakı şərhlər bölməsində bir şərh yazın və sizinlə əlaqə saxlamağa çalışacağam.

- Əvvəlcə kodu 128x32 ekrana qoşulmuş Arduino Nanoya yükləyəcəyik.

Kodu heç bir dəyişiklik etmədən olduğu kimi istifadə edə bilərik.

128x32 0x3C ünvanını istifadə edir, buna görə də burada hər şey yaxşı görünür, başlıq kitabxanasını iki dəfə yoxlamağa imkan verir, bəli 0x3C ünvanını da istifadə edir və ekran növü 128x32 -dir.

- İndi 128x64 ekranı bağlayaq. Bildiyimiz kimi, 0x3C ünvanını standart olaraq istifadə edir, buna görə də kodu nə kitabxanada yeniləməyimizə ehtiyac yoxdur.

Başlıq kitabxanasındakı 128_32 -yə şərh yazmaq və 128_64 -ü şərh etmək və kodumuzda LCDHEIGHT -ı 64 olaraq dəyişdirmək lazımdır.

- İndi eyni kodu NodeMCU -da işə salmaq üçün kodumuzda daha bir sətir dəyişdirməliyik.

"#Define OLED_RESET 4"> "#define OLED_RESET LED_BUILTIN" kodunun qalan hissəsi Arduino ilə eynidir

Əvvəlcə istifadə edərək əvvəlki ekranı silmək üçün lazım olan hər şeyi göstərmək üçün çox şey

display.clearDisplay (); // Tamponu silin

Sonra obyekti çəkin

test xətti (); // Bir xətt çəkin

Avadanlıqda göstərin

display.display (); // Onları ekran aparatında görünən hala gətirin!

Növbəti elementi göstərməzdən əvvəl bir müddət gözləyin.

gecikmə (2000); // 2 saniyə gözləyin

Bu nümunədə mətn, xətlər, dairələr, sürüşən mətn, üçbucaqlar və daha çox kimi bir neçə elementi nümayiş etdiririk. Davam edin və təsəvvürünüzdən istifadə edin və bu kiçik ekranlarda istədiyinizi göstərin.

Addım 10: Mətnin fərdiləşdirilməsi və Şəkillər əlavə edilməsi

Mətnin fərdiləşdirilməsi və Şəkillərin əlavə edilməsi
Mətnin fərdiləşdirilməsi və Şəkillərin əlavə edilməsi
Mətnin fərdiləşdirilməsi və Şəkillər əlavə edilməsi
Mətnin fərdiləşdirilməsi və Şəkillər əlavə edilməsi
Mətnin fərdiləşdirilməsi və Şəkillər əlavə edilməsi
Mətnin fərdiləşdirilməsi və Şəkillər əlavə edilməsi

Bəzən kodunuzun xüsusi şriftləri göstərməsi lazımdır

şəkillər. Bit xəritələşdirmədə çox yaxşısınızsa, xüsusi şriftlər və şəkillər yaratmaq üçün ekranın kiçik LED -lərini yandıraraq və ya söndürərək bayt massivləri yaratmalısınız.

Bununla birlikdə, bu xəritələri düzəltməkdə çox yaxşı deyiləm və bit xəritəsi cədvəlləri yaratmaq üçün saatlar sərf etmək istəmirəm.

Yaxşı, seçimlərim nələrdir? Xüsusi yazı tipləri və şəkillər yaratmaq üçün ümumiyyətlə iki veb saytdan istifadə edirəm. Bağlantılar aşağıdakı təsvirdə verilmişdir.

Xüsusi Şriftlər

Şrift çeviricisinin veb saytına gedin, "Adafruit GFX Font" olaraq yazı tipi ailəsini, üslubunu, ölçüsünü, Kitabxana versiyasını seçin və sonra "Yarat" düyməsini basın. Bu səhifənin sağ tərəfində şriftinizin həqiqi ekranda necə görünəcəyini görə bilərsiniz.

Seçiminizə əsasən veb səhifəsi yazı tipləri başlıq faylını yaradır. Kodunuzun olduğu qovluqda "modified_font.h" adlı bir fayl yaradın və yaradılan kodu kopyalayın və daxil edin. Xüsusi şriftdən istifadə etmək üçün kodunuza başlıq faylını daxil etməlisiniz.

#"dəyişdirilmiş_font.h" daxil edin

Sonra, xüsusi şriftin tətbiq edilməsi üçün mətni göstərməzdən əvvəl fontu təyin etməlisiniz.

display.setFont (& Sizin_Fonts_Adınız);

Şriftin adını layihənizə yeni əlavə etdiyiniz başlıq faylından əldə edə bilərsiniz. Budur, asan.

Xüsusi şriftlərdən istifadə edərkən yaddaş həmişə narahatlıq doğurur, buna görə də həmişə yaddaş tərəfindən istehlak ediləcək baytları nəzərə alın. Unutmayın ki, Arduino UNO yalnız 32K yaddaşa malikdir.

Fərdi Şəkillər

Ekranda bir bitmap şəkli göstərmək üçün əvvəlcə 128 x 64/32 ölçülü bir şəkil yaratmalısınız.

128 x 64 bitmap şəkli yaratmaq üçün yaxşı köhnə "MS Paint" dən istifadə edirəm və sonra bu şəkil çeviricisinin veb saytına yükləyəcəyəm. Veb sayt, şəkilləri Arduino və OLED ekranlarda istifadə edilə bilən bayt sətirlərinə çevirir.

Veb saytına şəkil yükləməklə başlayın. Sonra "Şəkil rənglərini dəyişdir" onay qutusuna bir onay işareti qoyun və "Çıxış kodu formatını" "Arduino Kodu" olaraq dəyişdirin, sonra oriyentasiyanı seçin və "Kod Yarat" düyməsini vuraraq bayt aralığını yaradın. "Önizləmə" bölməsi, görüntünüzün həqiqi ekranda necə görünəcəyini göstərir.

Şəkillərinizi göstərmək üçün istifadə edə biləcəyiniz kodu bu dərsliklə birlikdə daxil etdim. Kodumdakı serialı yeni yaratdığınızla əvəz etməli və sonra Arduino -ya yükləməlisiniz.

Addım 11: 2 ekranı birləşdirin

2 Ekranı birləşdirir
2 Ekranı birləşdirir
2 Ekranı birləşdirir
2 Ekranı birləşdirir

Layihənizə iki ədəd 128 x 64 displey bağlamaq asandır.

Yalnız 0x78 ünvanından 0Ohm müqavimətini çıxarıb 0x7A -ya qoymalı və kodunuzda standart 0x3C yerinə 0x3D ünvanını istifadə etməlisiniz.

Niyə faktiki 0x78 və 0x7A deyil, 0x3C və 0x3D ünvanını istifadə etdiyimizi maraqlandırmalısınız. Arduino, 8 bitlik hardware ünvanlarını deyil, 7 bit ünvanını qəbul edir. Beləliklə, əvvəlcə 8 bitlik ünvanı ikili halına çevirməli və sonra 7 biti əldə etmək üçün ən az əhəmiyyətli olanı kəsməliyik. Sonra kodunuza daxil etdiyiniz 0x3C və ya 0x3D ünvanlarını əldə etmək üçün 7 biti HEX -ə çevirin.

Əvvəlcə unikal bir ad verərək ekranı işə salın:

Adafruit_SSD1306 ekran1 (OLED_REST);

Adafruit_SSD1306 ekran2 (OLED_REST);

Sonra kodunuzda, cihaz ünvanları ilə başlayan ifadələrə zəng etmək üçün 1 və 2 -ci ekranlardan istifadə edin:

display1.begin (SSD1306_SWITCHCAPVCC, 0x3C); // 0x3C 1 ünvan göstərin

display2.begin (SSD1306_SWITCHCAPVCC, 0x3D); // 2 op 0x3D ünvanını göstərin

Budur, indi davam edə bilərsiniz və kodunuzun qalan hissəsində Display 1 və ya Display 2 -dən istifadə edərək istədiyiniz hər şeyi edə bilərsiniz. Bu dərslikdə bir nümunə verdim.

Kablolama, əvvəllər etdiklərimizlə eynidır, sadəcə Arduino və ya NodeMCU -nun eyni I2C sancaqlarına başqa bir ekran əlavə etməlisiniz. Ünvanlara əsaslanaraq, MCU sonra məlumatları I2C məlumat xəttinə göndərir.

Addım 12: 2 -dən çox ekrana qoşulun

2 -dən çox ekrana qoşulma
2 -dən çox ekrana qoşulma
2 -dən çox ekrana qoşulma
2 -dən çox ekrana qoşulma
2 -dən çox ekrana qoşulma
2 -dən çox ekrana qoşulma

İndi 2 -dən çox ekranı bağlamaq istəyirsinizsə nə etməli?

Arduinonun məhdud sayda sancağı var və buna görə də ona müəyyən miqdardan artıq qalxan bağlaya bilməzsiniz. Üstəlik, yalnız bir cüt I2C avtobusuna malikdir.

Beləliklə, bir Arduinoya 2 -dən çox I2C ekranı necə bağlaya bilərik? Hiylə TCA9548 Multiplexer istifadə etməkdir.

TCA9548, tək bir mikro nəzarətçiyə, hər bir sensor qulluq alt avtobusuna bənzərsiz bir kanal təyin etməklə eyni və ya fərqli I2C ünvanı ilə '64 sensora' qədər əlaqə qurmağa imkan verir.

Birdən çox qurğuya 2 tel üzərindən məlumat göndərmək haqqında danışarkən, onları həll etmək üçün bir yol lazımdır. Poçt işçisinin tək bir yolda gəlməsi və üzərində fərqli ünvanlar yazıldığı üçün poçt paketlərini fərqli evlərə atması ilə eynidir.

Multiplexer, mikro nəzarətçinin 3V3, GND, SDA və SCL xətlərinə qoşulur. Qul sensorlar, lövhədəki səkkiz SCL/SDA qul portundan birinə bağlıdır. Kanallar, TCA9548A -ya I2C ünvanını (0x70 {default} - 0x77) və sonra kanal nömrəsini (0b00000001 - 0b10000000) göndərməklə seçilir. Eyni I2C ünvanlı hissələrin 64-nü idarə etmək üçün 0x70-0x77 ünvanlarında bir-birinə bağlı olan maksimum 8-dən çox ola bilər. Üç ünvan bitini A0, A1 və A2 -ni VIN -ə bağlayaraq fərqli ünvan birləşmələrini əldə edə bilərsiniz. Bunu TCA9548A qırılma lövhəsindəki növbəti dərsliyimdə izah edəcəyəm. Hələlik, bu lövhəyə 8 OLED bağlamağa və kodu tez bir şəkildə nəzərdən keçirməyə icazə verin.

Bağlantı:

VIN - 5V (və ya 3.3V)

GND yerə

SCL - I2C saatı

SDA -dan I2C məlumatlarına qədər

Sonra sensörləri VIN, GND -ə bağlayın və SCn / SDn multipleksli avtobuslarından birini istifadə edin

İndi Int kodu, "Tel" kitabxanasını daxil etməklə və multipleksorların ünvanını təyin etməklə başlamağa imkan verir.

#"Wire.h" daxil edin

#daxil edin

#dex MUX_Address 0x70 // TCA9548A Encoders ünvanını təyin edin

Sonra bu funksiyadan istifadə edərək ünsiyyət qurmaq istədiyimiz portu seçməliyik və üzərindəki məlumatları göndərməliyik:

void tcaselect (uint8_t i) {

əgər (i> 7) qayıtsa;

Wire.beginTransmission (MUX_Address);

Wire.write (1 << i);

Wire.endTransmission ();

}

Sonra, "u8g.begin ();" çağıraraq ekranı quraşdırma bölməsində işə salacağıq. MUX -ə qoşulan hər bir ekran üçün "tcaselect (i);"

Başladıqdan sonra, "tcaselect (i);" funksiyasını çağıraraq istədiyimizi edə bilərik. burada "i" multipleksli avtobusun dəyəridir və sonra məlumatları və saatı buna uyğun olaraq göndərir.

Addım 13: Üstünlüklər və Dezavantajlar

Yaxşı və pis tərəfləri
Yaxşı və pis tərəfləri

OLED görüntüsü gözəldir. Bununla birlikdə, OLED -lər də var

dezavantajlar. OLED ekranlarda üzvi maddələr olduğu üçün onların ömrü LCD ekranlardan daha qısadır. Əlavə olaraq, bir çox OLED displey eyni görüntünü uzun müddət göstərdikdən sonra yanar. Yandırıldıqdan sonra, görüntü başqa bir görüntü göstərdikdən sonra da ekranda qalır. Ekranı bir neçə saniyədə bir yeniləməyə davam edin. Su dərhal bu ekranların üzvi materiallarına zərər verə bilər.

Üstünlüklər

Arxa işığa ehtiyac yoxdur

Ekranlar çox nazik və yüngüldür

Aşağı enerji istehlakı

Baxış açıları LCD -lərdən daha genişdir

Parlaqlıq və kontrast böyükdür

Yüksək sürət və aşağı cavab müddəti var

Dərin qara rəng

Dezavantajlar

Bahalı texnologiya

Qısa həyat dövrü

OLEDS-in yanma ehtimalı daha yüksəkdir

Su zədəsi

Addım 14: Ümumi Səhvlər

Ümumi Səhvlər
Ümumi Səhvlər

Dərsliyi bitirmək üçün bir neçə ümumi səhv haqqında danışaq

insanlar bu ekranlardan istifadə edərkən edir:

- Layihənizdə istifadə etməzdən əvvəl hər zaman sancaqları üç dəfə yoxlayın

- Başlıq sənədində və kodunuzda doğru kitabxana ünvanını seçin

#define SSD1306_I2C_ADDRESS 0x3C // in Adafruit_SSD1306.h

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // kodunuzda

Ünvan səhvdirsə, OLED heç bir şey göstərməyəcək

- İstifadədən əvvəl sürücünün ekran ölçüsü dəyişdirilməlidir. Dəyişdirilməsə, kodu yoxlamağa çalışarkən bir səhv mesajı alacaqsınız

#error ("Hündürlük səhvdir, lütfən Adafruit_SSD1306.h -i düzəldin!");

- NodeMCU istifadə edirsinizsə, OLED_RESET -in 4 -dən LED_BUILTIN -ə dəyişdiyinizə əmin olun.

#OLED_RESET LED_BUILTIN təyin edin

Bu OLED ekranı istifadə edərək hər cür şeylər edən səhnə adamlarım var. Bəziləri hətta video oyunlar və hamısını hazırlamışlar. Bu kiçik ekrandan istifadə edərək bir video oyunu hazırlamaq həqiqətən maraqlı deyil. Ancaq təsəvvürlərinizi araşdırmaq və inanılmaz fikirlərlə çıxış etmək üçün indi sizi tərk edəcəyəm.

Addım 15: Bağlantılar

- Blog:

- Şəkil əlavə edin:

- Xüsusi Mətn:

- Adafruit ekran kitabxanası:

-Adafruit GFX kitabxanası:

- u8glib kitabxanası: https://code.google.com/archive/p/u8glib/ və ya

Kiçik ekrandan istifadə etmək istəyirsinizsə, standart 128_32 -dən istifadə edin, əks halda daha böyük ekran üçün 128_32 şərhini yazın və kodunuzdakı 128X64 NO_ACK işarəsini qeyd edin (istifadə etdiyiniz ekranın növünü qeyd edin) (şriftlər şrift kitabxanasındadır)

Tövsiyə: