Hier die Demo der STemWin für das STM32F407-Disco Board
Es zeigt was mit der GUI alles Möglich ist.
(Das Demo ist für den Landscape-Mode geschrieben aber im Moment funktioniert nur der Portrait-Mode, aus dem Grund sind einige Sachen abgeschnitten.)
Zur Info : das flashen vom Demo dauert etwas.
Beispielbilder :
Hier der komplette CooCox-Projektordner zum download :
Hallo,
ich habe versucht, dieses Projekt mit einem ssd1289 in Betrieb zu nehmen, ich habe die entsprechenden Dateien hinzugefügt und überall ssd1289 eingesetzt. Der Bildschirm flackert zwar wie wild, ich bekomme aber kein vernünftiges Bild. Die Initialisierung schein zu passen, jedenfalls gibt es keine Fehler als Rückmeldung.
Wo müsste man da eventuell noch schauben?
Gruß
Eckhard
funktioniert das SSD1289 “Grundsätzlich” Also wenn du die “UB_STemWIN_init” und “GUIDEMO_Main” ausklammerst, kannst du dann das Display benutzen ohne das es Flackert (Punkte zeichnen usw) falls ja brauchst das SSD1289 event. eine andere Initialisierung per STemWIN als das ST7783.
habs grad bei mir getestet, ist bei mir auch so.
Es flackert und ab und zu fliegen paar Bilder/symbole durchs Bild.
Wenn ich die Init ausklammere und dafür die “normale” Init des SSD1289 hinzufüge, kann ich Linien und Punkte zeichnen.
Es müssen wohl noch Änderungen in der STemWin_init durchgeführt werden damit es mit unserem Display funktioniert.
Hey Corty,
hast es hin bekommen?
Ich würde gern von dem 429 disc weg kommen. Display ist mir zu klein.
Ich habe nun ein wenig mehr heraus gefunden.
Im GUIDRV_stm32f407_discovery.c
Zeile 218 werden die Treiber aufgerufen.
GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66708, GUIDRV_FLEXCOLOR_M16C0B16);
Wenn man dann auf die Segger Seite schaut, dürfte das auch mit dem ST7783 funktionieren http://segger.com/guidrv_flexcolor.html
GUIDRV_FLEXCOLOR_F66708 beinhaltet den Controller gar nicht. Jedenfalls nicht im Original von Segger. Der SSD1289 ist da aber auch nicht zu finden.
Vielleicht hilft das weiter…
sorry da fehlte ein “nicht”
Wenn man dann auf die Segger Seite schaut, dürfte das auch mit dem ST7783 nicht funktionieren
ok ich habs
GUIDRV_FLEXCOLOR_F66702
dann läuft es mit dem 1289 Controller
Hi I need anybody’s help to port stemwin to CoIDE with SSD1289 and stm32f4 discovery.someone who have did before (I’ll pay money for this)
my email : mohamed.shenawy[at]outlook.com
Hallo,
ich wollte fragen ob du nähere informationen zum portieren geben kannst? weil ich habe das stm32f4 plus das baseboard + lcd und touch (http://www.armkits.com/product/DM-STF4BB.asp) nur versteh ich absolut nicht wo und wie ich den treiber der grafikcontroller verändern könnten genauso wie den touch treiber…
weil du verwendest ja in deinem beispiel ssd1289 und ich benötige den ILI9325…
wäre super wenn du eventuell nachschlagewerke/seiten oder eventuell einen kurzen wink geben könntest in welche richtung ich suchen muss.
jedenfalls wirklich tolle arbeit! verwende sehr viel deiner bibliotheken! vielen dank!
mfg
unter ublib emWin ub findest du die eingebundenen Treiber
die musst du austauschen
Hallo,
erst mal Danke für das Super Projekt!
Ich habe eine Frage zu den Start Adressen des SDRAM.
Im Linker Script finde ich folgende Zeile:
sdram (rwx) : ORIGIN = 0xD0100000, LENGTH = 0×00400000
im Code dagegen folgende:
#define SDRAM_START_ADR ((uint32_t)0xD0000000)
Dazu zwei fragen:
1. Woher kommt der Unterschied/Offset zwischen den beiden Angaben der Startadresse von 0×100000?
2. Wie kommt die Length von 0×00400000 zustande? Das SDRAM des Disco hat 64Mbit und 16Bit Breite, also 64Mbit/16Bit=0×040000000.
Danke und Grüße,
Benedikt
die Adresse “SDRAM_START_ADR” benutzen meine Display-Librarys als Bild-Puffer. Hier werden also Daten für das Display gespeichert die nicht überschrieben werden dürfen. Aus dem Grund beginnt der Speicher den EmWin benutzen darf erst ab 0xD0100000. Und deine Rechnung ist falsch :
Die Größe vom RAM ist 64MBit. In Byte sind das 64M/8 = 8MByte => 0×800000
aber wie schon geschrieben gehen davon 0×100000 für die Grafik ab
also bleiben 0×700000. Um aber nicht den kompletten Speicher für emWin zu opfern (falls jemand noch RAM braucht) habe ich nur 4MByte
eingetragen (ich vermute emWin läuft auch mit noch weniger) und den Rest könnte man für eigene Zwecke benutzen.
Der Treiber für das SSD1289 ist im OEM-Paket a la STM oder anderen nicht in der Library einkomiliert. Einzig die Header-Files sind vorhanden. Der GUIDRV_FLEXCOLOR_F66702 Treiber lässt sich gegen knapp €1000.- bei Segger kaufen oder man schreibt selber einen Treiber für den SSD1289, wofür ich mich entschieden habe. Das Treibergrüst wird als Quelle geliefert und ist mit wenig Aufwand realisiertbar. Im Netz findet man auch einen Treiber für das SSD1289 von einem polnischen Programmierer der auch sehr gut aussieht und als Quelle und Beispielprojekt downloadbar ist und die Programmierung eines Display-Treibers sehr gut erklärt wird. Damit sollte es kaum noch eine Hürde geben viele Displays zu unterstützen.
Die einkompilierten Treiber sind Runtime konfigurierbar – man muss also nichts rekompilieren wenn man Änderungen an den Einstellungen vornehmen will.
Wenn man damit leben kann, sollte nichts im Weg stehen.
Hello, i’m trying identify the variable or pointer to the file is selected on the TREEVIEW example, but i could not, can you help me ? Thanks.
sorry, i am not firm in stemwin.