|
Kleines grafikfähiges OLED
Ziel: Inbetriebnahme des
0,91 Zoll OLED Displays mit Treiberchip 'SSD1306' und I2C-Bus
Anschluss:
Pin am Display |
Pin am Arduino |
Farbe im Bild |
GND | GND | grün |
Vcc | 5V | rot |
SCL | A4 | blau |
SDA | A5 | gelb |
| |
Quelltext:
/*
OLED Display 128 x 64 mit Treiberchip SSD1306 und I2C-Bus
I2C-Bus am Arduino:
Für alle Boards mit Atmega328, die sich Arduino-kompatibel nennen, gilt:
A4 IST SDA und A5 IST SCL.
Außerdem findet sich am Arduino UNO in der Digital-Buchsenleiste:
Digi_13 | GND | AREF | I2C-Clock (=SCL) | I2C-Data(=SDA)
folgende Bibliotheken werden verwendet:
Adafruit_BusIO hier: https://github.com/adafruit/Adafruit_BusIO
Adafruit_SSD1306 hier: https://github.com/adafruit/Adafruit_SSD1306
Adafruit_GFX_Library hier: https://github.com/adafruit/Adafruit-GFX-Library
Lade sie herunter, entpacke sie, lege sie in Deinen libraries-Ordner
und starte Deine Arduino-IDE neu!
*/
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); // Instanziierung
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.display(); // zeigt den Grafikpuffer auf dem OLED-Display
// Beispiel einer Textausgabe:
display.setTextColor(WHITE); display.setTextSize(1);
display.setCursor(10, 0); display.println("Arduinospielwiese");
// Beispiele für Ausgabe von Grafikelementen:
display.drawLine(0, 20, 128, 20, WHITE); // Linie
display.drawCircle(10, 40, 10, WHITE); // Kreis
display.fillCircle(40, 40, 10, WHITE); // Kreis, gefüllt
display.drawRect(60, 30, 20, 20, WHITE); // Rechteck
display.drawTriangle(90, 30, 90, 50, 110, 40, WHITE); // Dreieck
// Grafikpuffer auf dem OLED-Display ausgeben:
display.display();
}
void loop() { }
Einkaufsliste:
|