Malý displej

 

 

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. 

Skeč "OLED_text.ino":

#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":

 Skeč "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

 

Home

 

Arby

arduinohobby@email.cz