SSD1306-Chociaż mikrokontrolery i komputery jednopłytkowe są wyjątkowymi urządzeniami, nie mogą wiele zrobić samodzielnie. Na przykład, nie możemy zaprogramować lub zobaczyć wyników mikrokontrolera bez podłączenia go do urządzenia, które przekazuje dźwięk lub obraz. Dlatego potrzebujemy modułów i innych komponentów, które rozszerzą możliwości płytki. SSD1306, podobnie jak dioda i2C, jest przykładem kontrolera wyświetlacza, który możemy połączyć z mikrokontrolerem, aby uzyskać wyjście optyczne. Czym jednak jest i jak go wykorzystać? Poniższy przewodnik odpowie na te pytania.

Co to jest SSD1306?

SSD1306 1

Światłomierz, który wykorzystuje Arduino i SSD1306.

SSD1306 jest jednoukładowym monochromatycznym wyświetlaczem graficznym OLED. Jego ekran ma szerokość 128 pikseli i głębokość 64 pikseli (128x64). Ponieważ jest to ekran monochromatyczny, wszystkie te pojedyncze piksele są białe. Jak można się domyślać, wyświetlacz SSD1306 jest malutki. Ma on niecałe 3 centymetry, jeśli mierzymy go po przekątnej. Pomimo swoich rozmiarów, jest on łatwy do odczytania. Zawdzięcza to jasnemu, kontrastowemu ekranowi OLED.

Układ kontrolera SSD1306 zarządza każdym pikselem na ekranie - włącza go lub wyłącza. Wiele wyświetlaczy graficznych wymaga podświetlenia, aby ich wyjście było bardziej widoczne. Ponieważ jednak SSD1306 wykorzystuje ekran OLED, sam wytwarza swoje światło. Nie wymaga więc żadnego dodatkowego podświetlenia.

Istotną zaletą tego oblicza jest to, że pobiera mniej prądu. Dodatkowo, dzięki niemu SSD1306 może mieć wysoki kontrast. Układ SSD1306 możemy interfejsować za pomocą protokołu SPI lub i2C. Możemy to osiągnąć dzięki zworkom znajdującym się z tyłu urządzenia.

SSD1306 posiada wbudowany konwerter boost oraz pokładowy regulator. Dzięki temu SSD1306 jest bezpośrednio kompatybilny z mikrokontrolerami 3V i 5V (nie jest wymagany przesuwnik poziomu).   

Dane techniczne SSD1306

SSD1306 2

Wyświetlacz IIC I2C OLED 128x64 na niebieskim tle

SSD1306 3

Połączenie wyświetlacza OLED SSD1306 z Arduino

SSD1306 jest praktycznie niedrogi. Powinieneś być w stanie kupić co najmniej dziesięć w masie za mniej niż 20 dolarów. Ale jak ich używać i jaki jest najlepszy sposób na ich połączenie? Możesz je połączyć z dowolnym mikrokontrolerem lub SBC, który obsługuje połączenia SPI, IIC lub i2C. Arduino Uno jest jednym z najtańszych i najbardziej dostępnych mikrokontrolerów. W tym rozdziale omówimy, jak podłączyć go do wyświetlacza OLED SSD1306.

Połączenie power

SSD1306 4

SSD1306 OLED SSD1306 OLED moduł wyświetlacza moduł wyświetlacza przechylony na niebieskim tle przechylony na niebieskim tle

Do połączenia wyświetlacza SSD1306 OLED z Arduino Uno użyjemy protokołu komunikacyjnego i2C. Możesz kliknąć i odpowiadać pinom w następujący sposób:

Możesz okablować oba elementy bezpośrednio lub przeprowadzić połączenia przez breadboard. Oczywiście w podobnej konfiguracji powinieneś być w stanie podłączyć SSD1306 do prawie każdej innej kompatybilnej płytki Arduino.

Programowanie Arduino Uno i SSD1306

Moduł OLED z tekstem na nim

Źródło: OpenClipArt

