STM32F407 DISCOVERY mit EVE3 50GTPC von MatrixOrbital

OP #7599182
Lesenswert?

Hallo,

ich bin aktuell am Programmieren eines STM32F407 DISCOVERY. An diesem soll das 5 Zoll große Display EVE3 von MatrixOrbital mit kapazitivem Touchscreen und 800x480 Pixeln angeschlossen werden.

Das Display und der Mikrocontroller kommunizieren über den SPI2 und einer Taktfrequenz von ca. 2 MHz. Die Initialisierung des Codes wurde nach ProgrammingGuide durchgeführt. Dort funktionieren auch alle Lese- und Schreibzugriffe, danach zeigt mir das Display oftmals viele bunte Striche auf weißem Hintergrund oder nur einen weißen Hintergrund. Leider werden Befehle die ich in die Displayliste schreibe ignoriert (siehe erste Displayliste in der Displayinitialisierung). Ich hab ebenfalls probiert die bereitgestellt Beispielbibliothek zu verwenden und ebenfalls das bekannte Testprogramm für die MatrixOrbital Displays versucht auszuprobieren. Leider ohne Erfolg

Da ich selber nicht weiterkomme und ich bald ein Ergebnis brauche, hoffe ich, dass mir hier jemand helfen kann.

Programmiert wird das Ganze in der CubeIDE. Angehängt hab ich das Datenblatt und den ProgrammingGuide des verbauten Controllers, mein C-Source-File und die Projektdatei.

Grüße

Angehängte Dateien:
OP #7599294
Lesenswert?

Als Messmittel verwende ich ein PC-Oszilloskop (Hantek6022BE) mit zwei Kanälen an denen jeweils ein 10:1 Tastkopf angeschlossen ist. Das Display wird aktuell über ein Labornetzteil mit Spannung versorgt. Fotos vom realen Aufbau sowie die SPI-Signale bei einem einfachen Schreibbefehl (wr8(REG_RAM + REG_ROTATE, 0x55)) auf MOSI und Lesebefehl (rd8(RAM_REG + REG_ID)) MISO habe ich angehängt.

Beide sind innerhalb der while-Schleife in main und nach der Displayinitialisierung durchgeführt worden.

OP #7601540
Lesenswert?

Vielen Dank für die zahlreichen Antworten. Ich hab nun den DMA rausgeworfen und das Display schaltet sich zuverlässig ein und zeigt einen weißen Bildschirm. Wenn die Displaylist_Befehle funktionieren sollte das Display mit dem Befehl CLEAR_COLO_RGB(0,0,0) doch eigentlich schwarz sein? Die entsprechenden SPI_Commands hab ich überprüft und diese sind korrekt.

Damit der Code leichter zu verstehen ist habe ich diesen in Bezug auf Displaylist_Befehle an den ProgrammingGuide angepasst und ihn hier wieder mit angehängt. Ich bin um jeden Vorschlag froh. Vielen Dank schon mal.

Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren