Forum: Mikrocontroller und Digitale Elektronik STM32F469 custom board Display


von Sebastian K. (sebastian_k566)


Lesenswert?

Hi Leute,

ich habe das problem das ich einen custom board mit einem stm32f496 
habean diesem ist ein 7" touchdisplay angeschlossen und möchte dieses 
mit eclipse und touchgfx verwenden leider finde ich dafür kein passendes 
tutorial oder ein beispielprojekt in dem vllt einfach erstmal ein blauer 
hintergrund erzeugt wird. kann mir da jemand weiterhelfen würde mich 
sehr freuen

mit freundlich grüßen Sebastian Kraus

: Verschoben durch User
von captain obvious (Gast)


Lesenswert?

schon ein CubeMX Projekt mit der Hardwarekonfiguration erstellt ?

Die Beispiele vom STM32F429i-disc1 schon angeschaut ?

von Stefan F. (Gast)


Lesenswert?

Welches Display ist es denn?

von Sebastian K. (sebastian_k566)


Lesenswert?

captain obvious schrieb:
> schon ein CubeMX Projekt mit der Hardwarekonfiguration erstellt ?

hab ich aber hab es nicht hinbekommen hast du dafür ein gutes tut?

captain obvious schrieb:
> Die Beispiele vom STM32F429i-disc1 schon angeschaut ?

sind die beispiele oder BSP mit dem 469 kompatibel?

Stefanus F. schrieb:
> Welches Display ist es denn?

es ist ein 7" display der firma Actron
PH800480T013-IHC09
https://www.actron.de/displays/?artikelnr=ACT+I

von Stefan F. (Gast)


Lesenswert?

Sebastian K. schrieb:
> es ist ein 7" display der firma Actron
> PH800480T013-IHC09

Offensichtlich ist das ein Produkt des Hersteller Powertip. Auf der 
verlinkten Seite habe ich dazu keinerlei Doku gefunden.

Auf der Seite des Herstellers kommt man ohne Account an keine Infos 
heran.

Ich vermute, dass du da mit irgendeinem Code Generator (CubeMX) nicht 
weiter kommst. Dieses Ding wird sich nicht von selbst programmieren.

von Larry (Gast)


Lesenswert?


von Sebastian K. (sebastian_k566)


Lesenswert?

Stefanus F. schrieb:
> Ich vermute, dass du da mit irgendeinem Code Generator (CubeMX) nicht
> weiter kommst. Dieses Ding wird sich nicht von selbst programmieren.

das klingt nicht gut was ich von Actron bekommen habe ist ein BSP für 
embedded Wizard aus diesem konnte ich mir jetzt funktionen nehmen mit 
dem ich das display und den touchcontroller initialisieren konnte (IDE 
->Eclipse) jetzt ist meine frage wie bekomme ich dieses eclipse project 
in touchgfx zum laufen so das ich einerseits mit eclipse low level 
programmieren kann (zb uart ansteuern) und mit touchgfx die gui zum 
laufen ?

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Überlege mal, wie viele Leute hier wohl diese Software kennen, zu der du 
eine Frage hast. Es wird sicher hilfreich sein, diese irgendwo zur 
Einsicht bereit zu stellen, damit das nicht in Glaskugel-Raten ausartet.

Nur ein Beispiel-Quelltext wäre mir persönlich zu wenig. Irgendwo muss 
ja die Schnittstelle dokumentiert sein. Nicht nur die Pinbelegung, 
sondern die Kommandos und Daten. Ohne diese Info würde ich das Display 
lieber in den Müll werfen, weil ich beim kleinsten Problem wieder 
feststecken würde - zumindest wäre das zu befürchten.

von Sebastian K. (sebastian_k566)


Lesenswert?

Stefanus F. schrieb:
> Überlege mal, wie viele Leute hier wohl diese Software kennen, zu der du
> eine Frage hast. Es wird sicher hilfreich sein, diese irgendwo zur
> Einsicht bereit zu stellen, damit das nicht in Glaskugel-Raten ausartet.

