Urob si sám
Hlavné triedy, pokyny, užitočné tipy, recepty.
» » »Ako pripojiť OLED I2C displej k ARDUINO
Úvod: Predstavujeme displej 128 * 64/128 * 32 OLED I2C.
Ako pripojiť OLED I2C displej k ARDUINO

Zdravím! Som amatér, nadšenec elektroniky, som si istý, že všetko, čo robíme, sú elektronické hračky - domáce výrobky alebo veľké projekty, všetko zo zvedavosti a lenivosti. Zvedavosť sa snaží pochopiť a pochopiť nesmierne neznáme, pochopiť, ako to funguje, čo robí, ako sa pohybuje. A lenivosť vynára, aby prišla s týmto, aby sa nevstala, nezmestila sa, nezvedala, neznečistila alebo niečo iné dôležité.

Keďže je vidieť informácie lepšie ako porozumieť tomu, čo sa v našom zariadení deje alebo sa už stalo alebo sa deje, určite budeme chcieť získať tieto veľmi užitočné informácie od našich mikrokontrolérov, senzorov alebo iných zariadení. A v každom prípade chcem dostávať akékoľvek správy, ako sú otázky, varovania, upomienky, emotikony, hviezdičky, srdcia a podobne.

Pre tých, ktorí majú tiež podobné želanie, je tu rýchly sprievodca pripojením a kontrolou malých a lacných OLED displejov.
Ďalej budeme hovoriť o jednom zo široko dostupných modelov rádioprijímača OLED displejov ovládaných čipom SSD1306 s veľkosťou obrazovky 0,96 palca a rozlíšením 128 * 64 alebo 128 * 32 pixlov. Tieto displeje sú ideálne pre malé amatérske návrhy rádií a domáce výrobky.
Ako pripojiť OLED I2C displej k ARDUINO

Krok 1: Kľúčové koncepcie


Pripojíme ho k Arduino UNO / NANO a ak ho naprogramujeme, pripojíme ho aj cez Arduino.
  • OLED je organická dióda emitujúca svetlo, t.j. polovodičové zariadenie vyrobené z organických zlúčenín, ktoré začne emitovať svetlo, keď ním prechádza elektrický prúd.
  • ARDUINO je platforma pre školenie a automatizáciu budov a robotické systémy.
  • ArduinoIDE je vývojové prostredie. Toto je bezplatný programovací nástroj Arduino.
  • I2C - Interintegrované obvody, komunikačná linka medzi mikroobvodmi.
  • Náčrtok, je to kód, je to program - Arduino terminológia.

Postupujte podľa pokynov, aby ste pochopili, ako správne pripojiť a nakonfigurovať OLED displej k Arduino a ako zobraziť svoju vlastnú správu na jeho displeji.
Robíme všetko v krokoch.

Krok 2: Príslušenstvo


Budeme potrebovať iba štyri veci:
  • 1. Samotný OLED displej je 0,96 ”(je možné ho kúpiť na Aliexpress alebo Ebay, - dlhé, ale lacné!).
  • 2. Arduino UNO / Nano (na rovnakom mieste ako displej).
  • 3. Pripojovacie vodiče (tamtiež).
  • 4. Počítač alebo laptop s nainštalovaným ArduinoIDE.

Ako pripojiť OLED I2C displej k ARDUINO

Všeobecne platí, že nákup dielov pre rôzne projekty na Aliexpress a Ebay je veľmi cool vec, zatiaľ čo vy robíte jeden projekt, diely pre iný sú už na ceste. Hlavnou vecou je nezabudnúť na objednávku.

Krok 3: Pripojte displej


Displej je riadený čipom SSD1306, ktorý podporuje päť komunikačných protokolov, z ktorých jeden je I2C. Údaje o tomto protokole sa prenášajú iba dvoma drôtmi a čím menej drôtov v prípade, tým lepšie, takže nám to dobre vyhovuje. Ale! Existujú moduly s protokolom SPI a dokonca aj prepínaním protokolov, takže pri kúpe tohto modulu buďte opatrní.
Ako pripojiť OLED I2C displej k ARDUINO

