Hallo, ich habe ein seltsames Problem mit einem parallelen 24bit LCD an einem STM32(H743). Aus mir unerklärlichen Gründen wird die rote Farbe falsch dargestellt, und nach langem Debugging habe ich noch nicht herausgefunden, was das Problem ist. Anbei ist ein Bild mit Farbgradienten in jeweils Rot, Grün und Blau, und wie es vom LCD dargestellt wird. Die Gradienten in Grün und Blau sehen so aus wie erwartet, allerdings ist beim roten etwas seltsam. Ich habe zwei mal bemerkt, dass sich im laufenden Betrieb die Reihenfolge der roten 'Farbblöcke' plötzlich ändert, konnte es aber nicht fotografieren oder reproduzieren. Ich habe mal das Display getauscht, ohne Besserung. Das LCD ist über die LTDC-Schnittstellt auf einem selbsterstellten Board angeschlossen. Der Framebuffer bzw. Layer 0 zeigt direkt auf das Bild, das im Flash liegt, also ohne es vorher mit DMA2D in den RAM zu kopieren (was jedenfalls auch nichts änderte). Das Bild ist im ARGB8888-Format, und Layer0 ist ebenso auf ARGB8888 gestellt. Wenn ich beides auf RGB565 stellt sieht es genau so aus. Im c-Code des Bildes kann so einen Farbverlauf nicht feststellen. Mit den Timing-Parametern der LTDC-Schnittstelle habe ich herumgespielt, ohne eine Änderung zu sehen. Hat irgendjemand eine Idee in welcher Richtung ich nach dem Fehler suchen könnte?
Marvin M. schrieb: > Datenbit (Hardware) vertauscht. Das war auch mein erster Verdacht, allerdings ist das Display genau so angeschlossen, wie im Datenblatt und CubeMX angegeben. Welche Bits denkst Du denn könnten vertauscht sein?
Da ist offenbar zusätzlich zu den vertauschten Bits noch ein simpler Wackelkontakt im Spiel. Denn da werden einige Bits gar nicht angesteuert. Wenn man sich das Foto vom Display anschaut, dann sieht es aus, als ob die roten Balken in sich unterschiedlich hell wären. Wenn man aber die Drumrum mal abdeckt, dann sieht man, dass sie in sich gleich hell sind. Letztlich werden aber nur 4 unterschiedliche Rottöne ausgegeben. Und es sieht so aus, als ob die unteren 6 Bits gar nicht angesteuert werden und die oberen beiden vertauscht sind. rgb schrieb: > allerdings ist das Display genau so angeschlossen Zeig doch mal...
rgb schrieb: > Das war auch mein erster Verdacht, allerdings ist das Display genau so > angeschlossen, wie im Datenblatt und CubeMX angegeben Mal das Errata Sheet gecheckt? Es gibt Prozessoren bei denen die LCD Leitungen komplett anders belegt sind als im DB dargestellt. Das DB zu korrigieren hält man aber nicht für nötig und schreibt das ins Errata Sheet...
Lothar M. schrieb: > Da ist offenbar zusätzlich zu den vertauschten Bits noch ein simpler > Wackelkontakt im Spiel. Denn da werden einige Bits gar nicht > angesteuert. Ding, ding, ding! Unter der Lupe sahen die Lötstellen alle gut aus, nachdem ich aber nochmal mit dem Lötkolben drübergegangen bin sieht alles aus wie es soll. Vielen Dank =D
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.
