fix(P4): Schwarzes Bild nach Reset am Waveshare-Panel (1.6.11)
Nach einem Reset des P4 blieb das Bild schwarz, die Hintergrundbeleuchtung brannte; nur direkt nach dem Flashen lief es. Die Bridge des Panels hat keine Reset-Leitung und hängt an Dauerstrom. Ein Reset des P4 setzt sie nicht zurück - ihre Register standen noch auf den Werten der vorigen Sitzung, während der P4 seine DSI-Strecke komplett neu aufbaut. Beim Flashen wird die Versorgung getrennt, deshalb trat der Fehler dort nicht auf. ws7_bridge_pre_init() schaltet die Bridge jetzt zuerst definiert ab (AB/AA, AD, dann AC/C2/C0), wartet WS7_BRIDGE_RESET_MS und schreibt erst danach die Grundinitialisierung. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018QoLDQeUh1dCQz7yYZVb4Y
This commit is contained in:
co-authored by
Claude Opus 5
parent
edb1e333f0
commit
e8308a9182
@@ -114,6 +114,12 @@
|
||||
// nicht bekannt; die 180-Grad-Drehung macht deshalb der PPA (WS7_ROTATE_180).
|
||||
#define WS7_MADCTL 0x00
|
||||
|
||||
// So lange bleibt die Bridge beim Start stromlos geschaltet, bevor sie neu
|
||||
// initialisiert wird. Sie hat keine Reset-Leitung und ueberlebt einen Reset des P4;
|
||||
// ohne diese Pause trifft ein frischer DSI-Start auf eine noch laufende Bridge und das
|
||||
// Bild bleibt schwarz. Bei schwarzem Bild nach Reset zuerst diesen Wert erhoehen.
|
||||
#define WS7_BRIDGE_RESET_MS 120
|
||||
|
||||
// Der GT9271 meldet im Hochformat: Roh-X 0..720, Roh-Y 0..1280. Fuer das Querformat
|
||||
// werden die Achsen getauscht. Die Spiegelung geschieht VOR dem Tausch, also noch auf den
|
||||
// Rohwerten: Roh-X wird zur Bildschirmhoehe, Roh-Y zur Bildschirmbreite.
|
||||
|
||||
Reference in New Issue
Block a user