PitOLED128x32 con interfaccia IC2
L'utilizzo del display monocromativo OLED 128x32 con controller SSD1306 e interfaccia IC2.
Utilizzo collegamenti e spiegazioni
Vedasi l'articolo pubblicato su AdriRobot.
Cosa serve:
- Display monocromo OLED 128x32 controller SSD1306
Codice sorgente:
/*
test_base.ino
Lo sketch mostra alcuni testi di prova sul display OLED collegato
tramite I2C.
Sono utilizzati i seguenti pin
Pin +5V -> Alimentazione display
Pin GND -> GND display
GPIO4 -> D2 -> SDA modulo I2C LCD -> A4
GPIO5 -> D1 -> SCL modulo I2C LCD -> A5
Creato il 30/04/2018 da Adriano Gandolfo
Sito web http://www.adrirobot.it
Blog http://it.emcelettronica.com/author/adrirobot
Pagina Facebook https://www.facebook.com/Adrirobot-318949048122955
Istagram https://www.instagram.com/adrirobot/
This example code is in the public domain.
Per utilizzare il display OLED è necessario installare le librerie Adafruit SSD1306, in questo caso opportunamente modificate per adattarsi alla ridotta risoluzione.
Per cui occorre scaricare la libreria di supporto presente su GitHub, oppure fare clic su questo link per scaricare il file zip.
Per il giusto funzionamento del display, occorrerà modificare o verificare che all’interno del file Adafruit_SSD1306.h della libreria, la linea che definisce la dimensione del display che l'unica linea senza commento sia quella #define SSD1306_64_32
// #define SSD1306_128_64
#define SSD1306_128_32
// #define SSD1306_96_16
//#define SSD1306_64_32
*/
#include "SPI.h"
#include "Wire.h"
#include "Adafruit_GFX.h"
#include "Adafruit_SSD1306.h"
#define OLED_RESET 0 // GPIO0
Adafruit_SSD1306 display(OLED_RESET);
void setup()
{
// Impostazione modulo display con indirizzo I2C addr 0x3C
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
// Cancellazione schermo e buffer
}
void loop()
{
display.clearDisplay();
// Messaggio iniziale
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0, 0);
display.println(" Zappoco ");
display.setTextColor(BLACK, WHITE); // Inverte il colore del testo
display.println("| TEST TEST |");
display.println("| DISPLAY DISPLAY |");
display.println("123456789112345678912");
display.display();
delay(5000);
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0, 0);
display.print("Value");
display.setCursor(0, 18);
display.println("1234567890123");
display.display();
delay(5000);
}