|
|
Displej 0,91 palce Drobné informace lze zobrazovat na malém displeji s rozlišením 128x32 bodů. Lze jej pořídit jak v Asii tak v ČR. Výhodou je komunikace přes i2c sběrnici, nízká spotřeba a svítivost bodů. Napájení je 3,3 - 5 V, spotřeba 10 mA. Displej byl odzkoušen s deskou UNO a NANO se stejnými výsledky. Zapojení displeje je totožné pro obě Arduino desky: NANO/UNO OLED 5V ------ > Vcc GND ------ > GND A4 ------ > SDA A5 ------ > SCL K oživení displeje nainstalujeme knihovnu "u8glib_oled.zip". Instalaci do IDE lze provést způsobem "zip". V IDE otevřeme "Projekt/Přidat knihovnu/Přidat.ZIP knihovnu ... najdeme soubor "u8glib_oled.zip" " a odklikneme. Po restartu IDE dojde k instalaci knihovny do IDE. Displej oživíme kódem "OLED_text.ino". Klikneme na "OLED_text.ino", po zobrazení skeč přeneseme "klipbordem" na pracovní, předem "vyčištěnou" plochu IDE, uložíme do IDE a nahrajeme do desky Arduino. #include "U8glib.h" // knihovna U8GLIB_SSD1306_128X32 mujOled(U8G_I2C_OPT_NONE); // iniciace 0,91 palcového displeje - 128x32 void setup(){} void loop() {{mujOled.firstPage(); // iniciace displeje do {mujOled.setFont(u8g_font_fur25); // nastavení velikost fontu 11, 14, 17, 25, 30; fonty "gdr";"fur";fub" aj. více: https://github.com/olikraus/u8glib/wiki/fontsize mujOled.setPrintPos(20,30); // nastavení kursoru mujOled.print("TEXT");} // tisk TEXTU while(mujOled.nextPage());}} // vymazání displeje
Komentáře ke skeči jsou uvedeny na jednotlivých řádcích za dvojitým lomítkem. Skeč nahrajeme do Arduina. Na displeji se zobrazí "TEXT":
Pro názorné zobrazení "měřené" hodnoty připojíme napájecí napětí Arduina na analogový vstup "A0" přes lineární potenciometr 50k. Potenciometr napojíme na napájecí napětí Arduina, tj. jeden z krajních kontaktů potenciometru na kontakt GND Arduina a druhý okrajový kontakt potenciometru na kontakt "5V" Arduina. Jezdec potenciometru připojíme na kontakt "A0" Arduina (v programu je to kontakt č.14). Schéma zapojení potenciometru viz kapitola "Měření napětí". Pro ověření zobrazení hodnoty použijeme kód "OLED_hodnota.ino": #include "U8glib.h" // knihovna U8GLIB_SSD1306_128X32 mujOled(U8G_I2C_OPT_NONE); // iniciace 0,91 palcového displeje - 128x32 int H=0; // deklarace proměnné H void setup() {} void loop() {H=analogRead(14); // načtení desetibitové hodnoty na pini A0 (zde č.14) {mujOled.firstPage(); // iniciace displeje do {mujOled.setFont(u8g_font_fur25); // nastavení velikost fontu 11, 14, 17, 25, 30; fonty "gdr";"fur";fub" aj. mujOled.setPrintPos(20,30); // nastavení kursoru mujOled.print(H);} // tisk desetibitové hodnoty pinu A0 while(mujOled.nextPage());} // vymazání displeje delay(1000);}
Skeč nahrajeme do Arduina. Na displeji se zobrazí číslo odpovídající hodnotě analogového vstupu A0.
Arduino desky UNO a NANO mají analogové vstupy s rozlišením 10 bitů (210), z čehož vyplývá, že napájecí napětí (cca 5V) připojené na analogový vstup Arduina vrací v systému Arduina hodnotu 1023. Potenciometrem můžeme zobrazovanou hodnotu měnit v rozsahu 0-1023 (změnou napětí 0-cca 5V na analogovém vstupu A0 ). Obdobně lze sledovat na displeji různá analogová měření.
Únor 2021
Arby
|