Nextion Display mit STM32 CubeIDE Kommunikationsproblem

OP #7959833
Lesenswert?

Guten Morgen zusammen,

leider habe ich einige Probleme mit dem Nextion Display. Ich habe vor, dass das Display Daten von meinen Mikroprozessor (STM32G474RE) empfangen kann. Wenn ich das Nextion Display nur mit dem PC verbinde und den Nextion Editor nutze, funktioniert es. Also das Display geht an und ich kann den Text verändern.

Wenn ich das ganze aber nun über STM32CubeIDE laufen lasse und (HAL_UART_Transmit)Daten sende, erhält das Display die Nachricht nicht. Die Kommunikation funktioniert also nicht.

Angeschlossen ist es richtig. VCC Display auf VCC Mikroprozessor, GND auf GND, RX auf TX und TX auf RX (also überkreuzt). Fehlermeldung gibt es beim HAL_UART_Transmit ebenfalls keine, da bekomme ich als Rückmeldung HAL_Okay. Baudrate ist auf 9600. Habt Ihr noch andere Ideen, wie es funktionieren kann? Auf Youtube gibt es zwar Tutorials, wenn man diese nachbearbeitet, funktioniert die Kommunikation allerdings ebenfalls nicht.

Habt Ihr Tipps, woran es noch liegen könnte? Ihr würdet mir wahnsinnig helfen damit!

OP #7959913
Lesenswert?

Nein, ich habe es bislang nicht kontrolliert gehabt, habe leider heute keinen Logic Analyzer und Oszi vor Ort gehabt. Ich habe via PuTTy geschaut, ob Nachrichten ankamen. Bei den oben genannten Mikroprozessor nicht. Ich habe nun einen stm32f401RE genutzt. Da kommen bei PuTTy nachrichten bei 115200 Baud an ( die richtigen), bei 9600 Baud kommen nur ▒▒▒8▒▒▒3▒▒▒3▒▒▒▒1▒▒▒1▒3:▒3▒(▒3▒.▒8▒(▒8▒1▒1▒8▒▒▒▒▒8▒3▒q▒3▒3▒(▒▒▒8▒▒▒▒▒1▒8▒:▒3▒'▒q an. Ich denke der Fehler kann also damit zu tun haben. Wüsstest du, wieso nur zufällige komische Zahlen heraus kommt.

Persönliche Seite #7960062
Lesenswert?

Pin nicht korrekt konfiguriert, DMA nicht korrekt konfiguriert (wobei du ja die Funktion ohne DMA nutzt), UART Baudrate oder Frame-Format falsch eingestellt, falscher Signalpegel, Mikrocontroller betritt Standby-Modus bevor die Nachricht vollständig abgeschickt ist, Interrupts nicht aktiviert, Peripherie-Takt nicht eingeschaltet, Prozessortakt falsch eingestellt oder zu ungenau (RC-Oszillator?), Inhalt der Nachricht fehlerhaft...

#7960146
Lesenswert?

Mikrorozessorf schrieb:

Ich habe nun einen stm32f401RE genutzt. Da kommen bei PuTTy nachrichten bei 115200 Baud an ( die richtigen), bei 9600 Baud kommen nur ▒▒▒8▒▒▒3▒▒▒3▒▒▒▒1▒▒▒1▒3:▒3▒(▒3▒.▒8▒(▒8▒1▒1▒8▒▒▒▒▒8▒3▒q▒3▒3▒(▒▒▒8▒▒▒▒▒1▒8▒:▒3▒'▒q an.

Das Problem wird sicherlich nicht leicht zu finden sein...

OP #7960413
Lesenswert?

So kleines Update, erstmal Danke für alle Ratschläge. Mittlerweile funktioniert die Übertragung per PuTTy problemlos. Die richtige Ausgabe wird getätigt. Nun Schritt 2 wäre es gewesen, die Daten an das Display zu senden. Erstmal war mein Plan zu überprüfen, ob Daten überhaupt am TX/RX gesendet / empfangen werden. Wollte das ganze testen, indem ich tx und rx verbinde und über hal transmitte und receive. Transmit klappt lt. Rückmeldung. Receive empfängt nichts (Timeouted nur). Da ist mein Gedanke, dass es am STLink liegt, da die Daten weiterhin an PuTTy gesendet werden.Habe dann mal die Brücke entfernt vom STLink, dann lässt sich das Programm aber nicht mehr Debuggen/Laufen. (Bin derzeit dabei mich noch einzuarbeiten, daher bitte ich um Entschuldigung, falls manches unlogisch ist/klingt). Jemand eine Idee, wie ich weiter verfahren kann?

Persönliche Seite #7960427
Lesenswert?

Mikrorozessorf schrieb:

Wollte das ganze testen, indem ich tx und rx verbinde und über hal transmitte und receive

Wie sorgst du dafür dass beides gleichzeitig läuft?

Mikrorozessorf schrieb:

Da ist mein Gedanke, dass es am STLink liegt, da die Daten weiterhin an PuTTy gesendet werden

Was hat der UART mit dem ST-Link zu tun?

Mikrorozessorf schrieb:

Habe dann mal die Brücke entfernt vom STLink

Welche?

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