-
Thread
Mit Wire.h über I2C auf LCD-Display 1602 zugreifen
Frank O. schrieb im Beitrag #7618869: > Wenn du ein Oled Display SSD1306 Noch ein Video dazu. https://www.youtube.com/watch?v=HtuWLufEt9g
werde ich mich in Zukunft sehr genau mit befassen. Dann brauchst du wohl noch das Datenblatt des SSD1306 COG. Ich habe dir auch die Datenblätter der größeren Displays angehängt.
-
Thread
SAM4E xplained pro mit OLED1 xplained pro
Problem: Ich erstelle ein neues Projekt für das SAM4E und füge mittels dem ASF Wizard das Modul SSD1306 Controller in mein Projekt. Dadurch werden auch automatisch die dazu benötigten Module wie IOPORT oder SPI hinzugefügt. Dann belege ich in CONF_SSD1306.h die Pins: [c] # define SSD1306_SPI_INTERFACE # define SSD1306_SPI SPI # define SSD1306_DC_PIN PIO_PD28_IDX # define SSD1306_CS_PIN PIO_PD30_IDX # define SSD1306_RES_PIN PIO_PD26_IDX # define UG_2832HSWEG04_BAUDRATE 5000000
-
Thread
1,3" OLED I2C Display hat nur Streifen
das genau für ein Display? Hast du einen Link? Bist du sicher dass es einen Controller hat der SSD1306 kompatibel ist?
einen Offset von 16 Pixel hat. Bei den 1,3" hab ich fast immer sh1106 gehabt. Bei den 0,96" eher ssd1306. Hatte ähnliche Probleme, weil der Chinamann ssd1306 versprochen und sh1106 geliefert hat.
-
Thread
SSD1306 OLED
Hi Zusammen, Ich probiere mich gerde an einem OLED-Display mit SSD1306 Controller. Ich versuche diesen an einem Mega8 ans laufen zubekommen und dabei bräuchte ich eure Hilfe. Am liebsten hätte ich natürlich die fertig vorgekaute Version die ich nurnoch in den µC laden
20MHz laufen lassen will, muss ich zwangsläuftig diesen mit 5V versorgen. Die "Logikspannung" des SSD1306 Chips darf aber nur max. 3,3V haben. Das würde dann ja heißen, dass ich die 5V Signale vom AVR vermutlich nicht direkt einspeisen kann. Das Datenblatt des SSD1306 sagt mir: Vdd = 3,3V
-
Thread
STM8, SPI und SSD1306 - seltsames Verhalten
Hi Leute, Hatte jemand schon ein OLED SSD1306 erfolgreich zum Laufen bekommen? Ich versuche gerade, eine etwas optimierte graphische Library (am STM8 laufend) für das Display zu schreiben - also nicht das in den Tutorials übliche Warten auf Flags
Da muss man sich nichts zurechtfrickeln. > Soll ich den Quelltext meiner main.c, SPI.c oder der SSD1306.c anhängen? > Alle wäre ein wenig zu viel, fürchte ich. Die Init-Sequenz und die Datensendesequenz reichen.
-
Thread
Displays mit integriertem Controller + SPI - Wo?
nachzubauen. Das Datenblatt sieht gar nicht so schlimm aus: https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf :D
Den SSD1306 kann man soweit ich weiss in diesen Varianten ansteuern: - direkt in den Framebuffer des SSD1306 schreiben - in einen Frambebuffer im RAM des µC zeichnen und dann den kompletten FB übertragen
-
Thread
attiny85 1Mhz Arduino virtuell Serial Protokoll beenden
DAVID -. schrieb im Beitrag #5765225: > Und eine funktionierende ssd1306 OLED Library konnte ich auch nicht > auftreiben. OK Das war Woll mal GARNIX. (Grade durch Zufall Gemerkt) Eine Passende Library wäre zb SSD1306_minimal. Problem an der Sache ist aber Sie scheint
void loop() { delay(1000); mySerial.println("Hello, world?"); } Und TFT #include "SSD1306_minimal.h" #include <avr/pgmspace.h> SSD1306_Mini oled; void setup() { oled.init(0x3c); delay(500); oled.startScreen(); oled.clear(); } void loop() { oled.cursorTo(0, 0);
-
Thread
Seltsames Phänomen bei serieller Übertr. ESP8266 - MBus 2. Versuch
(SSD1306_SWITCHCAPVCC, 0x3C); display.clearDisplay(); display.setTextSize(1); // Normal 1:1 pixel scale display.setTextColor(WHITE); // Draw white text display.setCursor(0, 0); display.println
(SSD1306_SWITCHCAPVCC, 0x3C); display.clearDisplay(); display.setTextSize(1); // Normal 1:1 pixel scale display.setTextColor(WHITE); // Draw white text display.setCursor(0, 0); display.println
-
Thread
MSP430 SSD1306 über I2C
gleiche ist wie der erst genannte der mitgeliefert wird? Welches Display verwendest Du mit der SSD1306 Lib, denn es gab mal ein OLED Grafik Display das Probleme hatte mit der SSD1306 Lib und man musste einen Mod machen "Adafruit" ..ich hoffe ich finde den Link nochmal und werde ihn dann pushen.
unendliche while-Schleife. Der Init-Kram steht im Datasheet: http://www.adafruit.com/datasheets/SSD1306.pdf Kapitel 9. Seite 28-32
-
Thread
ATTiny85 - OLED - I2C - U8GLIB?
bianchifan schrieb im Beitrag #4153888: > Hat wer schon mal sonst irgendwie ein SSD1306 via 3SPI betrieben? Bei uns funktioniert der SSD1306 via SPI. U8GLIB_SSD1306_128X64 u8g(10, 9, 12, 11); D10 -> SPI_SCLK D9 -> SPI_SDIN D12 -> /CS D11 -> DC D13 -> /RST (ganz wichtig auf
Mick schrieb im Beitrag #4164838: > Bei uns funktioniert der SSD1306 via SPI. Am ATTiny85?
-
Thread
Oled Display Arduino Zeilen fehlen
indirekt anfährt oder klappt das auch schon alleine? > > Welches OLED ? > > U8G -> i2c -> ssd1306 ? > U8G -> i2c -> PCF8574 -> SSD1306 ? also noch mal RTC3231 + AT24C32 EEPROM und PCF8574 funzen perfekt schon über Jahre, am AVR aus dem Studio und mit wire.h in Arduino sobald ich U8G -> i2c -> ssd1306 ? in allen I2C Variationen ACK und NACK anklemme bleibt es stecken, alleine am arduino ohne weiteres funktioniert U8G -> i2c -> ssd1306 ! am PCF8574 hängen nur Tasten und ich frage auch nur in
-
Thread
Arduino fonts "verkleinern"
https://github.com/lexus2k/ssd1306/blob/master/src/ssd1306_fonts.c hier ab Zeile 39 ist die Hex-Tabelle zum Font ssd1306xled_font6x8. Sehr viel gibt es da nicht zu reduzieren.
Ich habe eine Library für SSD1306 OLEDs geschrieben, die Zeichensätze von 8..64 Pixeln Höhe ausgeben kann. Dabei habe ich das gleiche Problem gehabt wie du, nämlich dass vor allem die größeren Zeichensätze sehr viel Platz im Flash
-
Thread
Seltsames Programmverhalten
define OLED_CLK 10 #define OLED_DC 11 #define OLED_CS 12 #define OLED_RESET 8 Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS); /* Uncomment this block to use hardware SPI #define OLED_DC 6 #define OLED_CS 7 #define OLED_RESET 8 Adafruit_SSD1306 display(OLED_DC, OLED_RESET, OLED_CS); */ #if (SSD1306_LCDHEIGHT != 64) #error("Height incorrect, please fix Adafruit_SSD1306.h!"); #endif int lastUpdated; void setup() { Serial.begin(9600); ss.begin(GPSBaud); pinMode
-
Thread
SSD1306 Bibliothek
Moin ich bin auf der Suche nach einer Bibliothek für den SSD1306 128x64px über I2C. Ich habe bereits einige gefunden, die meisten verwenden jedoch das Arduino-Framework was ich gerne vermeiden möchte, da ich diese im Atmel Studio verwenden möchte um meinen Code
Hallo, hat jemand ein Beispiel für die Anwendung der u8g2 mit demSSD1306 Display? Finde damit einfach keinen Einstieg...
-
Thread
OLED Display mit SSD1306
Bug in der Library aufmerksam gemacht worden, den ich grad behoben habe. Er trat nur auf mit einem SSD1306 Controller im Grafikmode. In der Funktion lcd_display() fehlte im Abschnitt für den SSD1306 Controller ein lcd_gotoxy(0,0);. Das habe ich grade nachgebessert.
Library auf ein SH1106-Display eingestellt mit entsprechender Adresse, das musst du ändern wenn du ein SSD1306-Display benutzt ;)
-
Thread
I2C Signal beurteilen
der Chip intern für eine Data Hold Time von 300ns sorgen, SDA darf sich 0ns nach SCL ändern. Im SSD1306-Datenblatt sieht es so aus, als ob man die 300ns extern einhalten muss. Auf dem Bild ist die Zeit kürzer (grob geschätzt).
erklärbar und so gering, dass sie keine Rolle spielen sollten. > einer Schaltung bei der ein SSD1306 OLED nicht immer > zuverlässig initialisiert wird Software-Problem. Sehr wahrscheinlich irgendwelche Timing-Constraints verdaddelt. Wetten?
-
Thread
Meine Grafiklibary für den Attiny85/SSD1306 und ein kleines Betriebssystem
schwer, man kann den Bildschirmspeicher nicht per I2C zurück lesen, das ist eine Einschränkung des SSD1306, und für einen Framebuffer fehlt das Ram. Ich würde also auf die Version auf Github verweisen, in der alles entfernt wurde was nicht wirklich sinnvoll nutzbar ist.
weitere Iteration des ganzen, diesesmal mit der > Unterstützung von hardwarebeschleunigtem 3D auf dem SSD1306 für AVR > Arduino, allerdings noch etwas alpha, Nette Spielerei, wenn man die Grafik nur um der Grafik Willen betreibt. Ich habe 2020 einen Aufbau mit einem A*Nano und SSD1306 gemacht, der
-
Thread
UART: Frame Error
uart_init(UART_BAUD_SELECT(BAUD, F_CPU)); // receive from ESP8266 sei(); i2c_init(); ssd1306_init(); ssd1306_clear(); for (;;) { readint = uart_getc(); if ((readint & UART_FRAME_ERROR) || (readint & UART_OVERRUN_ERROR) || (readint & UART_BUFFER_OVERFLOW)) { ssd1306_setpos(80, 7); ssd1306_string(" "); ssd1306_setpos(80, 7); ssd1306_numdec(readint & 0xFF00); } else if (readint & UART_NO_DATA) { } else { switch ((unsigned
-
Thread
sprintf funktioniert nicht in ESP-IDF
nicht durchläuft, wenn die Methode im Programm ist. Das ist mein Hauptprogramm. [c] #include "ssd1306.h" #include <stdio.h> void app_main() { ssd1306_setup(); char string[100]; int i=12; sprintf(string,"test %d",i); // ssd_1306_print(string, 7); ssd_1306_print("test",4); ssd1306_update(); }[/c] Wenn ich die sprintf... Zeile auskommentiere, wird auf meinem OLED Bildschirm was angezeigt, wenn nicht, nicht. Hat jemand ne idee, was falsch sein könnte?
-
Thread
SSD1306 Display, Rauschen/Schnee bei der Initialisierung
Hallo, ich habe hier ein Problem bei meiner Anwendung, bei der ich ein 0,96" SSD1306 Display mit einem XIAO SAMD21 Arduino verwende, und zwar erscheint bei jedem Neustart der Applikation am gesamten Bildschirm ein Rauschen/Schneebildschirm für ca. 3s. Danach funktioniert die Darstellung
Schaue Dir mal die lib von Greiman an, nicht perfekt, aber sparsam: > https://github.com/greiman/SSD1306Ascii Danke für den Hinweis. Bei der von Ulli kann man das auch klein kriegen, muss aber viel und an unterschiedlichen Stellen lesen.
-
Thread
SSD 1306 I2C Datenpakete
Forengemeinde, Ich habe ein kleines Verständnis Problem mit dem I2C Datenpaket, es handelt sich um ein SSD1306 Controller für OLED. Ich möchte den Command Befehl aus dem Angehangenen Bild SSD1306_1 zu dem Controller schicken. Ich würde es in dem Format schicken wie ich es "Skizziert" habe in InkedSSD1306
Hier hab ich meinen Code für HAL & SSD1306 veröffentlicht: https://www.mikrocontroller.net/topic/457781
-
Thread
SSD1306 - Adressierung einzelner Pixel im Buffer
Guten Abend, ich versuche gerade, die Adressierung der einzelnen Pixel bei einem SSD1306 zu verstehen, leider blicke ich da nicht ganz durch. Datenblatt dazu gibt es hier: https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf Die effizienteste Speicherung wäre wahrscheinlich in einem
wie sie sind und man nicht die Möglichkeit hat, das Display auszulesen (wie es bei SPI/i2C beim SSD1306 der Fall ist). Max M. schrieb im Beitrag #4840034: > Wie würdest du > vorgehen, wenn du einen einzigen Pixel setzten müsstest? Ich hab mir mal Gedanken gemacht wie ich ein einzelnes Pixel
-
Thread
Mosfet oder load switch
>Das OLED hat evt. einen Reset-Eingang, Da hast du tatsächlich Recht, wollte ein SSD1306 verwenden. Der Reset ist zwar nicht rausgeführt, aber offensichtlich gibt es diese Funktion https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf
> Da hast du tatsächlich Recht, wollte ein SSD1306 verwenden. Da hab ich eine gute Nachricht. Der SSD1306 scheint relativ gutmuetig zu sein. Ich hab den seit 2Jahren in einer Anwendung im 24h Dauerbetrieb laufen. Meine Anwendung wird zwar das
-
Thread
ESP8266 und ext OLED
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ D1, /* data=*/ D2); https://www.ebay.de/itm/162465864403 Mein Display hat 2 Adressmöglichkeiten. Muss das auch übergeben werden?
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ D1, /* data=*/ D2); u8g2_SetI2CAddress(&u8g2, 0x3C * 2); //bzw. 0x3D
-
Thread
BME280 an ESP32 mit MicroPython
Hallo Experten, möchte die Daten eines BME280 auf einem oled ssd1306 über einen ESP32-s ausgeben, mit folgendem Script (Gemäss i2c scan Adressen BME280: 0x40 und ssd1306: 0x3C): from machine import Pin, I2C from time import sleep import BME280 i2c = I2C(scl
schrieb im Beitrag #6582623: > Hallo Experten, > möchte die Daten eines BME280 auf einem oled ssd1306 über einen ESP32-s > ausgeben, mit folgendem Script (Gemäss i2c scan Adressen BME280: 0x40 > und ssd1306: 0x3C): Jaja, ich weiss, Datenblattlesen ist heutzutage out, stattdessen macht man lieber
-
Thread
I2C Display-Weis-I2C-SDD1306-128x64-Modul
andere Displays), das gibt das Display vom TO aber nicht her! ausserdem gibt es diese Displays mit SSD1306 und SH1106 Chip, beide differieren etwas in der Ansteuerung. Dein 3-Zeiler Beitrag hilft also dem TO in keinster Weise
Die SSD1306 Controller senden alle ACK ganz normal wie es sein soll.
-
Thread
ESP32 IDF Buildsystem
│ │ │ ├── fonts.h │ │ │ │ ├── i2c.h │ │ │ │ └── ssd1306.h │ │ │ ├── main.c │ │ │ ├── main.c.dist │ │ │ └── ssd1306_i2c.c │ │ ├── Makefile │ │ ├── README.md │ │ └── sdkconfig │ └── esp32-owb │ ├── component.mk
welche da auch > hingehören), noch zusätzlich ein komplettes Beispielprojekt hast > (esp32-i2c-ssd1306-oled). Deswegen hast du auch in deinem tree zweimal > "main.c". Danke! Juter Hinweis!
-
Thread
Graphig Display 128x64 mit KS0108 am I2C Bus?
es ansonsten keine anderen Anforderungen als 128×64 und I²C gibt: gibt billige OLED-Displays mit SSD1306 in der Auflösung. OT: mit etwas mehr Sorgfalt beim Verfassen deiner Beiträge erhöhst du die Chance auf schnelle und gute Antworten *deutlich*.
Leider ist die Lupe nicht im Preis mit drin. Dachte ehr an die Grösse mit 2,2 bis 3,5 Zoll und dem SSD1306
-
Thread
atmega328 avrdude verification error
safemode: Fuses OK (E:FF, H:D9, L:22) avrdude done. Thank you. [/code] Nun wollte ich mein SSD1306 Oled an dem Atmega testen, habe alle libs in Arduino IDE runtergeladen und ein minimalen Sketch geschrieben. [code] #include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306
, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels // Declaration for an SSD1306 display connected to I2C (SDA, SCL pins) #define OLED_RESET 4 // Reset pin # (or -1 if sharing Arduino reset pin) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
-
Thread
Gibt es schon skalierbare Arduino 16-Segent Font-Lib ?
Also bitte jetzt den Link dorthin. das Roland und Dankeschön :-) P.S. kann man beim SSD1306 eigentlich OR oder XOR zum OLED schicken ? Also Grafik-Linien übereinander malen..
Hab jetzt mal in die https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf geschaut. In y-Richtung kann man wohl nur in 8 pixel "page" Schritten adressieren. Dann würde ich mich wohl doch auf 8px, 16px, 32px, 40px, 48px, 56px und 64px hohe fonts beschränken. 8, 16
-
Thread
Watchdog Reset mit Oled Display und Rotary Encoder HILFE
MIN_POS, MAX_POS, START_POS, INCREMENT); r.setChangedHandler(rotate); if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("SSD1306 allocation failed")); for(;;); } startup(); display.setTextSize(4); display.setTextColor(SSD1306_WHITE); } void loop(
} } void setTemp(void) { delay(500); display.setTextSize(4); display.setTextColor(SSD1306_WHITE); display.clearDisplay(); display.fillRect(0, 60, 128, 10, SSD1306_WHITE); display.display(); do { r.loop(); } while (digitalRead(13) != LOW); delay(500); } void
-
Thread
Langsamer Bildrefresh mit ESP8266 und OLED 128x64 (SSD1306)
Wenn dein SSD1306 genug Ram (bzw. dein OLED wenig genug Pixel) hat: Bau den neuen Screen im Hintergrund auf, und schalte das Display um, sobald fertig. Befehl "Set Display Start Line"
https://bitbanksoftware.blogspot.com/2018/05/fast-ssd1306-oled-drawing-with-i2c-bit.html
-
Thread
u8glib ohne delay
zu antworten. Die u8glib ist nach meiner Erfahrung ziemlich klein. Fuer ein OLED 128x64 mit SSD1306 (iC2) VIEL KLEINER als die Adafruit SSD1306 und auch kleiner als die u8glib2. Ich benoetige sie auf einem Arduino nano. Da ist sie bei mir fast ca. 30% kleiner, was vorwiegend die dynamischen Variablen betrifft. Das heist am Ende, mit einer Adafruit SSD1306 library bin ich bei 106% Speicherauslastung und das ganze System funktioniert nicht. Mit u8glib bin ich gerade bei so ca. 65%. ALLERDINGS hat der Autor dieser Frage ganz Recht. Das delay im "picture
-
Thread
C -> Font berechnen -> Formel?
erstmal nur die einzelnen Bits ( Pixel ) setzen möchte, habe ich einige Fragen.. [c] void Ssd1306DrawPixel( int16_t x , int16_t y ) { if ( ( y >= SSD1306_LCD_WIDTH ) || ( y < 0 ) || ( x >= SSD1306_LCD_HEIGHT ) || ( x < 0 ) ) { return; } DisplayRam[ y + ( x / 8 ) * SSD1306
{ if ( font.fontPtr[font.indexNum+CharWidth] & 1<<BitPosition ) { Ssd1306DrawPixel( x + BitPosition * ActualPage , y + CharWidth ); }else { Ssd1306ClearPixel( x + BitPosition * ActualPage , y + CharWidth ); } } } } [
-
Thread
1.3" OLED Display hat nur Bildrauschen?!
OLED (diese China Teile, 1,3", gibt es auch in anderen Größen). Ich habe von M. Köhler den "lcd_ssd1306_gfx" Treiber. Es läuft über I2C. Das funktioniert auch alles (siehe bild mit kleinem Display). Hier soll aber ein größeres zum Einsatz kommen, und mit diesem bekomme ich nur Bildrauschen. Manchmal
Controller wird in der lcd.h in Zeile 61 eingestellt. Ich vermute, dein Display verwendet einen SSD1306, default ist in der Library der Controller SH1106 eingestellt.
-
Thread
Frage zu Arduino / OLED & Adafruit_SSD1306.cpp
angezeigt werden sollen. Ich benutze als Anzeige ein 128*64 OLED Display für das ich die Adafruit_SSD1306 und die Adafruit-GFX Bibliotheken nutze. Die Anzeige an sich läuft schon, zur Zeit noch mit Variablen bis ich die Sensoren alle beisammen hab. Meine Frage ist wie ich ein eigenes Bitmap als
Wenn du diese Version hast: https://github.com/adafruit/Adafruit_SSD1306/blob/master/Adafruit_SSD1306.cpp Da wird ein Buffer mit der nötigen Größe deklariert. Die Initwerte sind dann abhängig von der Bildgrösse, mindestens das Kleinste, wenn das Display größer ist werden
-
Thread
emWin oder LVGL für ePaper?
mit kompletter Breite * Pixel groß ist. lvgl kann auch 1bb, es gibt ein Beispiel mit dem berühmen SSD1306 OLED. Der Trick sind da spezielle Ausgaberoutinen, z.B. hier: https://github.com/lvgl/lvgl_esp32_drivers/blob/master/lvgl_tft/ssd1306.c lvgl auf OLED hat auch schon jemand gebaut, das war wohl
STemWin hab ich mal für einen SSD1306 auf einem F103 gebaut. Das ist recht genügsam, was den Speicherbedarf betrifft. Den meisten Platz braucht man für die Fonts. Hier ist der Code: https://cloud.it-livetalk.de/index.php/s/wZpWsMZ5L42H7Gk
-
Thread
ESP32 und OLED Display
lesen. Hat jemand einen Tipp?? [c] #include <Arduino.h> #include <Wire.h> #include <Adafruit_SSD1306.h> #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET -1 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); void scan_wire(TwoWire *wire); void
100); Serial.begin(115200); Wire.begin(-1,-1,100000); scan_wire(&Wire); display.begin(SSD1306_SWITCHCAPVCC,0x3c); display.clearDisplay(); display.setTextColor(SSD1306_WHITE); display.print("Hello World"); // display.display(); // put your setup code here, to run once:
-
Thread
Wieso funktioniert dieser Trick nicht (OLED-Reset-Problem)?
3.3V-Spannnunswandler ist zwar drauf, aber der Reset und andere IO-Leitungen gehen direkt an das SSD1306-Display, das IMHO nicht 5V-tolerant ist.
Laut Datenblatt verträgt ein SSD1306 4V, auf Inputs VCC + 0,3V, also betreibe ich ihn an 5V-Outputs 0,7V über dem Limit. Kann man einfach Dioden in die vier Leitungen MSIO, SCK, C/D und CS schalten? Daten fliessen nur von der MCU zum
-
Thread
[S] Suche Lernbücher für ESP und LVGL
SIMS-IOT-Devices/FreeRTOS-ESP-IDF-MQTT/tree/main Display: https://github.com/nopnop2002/esp-idf-ssd1306/ Zehn Jahre (von 2015) alt: https://github.com/yanbe/ssd1306-esp-idf-i2c SHT21: https://github.com/dehre/sht21 https://www.phippselectronics.com/how-to-use-an-i2c-driver-in-esp-idf/ ESP32-IDF-OLED-SSD1306: https://github.com/bkgoodman BME280-Sensor: https://esp32tutorials.com/bme280-esp32-esp-idf-oled/ https://embeddedtutorials.com/eps32/esp-idf-weather-station-with-bme280-cpp/ Neue I2C-Treiber
-
Thread
I2C Display einfache Frage
Display, es hat keinen eingebauten Zeichensatz, der einfach abgerufen werden kann - ein Display mit SSD1306 Controller ist sehr ähnlich und unterscheidet sich relativ wenig vom 1315, der 1315 ist gewissermaßen ein Upgrade auf einen SSD1306. Die Initialisierungssequenz der beiden unterscheidet sich etwas
Bildschirmspeicher schreiben. Falls Du basales C lesen kannst: https://github.com/yangjinhaoaa/OLED0.91-SSD1306-HAL/blob/master/0.91OLED-SSD1306-STM32HAL/oled.c In dem C-Files findest Du auch die Init-Sequenz fuer dieses kleine 0,96"-Display: [c] uint8_t initcmd1[] = { 0xAE, //display off 0xD5
-
Thread
STM32F103C8T6 Blue Pill - SSD1306 - u8g2
Hallo zusammen, ich habe mir das Projekt von https://github.com/w1ne/u8g2-ssd1306-CubeMX als Grundlage genommen um mir etwas auf einem OLED (SSD1306) mit der u8g2 Lib etwas auszugeben. Zur Programmierung nutze ich Stm32CubeIDE und für die Konfiguration eben STm32CubeMX. Es funktioniert
Hallo Zusammen Laut Datenblatt sollte der SSD1306 zwar 400KHz hinbekommen, aber ein paar Hindernisse gibt es schon: - Die Flexleitung hat meist einen Widerstand von mehreren 100 Ohm - Auf der PCB des OLEDs sind oft auch Widerstände um beispielsweise
-
Thread
auf LCD Display per Web schreiben (nodemcu)
260px;'>"; const char HTTP_BODY_END[] PROGMEM = "</div></body></html>"; Adafruit_SSD1306 display(128, 64, &Wire, -1); AsyncWebServer server(80); void setup() { Serial.begin(115200); if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3D)) { // Address 0x3D for 128x64 Serial.println(F("SSD1306 allocation failed")); for(;;); // Don't proceed, loop forever } display.display(); delay(2000); // Pause for 2 seconds // Clear the buffer display.clearDisplay(); WiFi.begin
-
Thread
Code for grösseres, 1.3"-Display anpassen (u8glib)
:Screen() { > #ifndef u8glib_h > #define u8glib_h > #include <u8glib.h> > #endif > //U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, > /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);// for u8g2lib > //U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_DEV_0 | U8G_I2C_OPT_NO_ACK | > U8G_I2C_OPT_FAST
false; > _showCaption = false; > > } was solln das sein? Hat das neue Display auch den SSD1306 drauf? Wenn nicht und es nur kompatibel ist, Laurin E. schrieb im Beitrag #5040553: >Der Autor des Designs meinte, man müsse >wohl die Identifiers des u8glib ändern. schau mal ob die lib
-
Thread
DEBO OLED2 0.96 0,96" OLED-Display SSD1306 SSD1312 Initialisierung TWI I2C AVR ATmeg8 Assembler ASM
;------------------------------------------------------------------------------- ldi temp1,(SSD1306_ADR) rcall TWI_MT_START_TEMP1 ;------------------------------------------------------------------------------- ldi temp,(SSD1306_CONTROL_BYTE_DATA_STREAM) ; CONTROL Byte: DATA STREAM rcall
Hier mal als Diskussionsbeitrag meine OLED SSD1306 / SH1106 Assembler Routinen als Teil eins RDA5807 Radios mit ATtiny45. - Thomas
-
Thread
[V] Ritek OLED Displays 2,4" 128*64 SSD1303
sowie SPI und I2C. Das Ganze sieht noch etwas zerhackt aus, weil ich auf die Schnelle einfach die SSD1306-library von Adafruit genommen habe. Für den älteren SSD1303 sind ein paar Anpassungen nötig: Das Display verwendet die Spalten 2-129 anstatt 0-127 und die Ausgabe ist gespiegelt. Einziger Haken
Wie ist denn die Langzeitstabilität dieser Displays? Die billigen OLED mit SSD1306 degradieren ja schon nach wenigen Monaten.
-
Thread
STM32 Grafik Display
Formfaktor? In der Größe oder Auflösung? SSD1306 ist einfach anzusteuern.
Eher in der Größe. Die SSD1306 sehen doch eher sehr klein aus.
-
Thread
OLED Display SSD1306 Tod nach Kleben
Guten Abend, mir ist ein OLED Display "SSD1306" mit 128x32 Pixeln auf seltsame Weise offenbar verstorben. Das Display ist so ein sehr kleines Exemplar ohne Schraublöcher, also schwierig zu befestigen. Ein chinesisches Standardteil für ein paar
20:48:16.661 -> I2C device found at address 0x3C ! 20:48:16.693 -> done Ich hab dann den "ssd1306_128x32_i2c.ino" Scetch aus der Adafruit_SSD1306 lib laufen lassen. Das Programm fängt an zu meckern, wenn es kein Display findet. Das Programm hat nicht gemeckert, aber es gibt auch keine Pixel. Das
-
Thread
OLED scrollText
nicht elegant: #include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels // Declaration for an SSD1306 display connected to I2C (SDA, SCL pins) #define OLED_RESET 4 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); #include "SparkFun_Si7021_Breakout_Library.h" float humidity = 0; float tempf = 0; Weather sensor; char message[] = "Temperatur
-
Thread
Datenblatt zu I2C OLED Display
Im Datenblatt zum SSD1306 findest du alles, was du brauchst.
Hallo, google mal nach SSD1306.c Gruß G.G.