Entschuldige dachte Eclipse wäre eine weit verbreitete software von der 
man in Entwicklerkreisn zumindest mal gehört hat
aber hier der link dazu:
https://www.eclipse.org/downloads/packages/release/oxygen/3a/eclipse-ide-cc-developers

touchgfx ist eine software zum entwickeln von GUI auf stm32 mcu die 
extra für diese contoller entwickelt wurde
hier der link:
https://www.touchgfx.com/

in dem müll werfen ist keine option da ich das für meinen 
ausbildungsbetrieb mache und nicht privat ;)

Larry schrieb:
> 
https://www.telerex-europe.com/content/files/pdfs/productPdfs/POW/PH800480T013-IHC09.pdf
>
> 
http://www.craftdata.co.uk/wp-content/uploads/Powertip-4in1-A-Series-TFT-List.pdf

danke sehr sehr nützlich und nett von dir es hier zu verfügung zu 
stellen

von Stefan F. (Gast)


Lesenswert?

Klar kennen wir Eclipse. Auch TouchGFX ist vielen bekannt.

Ich meinte die Software die zum Display gehört, das "BSP für
embedded Wizard".

> danke sehr sehr nützlich und nett von dir es hier
> zu verfügung zu stellen

Ich finde die Links von Larry auch hilfreich. Leider fehlt dennoch die 
Dokumentation der Software-Schnittstelle.

von captain obvious (Gast)


Lesenswert?

sollen wir weiterraten wie du das display an den uC angeschlossen hast ?
Hast du externes RAM als Bildpuffeer oder muss alles in den uC RAM 
passen ?
Ohne Kenntnis der Hardware keine Software.

Tut falls du das Display am LTDC korrekt angeschlossen hast.
https://www.st.com/content/ccc/resource/technical/document/application_note/group0/25/ca/f9/b4/ae/fc/4e/1e/DM00287603/files/DM00287603.pdf/jcr:content/translations/en.DM00287603.pdf

von Sebastian K. (sebastian_k566)


Lesenswert?

captain obvious schrieb:
> sollen wir weiterraten wie du das display an den uC angeschlossen hast ?

natürlich nicht bin ja froh das ihr mir so gut und schnell helfen wollt

captain obvious schrieb:
> Hast du externes RAM als Bildpuffeer oder muss alles in den uC RAM
> passen ?

also als erstes
https://www.actron.de/files/actron/source/Spezifikationen/LIZARD/LIZARD_AppNote_v1.2.pdf
das ist das board was ich zur zeit verwende WELCHES ABER nur für jetzige 
testzwecke genommen wird später soll das display an eines unserer custom 
boards benutzt werden deswegen wäre es schön wenn ihr daraus jetzt 
informationen nehmt mich darauf hinzuweisen könnt das sie dort enthalten 
sind

zusätzlich ist der wunsch das es später ohne extern speicher 
funktionieren soll (anfangs aber kein muss) da nur sehr einfache und 
kleine guis genutzt werden denke ich sollte dies machbar sein und wenn 
möglich soll es ohne OS laufen (anfangs aber kein muss)da sich dann 
unsere bisher entwickelten Firmwares leichter integrieren lassen

Falls noch weiter informationen benötigt werden sagt bescheid ich werde 
sie dann schnellst möglich posten und sorry das mich erst jetzt wieder 
melde aber da ich das ganze an meinen arbeits PC mache kann ich die 
informationen nunmal auch nur während  dieser zeit posten

captain obvious schrieb:
> Tut falls du das Display am LTDC korrekt angeschlossen hast.
> 
https://www.st.com/content/ccc/resource/technical/document/application_note/group0/25/ca/f9/b4/ae/fc/4e/1e/DM00287603/files/DM00287603.pdf/jcr:content/translations/en.DM00287603.pdf

DANKE SEHR ich geh davon aus das es korrekt angeschlossen ist da ich 
jetzt auf dem display schonmal ein bild welches ich vorher mit einem bmp 
to rgba converter umgewandelt hab auf dem display anzeigen konnte (indem 
ich es per Kommando in den sdram schicke) der touchcontroller (stmpe811) 
funktioniert auch

leider weiß ich nicht ob ich die firmware teile aus dem bsp von actron 
für embedded wizard hier posten darf :(

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Dieses Dokument enthält die Empfehlung, Keil zu verwenden. Mach das. Und 
dann gehst du genau so vor, wie in diesem Dokument beschrieben steht.

Soweit ich das sehe, generiert dieses Lizard Tool ein Source Projekt 
dass die Grafiken und die Library zum Ansteuern des Displays enthält. 
Dieses sollst du in der Keil IDE mit Leben (Programmcode) anreichern.

Was aber immer noch fehlt, ist die Programmieranleitung. Ein generiertes 
Beispielprojekt ist noch keine Anleitung. Besorge Dir die Anleitung. 
Manche Hersteller nennen es "API Reference". Dazu gehört in der Regel 
noch ein "Tutorial" oder "Application Notes" mit konkreten 
Anwendungsbeispielen.

von Sebastian K. (sebastian_k566)


Lesenswert?

Stefanus F. schrieb:
> Soweit ich das sehr generiert dieses Lizard Tool ein Source Projekt dass
> die Grafiken und die Library zum Ansteuern des Displays enthält. dieses
> sollst du in der Keil IDE mit Leben anreichern.

mh leider ist dies keine option da nicht für jedes project eine neue 
toolchain entstehen sollte und wie ich schon gesagt hab das display 
lässt sich jetzt schon mit eclipse verwenden die hauptfrage ist jetzt 
wie bekomme ich mein ecplipse project jetzt mit touchgfx zum laufen

leider hast du recht damit das diese Anleitungen fehlen und ich find das 
auch nicht gut aber ich muss das ganze halt jetzt umdrehen und aus dem 
Board Support Package für embedded wizard mir alle wichtigen 
informationen die ich benötige rausfiltern ich bin jezt nochmal einen 
schritt zurück gegangen und probiere gerade mit cubemx ein project zu 
erstellen denn mit diesem project kann ich eclipse und touchgfx 
verwenden. Hoffe hab das richtig verstanden ;).

von Stefan F. (Gast)


Lesenswert?

Na dann viel Glück, das wird sicher ein umfangreiche Reverse-Engineering 
Sitzung.

Lohnt sich der Aufwand wirklich?

von Sebastian K. (sebastian_k566)


Lesenswert?

Stefanus F. schrieb:
> Lohnt sich der Aufwand wirklich?

für mich ja da ich so sehr viel lernen kann. danke dir trotzdem für 
deine hilfe bis hier hin falls du noch nützliche tips für mich hast wäre 
ich dir sehr dankbar :).

von Stefan F. (Gast)


Lesenswert?

Na du bist ja extrem höflich. Eigentlich konnte ich noch gar nicht 
helfen. Wird wohl auch so bleiben.

von Johannes S. (Gast)


Lesenswert?

Das sind zwei große Baustellen wie ich das sehe, touchGFX und eigene HW 
mit schneller Grafik. Eine schnelle Grafik ist unbedingt nötig für 
touchGFX, die schubsen viele Pixel für die animierten Effekte. Und dann 
muss man die SW auch erstmal verstehen, da wird C++ mit einer Menge von 
dem genutzt was C++ hergibt. Es gibt zwar mittlerweile einen Designer 
der einiges leichter macht, man muss aber trotzdem schon ins 
eingemachte. Man kann etwas mit dem Simulator üben, hilfreich ist aber 
mit HW anzufangen die touchGFX schon direkt unterstützt wie einige 
Discovery Boards.
Ich weiss nicht ob die Quellen jetzt komplett offen sind, bisher wurde 
immernoch ein Teil als Lib (archive file) gelinkt und Draupner bietet 
die Treiber für custom HW als Dienstleistung an.

von Sebastian K. (sebastian_k566)


Lesenswert?

Johannes S. schrieb:
> Ich weiss nicht ob die Quellen jetzt komplett offen sind, bisher wurde
> immernoch ein Teil als Lib (archive file) gelinkt und Draupner bietet
> die Treiber für custom HW als Dienstleistung an.

immerhin soll es ja möglich sein aus cubemx custom hardware projecte zu 
erstellen und denen eine gui mit touchgfx zu geben laut dieser anleitung 
von touchgfx
https://touchgfx.zendesk.com/hc/en-us/articles/360020001492-Getting-Started-with-CubeMX-and-TouchGFX

von Stefan F. (Gast)


Lesenswert?

Dir fehlt die Brücke zwischen TouchFx und dem Display (allgemein als 
Treiber bezeichnet).

von Sebastian K. (sebastian_k566)


Lesenswert?

Stefanus F. schrieb:
> Dir fehlt die Brücke zwischen TouchFx und dem Display (allgemein als
> Treiber bezeichnet).

aber alle wichtigen informationen über das display geb ich doch in 
meinem cubemx projekt an welche ja in den "Treibern" stehen sollten

von Harry L. (mysth)


Lesenswert?

Sebastian K. schrieb:
> aber alle wichtigen informationen über das display geb ich doch in
> meinem cubemx projekt an welche ja in den "Treibern" stehen sollten

Nö!
Mit CubeMX kannst du die Schnittstellen grundlegend initialisieren - 
nicht mehr, aber auch nicht weniger.

Von der Hardware, die du an die Schnittstellen anschließt, weis CubeMX 
überhaupt nix.

Dir fehlen massig Grundlagen!
Bist du sicher, daß dein Vorhaben nicht mindestens 1 Nummer zu groß für 
deinen Wissensstand ist?

von Larry (Gast)


Lesenswert?


von Larry (Gast)


Lesenswert?


von Stefan F. (Gast)


Lesenswert?

Sebastian K. schrieb:
> Stefanus F. schrieb:
>> Dir fehlt die Brücke zwischen TouchFx und dem Display (allgemein als
>> Treiber bezeichnet).
>
> aber alle wichtigen informationen über das display geb ich doch in
> meinem cubemx projekt an welche ja in den "Treibern" stehen sollten

Nein, ein Treiber ist ein Stück Software, dass auf der einen Seite die 
Schnittstelle von touchFx unterstützt und auf der anderen Seite die 
Schnittstelle zum Display.

Dein Windows hat auch keinen blassen Schimmer, wie eine Nvidia GPU 
funktioniert. Windows möchte nur hier ein Bild einblenden, dort einen 
schwarzen Kasten malen und darin etwas Text ausgeben. Windows definiert 
eine API, die genau vorschreibt, welche Kommandos der Grafiktreiber 
unterstützen muss. Etwa:

drawPixel(x ,y, farbe);
drawLine(fromX, fromY, toX, toY, farbe);
drawImage(x,y,width,height,filename);
drawtext(x,y,font,"Hello World!");

Das ist technisch gesehen eine *.h Datei. Die zugehörige Implementierung 
programmiert Nvidia als *.c Datei und liefert sie im compilierten *.dll 
Format. AMD implementiert genau die gleiche Schnittstelle für seine 
Chips und Intel macht es ebenso.

Nun hat Windows also eine *.h Datei und du als Endkunde kannst wahlweise 
drei unterschiedliche Grafikkarten einbauen. Dazu hast du drei 
unterschiedliche *.dll Dateien (die Treiber) vorliegen.

Die Treiber kommunizieren wiederum mit der GPU des jeweiligen 
Herstellers. Jede funktioniert anders, auch wenn sie im Prinzip 
letztendlich die gleiche Aufgabe erfüllen (nämlich einen Bildschirm 
anzusteuern).

Du brauchst einen Treiber, der die API von touchFx implementiert und zu 
diesem Display passt. So etwas kann man vom Display Hersteller machen 
lassen, oder selbst programmieren - wenn man denn die 
Programmieranleitung der Bauteile/Chips hat, aus denen das Display 
gebaut wurde.

von Sebastian K. (sebastian_k566)


Lesenswert?

dasnn frag ich mich warum ich dem ltdc in cubemx informationen zum 
display gebe

von Harry L. (mysth)


Lesenswert?

Sebastian K. schrieb:
> dasnn frag ich mich warum ich dem ltdc in cubemx informationen zum
> display gebe

Informationen zur Schnittstelle deines Display - Ja

Informationen zum eigentlichen Treiber - Nein

von Stefan F. (Gast)


Lesenswert?

Sebastian K. schrieb:
> dasnn frag ich mich warum ich dem ltdc in cubemx informationen zum
> display gebe

Weil CubeMx für einige Displays die Treiber mitbringt. Für deins aber 
nicht.

von Harry L. (mysth)


Lesenswert?

Stefanus F. schrieb:
> Sebastian K. schrieb:
>> dasnn frag ich mich warum ich dem ltdc in cubemx informationen zum
>> display gebe
>
> Weil CubeMx für einige Displays die Treiber mitbringt. Für deins aber
> nicht.

CubeMX bringt gar keine Treiber mit!
Das integriert lediglich vorhandenen Code in das Projekt - und das auch 
nur für Demo-Boards. (Discovery & Co)

Beitrag #5772209 wurde vom Autor gelöscht.
von Stefan F. (Gast)


Lesenswert?

Cyblord -. schrieb im Beitrag #5772209:
>> Das integriert lediglich vorhandenen Code in das Projekt
> Das sind dann die Treiber.

Allerdings im Quelltext-Format (nicht *.dll).

von Cyblord -. (cyblord)


Lesenswert?

Stefanus F. schrieb:
> Cyblord -. schrieb im Beitrag #5772209:
>>> Das integriert lediglich vorhandenen Code in das Projekt
>> Das sind dann die Treiber.
>
> Allerdings im Quelltext-Format (nicht *.dll).

Und wo ist definiert dass ein Treiber als .dll vorliegen muss um ein 
Treiber zu sein?

von Harry L. (mysth)


Lesenswert?

Stefanus F. schrieb:
> Cyblord -. schrieb im Beitrag #5772209:
>>> Das integriert lediglich vorhandenen Code in das Projekt
>> Das sind dann die Treiber.
>
> Allerdings im Quelltext-Format (nicht *.dll).

augenroll

Natürlich kein dlls, aber auch nicht zwingend Source.
Das können auch Blobs sein. (Librarys wie im Fall von STEmWin z.B.)

von Stefan F. (Gast)


Lesenswert?

Cyblord -. schrieb:
> Und wo ist definiert dass ein Treiber als .dll vorliegen muss um ein
> Treiber zu sein?

Harry L. schrieb:
> augenroll

Das Cyblord kann nichts dafür, der ist halt so.

von Larry (Gast)


Lesenswert?

Warum nimmst Du nicht ein fertiges TouchGFX Projekt fürs  429er Disco 
board  und modifizierst es entsprechend deinem Display .
LCD geht klassisch über RGB , vsync , hsync ... (kein DSI wie beim 
769er).
-Also Timing fürs Display anpassen , Framebuffer ,...

Steht doch alles notwendige unter "Porting TouchGFX" (siehe link oben).
Den Schaltplan vom Board mal näher anschauen schadet sicher auch nicht .

Btw. Warum das Lizard board ?

von Stefan F. (Gast)


Lesenswert?

Larry schrieb:
> Warum das Lizard board ?

Scheint sportlicher Ehrgeiz zu sein.

von Sebastian K. (sebastian_k566)


Lesenswert?

Larry schrieb:
> Warum das Lizard board ?

weil es zum display dazu kam und alle notwendige anschlüsse drauf sind 
deswegen haben wir uns geeinigt das als einstieg zu nehmen bevor unser 
hardware designer extra ein board zum ausprobieren entwickeln muss

danke Larry für den tip den weg werde ich wohl dann als nächstes 
probieren

Larry schrieb:
> Warum nimmst Du nicht ein fertiges TouchGFX Projekt fürs  429er Disco

gibt es einen besonderen grund warum ich nicht das Projekt für das 
STM32469I Evaluation Board nehmen sollte es hat ja die selbe mcu wie das 
lizard?

: Bearbeitet durch User
von Kurt P. (kurtow187)


Lesenswert?

Hallo erstmal und Grüße an alle User!

Dies  ist mein erster Post hier im Forum, aber ich lese schon lange mit, 
und habe so manche gute Information schon verwerten können.

Vielen Dank dafür!



Hallo Sebastian,

Du bist jetzt nicht mehr ganz allein mit 'Deinem' Lizard Board!
Auch wir haben das angeschafft und wollen damit 5,0 und 7,0 Zoll 
-Displays betreiben.

Hier einige ganz neue Informationen, die Du vielleicht noch nicht 
kennst.
Von EMB-Wizard ist die Version 9.20 rausgekommen.  Darin ist das 
Lizard-board schon gelistet, allerdings ist die Targetumgebung noch 
nicht downloadbar, soll aber in den nächsten Tagen verfügbar sein.

Dann soll es auch eine Version für den GCC geben.

Sebastian K. schrieb:
> gibt es einen besonderen grund warum ich nicht das Projekt für das
> STM32469I Evaluation Board nehmen sollte es hat ja die selbe mcu wie das
> lizard?


Das STM32469I Evaluation Board hat ein Display mit DSI-Schnittstelle.

Wenn Du experimentieren willst, dann wäre das STM32429-Eval besser, da 
das ein paralleles Display hat.


Vielleicht warten wir noch ein paar Tage, wie es weiter geht...

Auf jeden Fall wäre das Lizard sehr interessant,
wenn man es zum Laufen kriegt.


Gruß Kurtow

von Kurt P. (kurtow187)


Lesenswert?

Larry schrieb:
> Warum nimmst Du nicht ein fertiges TouchGFX Projekt fürs  429er Disco
> board  und modifizierst es entsprechend deinem Display .
> LCD geht klassisch über RGB , vsync , hsync ... (kein DSI wie beim
> 769er).
> -Also Timing fürs Display anpassen , Framebuffer ,...
>
> Steht doch alles notwendige unter "Porting TouchGFX" (siehe link oben).
> Den Schaltplan vom Board mal näher anschauen schadet sicher auch nicht .
>


@Larry

Sorry, ich hab jetzt erst gesehen, dass Du den Tipp mit dem STM32F469
schon gegeben hattest.

> Btw. Warum das Lizard board ?
Das hat einen 50pol. Stecker fürs Display schon drauf und kann mit 5-15 
Volt versorgt werden.
Es gibt Displays von 3,5 - 7,0"  mit Helligkeitswerten von 300 - 1000 
cd,
die man damit verwenden kann.


Außerdem haben die ST-Evaluation-Boards extrem enge Lizenzbedingungen.
Man darf sie eigentlich für nichts benutzen als zum Ausprobieren.

Hobbyisten muss das nicht jucken, aber für professionelle Anwender kann 
das
durchaus wichtig sein.
Wenn man sich lizenzkonfom verhalten will, darf man mit den ST-Boards 
nicht einmal ein Einzelgerät bauen, was man im eigenen Betrieb als 
Prüfgerät oder
Messanlage verwendet.

Gruß Kurtow

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
Noch kein Account? Hier anmelden.