
⇒Anschluss eines OLED an verschiedene Mikrocontroller
Die Bibliothek SSD1306Ascii kann nur Text in verschiedenen Schriftarten darstellen.
Benötigte Bibliothek:

Funktionen der Bibliothek SSD1306Ascii
| Schlüsselwort | Parameter | Aktion |
|---|---|---|
| begin(Bildschirmgröße, I2C-Adresse); | begin(&Adafruit128x64, I2C_ADDRESS); | OLED starten |
| clear(); | Bildschirm löschen | |
| displayRemap(true/false); | true = um 180° drehen false = nicht drehen | Bildschirm drehen |
| setFont(Schriftart); | Beispiele: Arial14 Callibri11 Callibri11_bold Callibri15 System5x7 TimesNewRoman13 TimesNewRoman16 utf8font10x16 X11fixed7x14 | Schriftart festlegen |
| invertDisplay(true/false); | true = schwarz auf weiß false = weiß auf schwarz | Bildschirmfarben tauschen |
| setLetterSpacing(Wert); | Abstand der Buchstaben | |
| setCursor(Spalte, Zeile); | Cursor setzen | |
| print(“Text”); println(“Text”); | print = Text ohne Zeilenvorschub println = Text mit Zeilenvorschub | Text anzeigen |
| setScrollMode(SCROLL_MODE_AUTO); | Bildschirm nach unten scrollen |
Quelle: 🔗https://github.com/greiman/SSD1306Ascii
So sieht es aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | // benötigte Bibliotheken einbinden #include “SSD1306Ascii.h” #include “SSD1306AsciiWire.h” // Adresse I2C #define I2C_ADDRESS 0x3C // Name des OLED festlegen SSD1306AsciiWire oled; void setup() { // OLED starten Wire.begin(); Wire.setClock(400000L); oled.begin(&Adafruit128x64, I2C_ADDRESS); oled.setFont(TimesNewRoman16); // Scrollen einschalten oled.println(“Einmaleins der 10”); delay(1000); oled.clear(); // Scrollen einschalten oled.setScrollMode(SCROLL_MODE_AUTO); for (int i = 1; i <= 10; i++) { oled.println(String(i) + ” * 10 = ” + String(i * 10)); /* nach jeweils 3 Zeilen, wenn i geteilt durch 3 ohne Rest aufgeht (i % 3 == 0) -> Bildschirm löschen */ if (i % 3 == 0) { delay(1000); oled.clear(); } delay(500); } delay(2000); oled.clear(); // Scrollen ausschalten oled.setScrollMode(SCROLL_MODE_OFF); // Beispiele für Schriftarten oled.setFont(X11fixed7x14); oled.println(“X11fixed7x14”); oled.setFont(utf8font10x16); oled.println(“utf8font10x16”); oled.setFont(Callibri11); oled.println(“Callibri11”); oled.setFont(Arial14); oled.println(“Arial14”); delay(2000); oled.clear(); // Bildschirm um 180° drehen oled.setFont(Callibri11); oled.displayRemap(true); oled.print(“Bildschirm gedreht”); delay(2000); oled.clear(); // Cursor setzen oled.displayRemap(false); oled.setCursor(20, 5); oled.print(“Spalte 20, Zeile 5”); delay(2000); oled.clear(); // Bildschirmfarben tauschen oled.invertDisplay(true); oled.setFont(Arial14); oled.print(“Farben getauscht”); delay(2000); oled.clear(); // Abstand der Buchstaben oled.invertDisplay(false); oled.setFont(TimesNewRoman13); oled.setLetterSpacing(2); oled.print(“Abstand Buchstaben”); } void loop() { // nichts zu tun, Programm läuft nur einmal } |
Letzte Aktualisierung: