Hallo, Viele der älteren GD32 waren ja mehr oder weniger Klone oder geringfügig modifizierte Varianten ähnlich heißender STM32 Typen. Jetzt hab ich hier einen GD32F350C6 (M4, eine Bank mit 1k Sektoren bei 0x8000000, Flash controller wie GD32F170 welcher allerdings ein M3 ist) Leider unterstützt JLink diesen (noch immer) nicht direkt. Der scheint relativ neu zu sein. Ich finde auch keinen vergleichbaren STM32. Wenn ich den JLink anlüge und sage es sei ein GD32F170C4 kann ich flashen und debuggen. Allerdings beschwert er sich dann es sei kein M3 wie angegeben. Jetzt bin ich auf der Suche nach einer noch besser passenderen Alternative. Er sollte den identischen Flash-Controller haben, die Sektorgröße soll 1k sein und es soll ein M4 sein. Kennt jemand aus dem Bauch raus einen Kandidaten dafür von STM? Edit: der STM32F301C6 ist zum Beispiel ganz ähnlich, hat aber eine Sektorgröße von 2k. Auf den ersten Blick scheint es als könne ich flashen und debuggen aber dann stellt sich raus daß bei einem Erase nur jeder zweite Sektor gelöscht wird weil der JLink denkt er löscht immer gleich 2k. Also auch unbrauchbar. Dabei stelle ich auch fest daß der JLink-commander beim Löschen angeblich verifiziert aber das ist gelogen, es fällt ihm nicht auf daß immer nur die ersten 1k eines 2k-Blocks leer sind.
:
Bearbeitet durch User
Die exakten Typenbezeichnungen sind doch nur drin, um Arbeit zu sparen. Schon mal versucht einen generic M4 Core auszuwählen und den Rest von Hand einzustellen?
Tilo schrieb: > Schon mal versucht einen generic M4 Core auszuwählen und den Rest von > Hand einzustellen? So einfach kann man das nicht von Hand einstellen, ich müsste ein Plugin für JLink schreiben welches das Flash-Programmieren/Löschen/etc. gemäß Datenblatt implementiert, sozusagen einen Treiber für den verbauten FMC der die Schnittstelle des J-Link für den konkreten Chip implementiert. Das Faß will ich nicht aufmachen, ich versuch dann doch lieber einen existierenden zu finden der in allen entscheidenden Parametern gleich ist.
Ein Plugin braucht es da nicht. Da reicht ein Skript. Spezielle Sachen sind schnell erledigt, in dem man direkt auf die Register schreibt.
Tilo schrieb: > Ein Plugin braucht es da nicht. > Da reicht ein Skript. > Spezielle Sachen sind schnell erledigt, in dem man direkt auf die > Register schreibt. Ja, das hab ich auch schon gemacht um zum Beispiel die Lockbits zu setzen oder einen gelockten wieder zu löschen. Aber ich will auch ganz normal aus der IDE heraus uploaden und debuggen können, ich wüsste nicht wo ich da ein script plazieren könnte.
Was für eine IDE? Das läuft dann oft über openocd? Schau dir die Konfiguration mal an. Da wird auch nur ein Skript erstellt. Das geht alles Problemlos. Wichtiger ist da eher, dass im Linker Skript die Adressen passen und das der Startup Code passt. Das ist aber alles unabhängig vom Debugger.
Du koenntest die Algorithmen auch in Blackmagic Debug Probe https://github.com/blacksphere/blackmagic ergaenzen. Mit https://github.com/UweBonnes/blackmagic/tree/stlinkv2 geht das ganze auch mit der Original ST firmware.
Tilo schrieb: > Was für eine IDE? > > Das läuft dann oft über openocd? Eclipse. Ich lass es mit dem JLink Debugserver laufen und verwende den JLink Commander um scriptgesteuerte Sachen zu machen (flashen, locken, etc). Ich hab mir da schon eine kleine Infrastruktur aufgebaut basierend auf JLink Tools für alle anderen MCUs mit denen ich zu tun habe, das möchte ich gerne möglichst unverändert auch dafür verwenden ohne allzugroße Extrawürste zu braten und aufwendige Workarounds zusammenzustricken für die Zeit bis er in ein paar Monaten wahrscheinlich sowieso offiziell supportet wird. Funktionell ist ja momentan auch alles OK wenn ich ihm einfach einen GD32F170 (oder einen STM32 M3 mit dem selben FMC) vorgaukle, ich kann flashen, debuggen, erasen, locken, unlocken, etc. Ich wollte nur als Sahnehäubchen noch die blöde Warnung bezüglich M4/M3 losbekommen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.