Il Display OLED 0.91″ è un display monocromatico ed economico che possiamo usare per stampare i dati che elaboriamo con Arduino. Nonostante sia di piccole dimensioni, infatti non raggiunge nemmeno il pollice in diagonale, è un display molto duttile e pratico.
Specifiche
Il Display OLED 0.91″ è dotato di un chip SSD1306 ed ha una risoluzione di 128×32 pixel, il che lo rende un ottimo sostituto per il display LCD I2C. Questo display, oltre ai pin GND e VCC per collegarlo ai 3,3V o ai 5V, possiede i pin SDA (dati) e SCK (clock) per collegarlo alla dev-board tramite interfaccia I2C o SPI. La colorazione dei contenuti di questo modello è bianca, ma esiste anche una versione in blu.
Collegamento
Il collegamento tra il Display OLED 0.91″ e Arduino è estremamente semplice ed intuitivo. In tabella riportiamo i collegamenti da effettuare, ricordando che i pin SDA e SCL sono interscambiabili con i pin analogici A4 e A5, e che in Arduino Mega ci sono più connessioni disponibili.
Display OLED 0.91" | Arduino UNO |
---|---|
GND | GND |
VCC | 5V |
SCK | SCL |
SDA | SDA |
Codice
Il Display OLED 0.91″ per funzionare necessita di una libreria apposita, chiamata U8G2, oltre alle librerie SPI.h, Wire.h e Arduino.h incluse nella IDE di Arduino o scaricabili tramite la Gestione librerie. Lo sketch che proviamo ci permetterà di scrivere del testo, impostando le coordinate, il tipo e la dimensione del font.
#include <Arduino.h> #include <U8g2lib.h> #include <SPI.h> #include <Wire.h> U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0); void setup(void) { u8g2.begin(); } void loop(void) { u8g2.clearBuffer(); u8g2.setFont(u8g2_font_logisoso28_tr); u8g2.drawStr(0,29,"Iscriviti"); u8g2.sendBuffer(); delay(3000); u8g2.clearBuffer(); u8g2.setFont(u8g2_font_logisoso28_tr); u8g2.drawStr(30,29,"al"); u8g2.sendBuffer(); delay(800); u8g2.clearBuffer(); u8g2.setFont(u8g2_font_logisoso28_tr); u8g2.drawStr(10,29,"canale"); u8g2.sendBuffer(); delay(800); u8g2.clearBuffer(); u8g2.setFont(u8g2_font_logisoso24_tr); u8g2.drawStr(0,29,"Reshitoze"); u8g2.sendBuffer(); delay(2000);
Osservando la riga 14, la funzione SetFont permette di scegliere il tipo di font, scaricandone anche altri al seguente link, e impostare la dimensione semplicemente cambiando il numero posto alla fine del nome del carattere. In questo modo possiamo anche avere diversi output con dimensione e caratteri differenti sullo stesso display nel medesimo istante. La duttilità di questi display, infatti, li rende ottimi per progetti di realizzazione di dispositivi come Lettori MP3, Smartwatch o similari.
Se vuoi comprarlo, ecco dove farlo.
Display OLED 0.91″: http://s.click.aliexpress.com/e/5VnhltiC