Arduino Oled

Klasyczne wyświetlacze ciekłokrystaliczne LCD, po dziś dzień cieszą się gromkim uznaniem wśród konstruktorów i producentów sprzętu elektronicznego. Pomimo to, coraz częściej sięga się po inne, jeszcze bardziej efektywne rozwiązanie, jakim jest wyświetlacz OLED oparty na organicznych diodach elektroluminescencyjnych. Wyświetlacze wykonane w technologii OLED odznaczają się znacznie mniejszą grubością struktury względem wyświetlaczy LCD, a także dają bardziej szczegółowy obraz o zwiększonej ostrości.

Wyświetlanie obrazu na OLEDzie przy użyciu Arduino

Niniejszy artykuł opisuje jak połączyć wyświetlacz Arduino OLED oraz jak zaprogramować płytkę w celu wyświetlania tekstu na wyświetlaczu OLED.

Zestawienie niezbędnych podzespołów

Do wykonania naszej aplikacji będą potrzebne następujące podzespoły:

  • Płytka Arduino UNO R3 lub inny kompatybilny odpowiednik
  • Przewód USB typu A na USB typu B (standard USB 2.0)
  • Wyświetlacz OLED niebieski graficzny 0,96” 128 pix x 64 pix I2C – niebieski
  • Przewody połączeniowe do płytek stykowych

Krótka charakterystyka wyświetlacza OLED

Użyty w naszym projekcie wyświetlacz OLED ma rozdzielczość 128 pix x 64 pix i wyświetla znaki w kolorze niebieskim na czarnym tle. Wyświetlacz jest oparty na specjalizowanym układzie sterującym SSD1306. Komunikacja wyświetlacza z osprzętem zewnętrznym jest realizowana przez magistralę I2C.

Jak podłączyć wyświetlacz OLED do Arduino?

Wyświetlacz OLED, z którego będziemy korzystal,i ma cztery wyprowadzenia z polami lutowniczymi dla przewodów połączeniowych. Taki wyświetlacz jest dostępny także w wersji z fabrycznie przylutowanymi przewodami. Sposób podłączenia jego wyprowadzeń do Arduino UNO R3 jest następujący:

  • “GND” (masa zasilania) -> “GND” (sekcja “POWER” w Arduino)
  • “VCC” (napięcie zasilania +5V) -> “5V” (sekcja “POWER” w Arduino)
  • “SDA” (linia danych magistrali I2C) -> “A4” (sekcja “ANALOG IN” w Arduino)
  • “SCL” (linia zegara magistrali I2C) -> “A5” (sekcja “ANALOG IN” w Arduino)

Kod programu

Poniższy kod programu umożliwia wyświetlanie tekstu na wyświetlaczu OLED wraz z ustawieniem parametrów graficznych tekstu. Aby poniższy kod prawidłowo zadziałał, konieczna jest inicjalizacja bibliotek do obsługi wyświetlacza OLED.

// inicjalizacja bibliotek do obslugi wyswietlacza OLED

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// wprowadzenie wymiarow wyswietlacza OLED w pikselach

#define SCREEN_WIDTH 128 // szerokosc wyswietlacza OLED w pikselach
#define SCREEN_HEIGHT 64 // wysokosc wyswietlacza OLED w pikselach

// deklaracja obiektu – wyswietlacza OLED podlaczonego pod magistrale I2C

Adafruit_SSD1306 oled(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

void setup() {

Serial.begin(9600); // uruchomienie transmisji szeregowej po I2C; adres fizyczny wyswietlacza: 0x3c

if (!oled.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F(„SSD1306 allocation failed”));
while (true);
}

delay(2500); // opoznienie na czas 2.5s – trwa inicjalizacja wyswietlacza
oled.clearDisplay(); // zerowanie zawartosci wyswietlanego obrazu

oled.setTextSize(1); // ustawienie rozmiaru czcionki tekstu
oled.setTextColor(WHITE); // kolor czcionki
oled.setCursor(0, 0); // poczatkowa pozycja kursora na wyswietlaczu w gornym lewym rogu
oled.println(„TEXT”); // tekst wyswietlany na wyswietlaczu: TEXT
oled.display(); // wyswietlanie wprowadzonej zawartosci na wyswietlaczu
}

void loop() {
}