Soweit bin ich jetzt schon: Adresse 78 (Rumgehexe mit der 3C schon erledigt.) Befehle zum Initialisieren der Reihe nach eingegeben: 0x8D, 0x14, 0x20, 0x8D, 0x14, 0xAF Dann zeigt mir das Display schon einmal Rauschen, bzw. kryptische Zeichen Zeile für Zeile. Das scheint aber unvollständig. Dem Datenblatt des Controllers SSD1315 kann ich keinen Hinweis entnehmen, dass schon "Charakters" über ASCII abrufbar sind, wie man es vom HD44780- Standard so gewohnt war. Also einfache Frage: Eine "schöne" Initialisierungsroutine scheint das Teil auch nicht zu brauchen. Steht jedenfalls nichts direkt so im Datenblatt. Andersherum. Man wird nicht umhin kommen, die Libraries ausführlich zu Hilfe zu nehmen. Mehr wollte ich nicht wissen. Oder könnt Ihr mir eine supereinfache Initialisierungsroutine verraten. Wollte nur - wie gehabt - Buchstaben und Ziffern "normal" darstellen lassen. (Vorerst, nicht gleich mit etwas Komplizierten Graphischem beginnen.) Bis dann Vielen Dank für Antwort schon einmal. ciao gustav
Karl B. schrieb: > Dem Datenblatt des Controllers SSD1315 kann ich keinen Hinweis > entnehmen, dass schon "Charakters" über ASCII abrufbar sind, > wie man es vom HD44780- Standard so gewohnt war. Man darf "Zeichen" sagen. Und nein, sind sie nicht. Das ist einer der wesentlichen Unterschiede zwischen einem Graphik- und einem Textdisplay. Du musst jeden einzelnen Bildpunkt selbst von Hand setzen. Dafür gibt es natürlich "Libraries", die das übernehmen, mit nachezu beliebigen Zeichensätzen und -Größen.
https://github.com/libdriver/ssd1315 https://forum.arduino.cc/t/ssd1315/695280 include Zeichensatz in u8g2 LIB DisplayOLED.setFont(u8g2_font_ncenB08_tr); // choose a suitable font
:
Bearbeitet durch User
Karl B. schrieb: > Adresse 78 (Rumgehexe mit der 3C schon erledigt.) Warum nennt das Datenblatt auf S.15 dann als Slave Adresse die 0x3C bzw. 0x3d, je nach SA0 Bit? ("...“SA0” bit provides an extension bit for the slave address. Either “0111100” or “0111101”, can be selected as the slave address of SSD1315".) Da hast du wohl noch das R/W-Bit mit reingemischt und alles um ein Bit verschoben. Elementare Bitoperationen als Hexerei zu bezeichnen, hört sich so an, als ob du die Arbeitsweise des I2C noch nicht ganz verinnerlicht hast.
:
Bearbeitet durch User
Rainer W. schrieb: > Da hast du wohl noch das R/W-Bit mit reingemischt und alles um ein Bit > verschoben. das ist das größte "Problem" bei verschiedenen LIBs erst Recht wenn man mischt! Da hilft es nur Stück für stück durchforsten und selber bauen.
Joachim B. schrieb: > das ist das größte "Problem" bei verschiedenen LIBs erst Recht wenn man > mischt! Elementare Bitoperationen als Hexerei zu bezeichnen, hört sich etwas befremdlich an. Die I2C-Spezifikation spricht bezüglich der Adresse eine klare Sprache und alles, was sich I2C nennt, sollte sich an die dort verwendeten Begrifflichkeiten halten. In Fig.9 (S.13) sind die Signale sogar bildlich dargestellt und die Bits genau bezeichnet. https://www.nxp.com/docs/en/user-guide/UM10204.pdf Notfalls hilft ein kleiner Logikanalysator, der einem die Signale auf dem Bus darstellt und dekodiert, so dass man sofort sieht, was dort gesendet wird und ob das Ack vom Slave kommt - ganz unabhängig von möglicherweise irreführenden Interfacebeschreibungen irgendwelcher Libs oder deren Fehlinterpretation.
:
Bearbeitet durch User
Sebastian R. schrieb: > Dein Beitrag enthält keine einzige Frage. Doch nur kein Fragezeichen .... hier ein paar zum selber setzen: ????????
Karl B. schrieb: > Man wird nicht umhin kommen, die Libraries ausführlich zu > Hilfe zu nehmen. So machen es in der Tat die allermeisten Leute. Und wenn du nun noch verraten hättest, welche μC-Plattform du nutzt, hätte dir auch jemand die ebenfalls ungestellte, aber vermutlich vorhandene Frage beantworten können, welche man da am besten nimmt, und wie man sie nutzt.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.