Podłączenie Arduino Uno do SSD1306 to dopiero pierwszy krok. Kolejny krok polega na wykorzystaniu odpowiednich bibliotek do stworzenia i zaprogramowania cyfrowego połączenia pomiędzy Arduino Uno a ekranem SSD1306. Ta czynność pozwoli Ci kontrolować to, co SSD1306 pokazuje na swoim wyświetlaczu. Możesz następnie wykorzystać tę konfigurację do projektów takich jak zegarki, alarmy, ekrany stanu internetu itp.

Zaprogramowanie Arduino do sterowania ekranem OLED SSD1306 będzie wymagało od Ciebie zainstalowania Arduino IDE. Można odświeżyć Arduino za pomocą karty SD lub podłączyć go bezpośrednio do komputera za pomocą kabla micro-USB

Szkic będzie wymagał bibliotek adafruit_GFX.h i adafruit_SSD1306.h Można wykonać następujące czynności, aby znaleźć te biblioteki za pomocą Arduino IDE

Uruchom Arduino IDE

Kliknij opcję Szkic powierzchni

Następnie wybierz opcję Uwzględnij bazę danych

Wybierz opcję Zarządzaj bibliotekami-spowoduje to otwarcie narzędzia zarządzania bibliotekami

W górnym pasku wyszukiwania wpisz SSD1306 i naciśnij klawisz Enter na klawiaturze

Następnie kliknij pakiet Adafruit SSD 1306 przez Adafruit, aby upewnić się, że wybrano najnowszy pakiet oprogramowania

Po zakończeniu instalacji biblioteki Adafruit SSD1306 wykonaj ten sam proces w bibliotece GFX i uruchom ponownie Arduino IDE

Użyteczne funkcje programowania Arduino IDE i SSD1306

Dysk SSD1306 OLED

Na początku próba programowania dysku SSD1306 może być nieco nieskoordynowana Aby szybko się przystosować, mamy tu kilka przydatnych funkcji

clearDisplay () Część klasy display, która wyczyści wszystkie piksele na ekranie, w zasadzie wyłącza te rekwizyty

Rozmiar setText (N) Umożliwia to ustawienie rozmiaru czcionki dla tekstu wyświetlanego na ekranie diody organicznej-dopuszczalny rozmiar to od 1 do 8

drawPixel(x, y, kolor) odstęp Umożliwia to otwarcie zaznaczonych pikseli na ekranie, co w zasadzie umożliwia rysowanie tekstu, kształtów i linii Więcej informacji na temat tego i jego parametrów można znaleźć na stronie Adafruit Graphics Primitives

Drukowanie (tekst) Umożliwia to drukowanie ciągów tekstowych na dysku SSD1306

Zestaw kursora (X, Y) Umożliwia to ustawienie współrzędnych kursora — po wydrukowaniu tekstu na dysku SSD1306 dysk SSD 1306 powinien zacząć wyświetlać tekst

Pokaż liczbę osób () Ta metoda odświeża ekran i wysyła wszystkie zmiany, aby wyświetlić te właściwości

Możesz użyć powyższej treści do wyświetlenia prostego tekstu i możesz narysować grafikę monochromatyczną na ekranie Można je użyć do sprawdzenia, czy dysk SSD1306 został podłączony do Arduino Uno Użyj poniższego szkicu, aby wydrukować „ Hello, world” na monitorze LED organicznej światła

Wyciąg informacyjny

W powyższym podręczniku omówiono dysk SSD1306 i niektóre z jego funkcji Wyświetlacze są dostępne w różnych projektach Arduino i Raspberry Pi 4 Niektóre mają wielokolorową funkcję Jednak napęd SSD1306 jest wyjątkowy, ponieważ jego jasny wyświetlacz o dużym kontraście jest wyświetlaczem o dużym kontraście Inżynierowie mogą używać tego do testowania organicznych diod śledzących światło i inteligentnych urządzeń na ekranie Zdecydowanie zalecamy dysk SSD1306 dla pierwszego projektu