Použité závery:
OLED displej - SCL / SCK (hodiny) a SDA (dáta), výkon „Plus“ (VCC) a „mínus“ (GND).
Ako pripojiť OLED I2C displej k ARDUINO

Použité závery:
Arduino UNO - SCL / SCK na A5 a SSD na A4, výkon „plus“ (+ 5 V) a „mínus“ (GND).
Pripojte displej k Arduino:
  • Vcc - 5V
  • GND - GND
  • SDA - A4
  • SCL - A5

Ako pripojiť OLED I2C displej k ARDUINO

Krok 4: Scanner I2C


Každé zariadenie na zbernici I2C má hexadecimálnu adresu, nemôžete ho zmeniť, je pevne šité, každý zodpovedný výrobca to musí niekde uviesť v prípade alebo v pokynoch. Existujú moduly s prepínačmi a prepojkami, pomocou ktorých môžete zmeniť adresu, ale ... ak sú zariadenia lacné, na škaredosť, potom sa výrobca nemusí obťažovať zaoberať sa takým maličkosťou, takže ho budete musieť určiť sami.

Celkovo je možné na zbernici použiť až 127 adries - 119 pre zariadenia a 8 servisných adries. Komunikácia prebieha na týchto adresách.Existuje pán, je pán, ale je otrok, je tiež otrok - Majstri sa pýtajú, stúpenci odpovedajú, všetko je jednoduché.
Pretože náš OLED displej používa komunikačný protokol I2C a adresa nemusí byť uvedená, pokúsime sa zistiť túto adresu.

To sa dá dosiahnuť stiahnutím krátkej náčrtu na vašu dosku Arduino s pripojeným OLED. ALE!
Urobte si čas a okamžite nahrajte náčrt do Arduina! Začnime stiahnutím ovládača, t. prepojíme knižnice, a preto prejdeme rovno na krok 5 a potom sa vrátime a budeme pokračovať.

Krok 4: Pokračovanie:


Stiahnite si CODE Finder_I2C_Hex_Address.ino, nahrajte na Arduino.
Otvorte „Port Monitor“, nastavte rýchlosť na 9600 a ak je všetko správne pripojené, program zobrazí adresu zariadenia, v mojom prípade OLED s adresou 0x3F.
Ako pripojiť OLED I2C displej k ARDUINO

Krok 5: Stiahnite si a pripojte knižnice


Aby všetko fungovalo správne a nemuseli ste znovu objavovať koleso, musíte k prostrediu ArduinoIDE pripojiť niekoľko knižníc, konkrétne: ADAFRUIT GFX a ADAFRUIT SSD1306, aby Arduino dokázal nezávisle komunikovať s displejom OLED.
Tieto knižnice sa dajú prepojiť podľa týchto krokov.
  • 1. V ArduinoIDE prejdite do ponuky Skica.
  • 2. Vyberte možnosť Zahrnúť knižnice.
  • 3. Vyberte možnosť „Spravovať knižnice“ / Spravované knižnice.
  • 4. Nájdite ADAFRUIT GFX a nainštalujte ich.
  • 5. Nájdite ADAFRUIT SSD1306 a nainštalujte ich.

S čerstvými verziami knižníc pre mňa displej fungoval krivo, možno to je samozrejme kvôli zakriveniu rúk, ale po nainštalovaní prvých verzií týchto knižníc sa všetko začalo javiť hladko a krásne. Z nejakého dôvodu sa Pushkinove línie objavia v jeho pamäti:
... a skúsenosti syna ťažkých chýb,
a génius, paradoxy priateľov.

Ďalším spôsobom, ako nainštalovať knižnice, je nájsť, stiahnuť a nainštalovať tieto knižnice sami.
Napríklad Github:
https://github.com/adafruit/Adafruit-GFX-Library
https://github.com/adafruit/Adafruit_SSD1306

