Wyświetlacz SSD1306 OLED I2C
Monochromatyczny 128×64 OLED wyświetlacz z interfejsem I2C
Wyświetlaczem można sterować za pomocą kilku bibliotek, np. Adafruit_SSD1306
Układ współrzędny ekranu ma swój początek (0,0) w lewym, górnym rogu.
Wielkość czcionki w pixelach:
Szerokość: 5 pikseli (plus 1 piksel odstępu) * fontsize
Wysokość: 7 pikseli (plus 1 piksel odstępu) * fontsize
Sterowanie wyświetlaczem SSD1306 I2C za pomocą biblioteki Adafruit_SSD1306
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // Szerokość wyświetlacza w pikselach
#define SCREEN_HEIGHT 64 // Wysokość wyświetlacza w pikselach
#define OLED_RESET -1 // Reset pin nie jest używany dla I2C
#define SCREEN_ADDRESS 0x3C // Adres I2C wyświetlacza SSD1306
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void setup() {
Wire.begin();
if (!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
Serial.println(F("SSD1306 allocation failed"));
for (;;); // Zatrzymanie programu, jeśli inicjalizacja się nie powiedzie
}
display.clearDisplay(); // Wyczyszczenie bufora wyświetlacza
display.setTextColor(SSD1306_WHITE);
display.setTextSize(1);
display.setCursor(0, 0);
display.println(F("Hello, world!"));
display.drawLine(0, SCREEN_HEIGHT/2, SCREEN_WIDTH, SCREEN_HEIGHT/2, SSD1306_WHITE); //x0,y0,x1,y1,color
display.drawRect(20, 20, SCREEN_WIDTH-40, SCREEN_HEIGHT-40, SSD1306_WHITE); //x0,y0,w,h,color
display.drawCircle(SCREEN_WIDTH/2, SCREEN_HEIGHT/2, 10, SSD1306_WHITE); //x0,y0,r,color
display.setCursor(0, 56); // position to display
display.print("Bye, bye!"); // text to display
display.display();
}
void loop() {
}
Zobacz:Wyświetlacz TFT SPI LCD 128*160 MSP1803 z Arduino
Zobacz: Wyświetlacz LCD 16×2 Arduino