Sú to rovnaké knižnice Adafruit, ale podobné knižnice sa dajú ľahko vyhľadávať vo vyhľadávačoch na žiadosť OLED I2C. Mnoho nadšencov píše knižnice „pre seba“ a potom ich umiestňujú na web. Ktorá knižnica sa má použiť, je len na vás.
Aby displej zobrazoval ruské písmená, sú potrebné aj špeciálne knižnice, ale toto je samostatná téma samostatného článku.
Po nainštalovaní knižníc sa môžete vrátiť ku kroku 4 a nakoniec zistiť hexadecimálnu adresu vášho displeja.

Krok 6: Testovanie displeja


Ak chcete skontrolovať, či všetko funguje podľa očakávania, spustite skúšobný príklad z ArduinoIDE.
Postupujte takto:
Prejdite na SÚBOR> PRÍKLADY> SSD 1306> Vyberte 128x64 i2c
Ak sa zobrazí chyba, skúste zvoliť SSD 1306> 128x32 i2c.
Ak sa chyba opakuje, skúste zmeniť adresu I2C na riadku 61 demo kódu a nahradiť ju adresou displeja, ktorú ste určili v kroku č. 4.
Ak sa chyba vyskytne znova, môžete skúsiť upraviť súbor Adafruit_SSD1306.h, ktorý sa nachádza v priečinku s knižnicami Arduino.
Ako pripojiť OLED I2C displej k ARDUINO

Otvorte súbor Adafruit_SSD1306.h v textovom editore a vyhľadajte riadky:
// # define SSD1306_128_64
#define SSD1306_128_32
// #definovať SSD1306_96_16 

Zrušte označenie riadku:
#define SSD1306_128_64. 

Malo by to byť toto:
#define SSD1306_128_64
// # define SSD1306_128_32
// #definovať SSD1306_96_16

Ak je chyba znova, je potrebné skontrolovať správne pripojenia.
Po dokončení sťahovania sa na obrazovke zobrazí skúšobná animácia, čo znamená, že ste úspešne nakonfigurovali displej OLED.

Ak si túto animáciu užijete, môžete prejsť na ďalší krok.

Krok 7: Napísanie vlastnej správy


Ak chcete napísať svoju vlastnú správu, najprv vytvorte novú skicu v programovacom prostredí ArduinoIDE.
V hlavičke pripájame 4 knižnice:
#include 
#include 
#include 
#include 

Potom napíšeme resetovací protokol:
#definovať OLED_RESET 4
Displej Adafruit_SSD1306 (OLED_RESET);

V VOID SETUP zadajte hexadecimálnu adresu nášho displeja 0x3C, ktorú sme zistili v kroku č. 4.
Potom inicializujte displej a vymažte ho:
display.begin (SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay ();

Ďalej vo VOID LOOP píšeme hlavný kód, teda našu správu, ktorú chceme zobraziť na displeji.
Za týmto účelom opíšeme veľkosť textu, farbu textu, pozíciu kurzora a nakoniec zobrazíme správu pomocou príkazu println:
display.setTextSize (2);
display.setTextColor (WHITE);
display.setCursor (0,0);
display.println ("Výborne!");
display.display ();

Na konci nezabudnite napísať display.displayaby sa obraz zobrazil na obrazovke, inak dôjde k zrušeniu platnosti.
Ak ste urobili všetko správne, na displeji sa zobrazí správa.
Ako pripojiť OLED I2C displej k ARDUINO

Tu je CODE Starting_with_Arduino_OLED.ino nášho programu:
[946 b] (stiahnuté: 1100)
Vráťte sa
Komentáre (3)
  1. Tatoshka
    #1 Tatoshka hostia 14. novembra 2018 21:18
    0
    Ďakujem priateľ! Toto je moja prvá nahraná skica a môj úvod do Arduina. Blink sa nepočíta)))
  2. Alisher
    #2 Alisher hostia 28. júla 2019 19:35
    0
    A kde stiahnuť tento kód Finder_I2C_Hex_Address.ino?
    1. Al
      #3 Al hostia 14. augusta 2019 12:51
      0
      pod obrázkom je odkaz „Toto je KÓDEX Starting_with_Arduino_OLED.ino nášho programu:“

Prečítajte si tiež

Chybové kódy pre práčky