Hallo! Ich überlege, aus Gründen der Wartungsfreundlichkeit einige ARM Cortex-M Baugruppen mit einem onboard JTAG-Debugger zu versehen, und suche dafür Erfahrungswerte. Meine Anforderungen: - soll mit OpenOCD funktionieren - JTAG, optional SWD/SWO - Cortex M4 und M7, möglichst herstellerübergreifend - möglichst geringe BOM und Leiterplattenfläche - Lizenz geeignet für kommerzielle Nutzung - gerne noch Debug-UART anbei - wenn es ein Prozessor ist, wäre es praktisch, wenn der per ROM-USB-Bootloader programmiert werden kann, um extra JTAG/SWD-Pins einzusparen. Das erste, was mir da in den Sinn kommt, ist ein FT2232D im TQFP-48 mit 9mm*9mm Platzbedarf. Vorteil: Ich brauche keine extra Firmware dafür. Nachteil: eben die Größe, wobei dann noch ein relativ großer 6MHz Quarz und optional ein EEPROM dazukommt. Ich habe auch ARM-basierte Lösungen z.B. mit einem STM32F103 gesehen. Der ist aber auch minimal ein TQFP48, bringt mir also erstmal keinen Vorteil. Was gibt es, was noch kleiner ist - so als SO16 oder TSSOP20 idealerweise? fchk
STLink V3? Gibt es als Modul für onboard Anwendung. ist etwas grösser als ein TQFP, aber auch deutlich schneller. https://www.mouser.de/ProductDetail/STMicroelectronics/STLINK-V3MODS/?qs=%2Fha2pyFaduggcYAYrhXoQy%252BcmOaxShbKrErA04YY6TrPH6SrUJNMXQ%3D%3D DAPLink gibt es noch, mit LPC11U35, der ist als BGA auch sehr klein. https://github.com/ARMmbed/mbed-HDK/blob/master/Bare%20Design%20Projects/ARM-mbed/INTERFACE%20DAPLink/LPC11u35/INTERFACE_LPC11u35-SCH.pdf
STlInkV3 mit Originalsoftware ( <=> https://github.com/blacksphere/blackmagic/pull/818) spricht aber nur mit STM32 Bausteinen und braucht in vielen Faellen "connect under reset", weil hot-plug nicht geht. Das verhindert Problemem zu debuggen, die erst nach einiger Zeitauftreten wenn man nicht die ganze Zeit den Debugger mitlaufen laesst.
Gibt es den jLink von Wetter nicht auch als Chip Lösung? Ist ja auf vielen der Boards mit drauf.
123 schrieb: > Gibt es den jLink von Wetter nicht auch als Chip Lösung? JLink kostet aber vergleichsweise viel Geld (ich erinnere mich an irgendwas um die EUR 100 pro Chip). Wir haben in der Firma auch den FT2232D verbaut, der zweite Kanal kann dann gleich noch für eine UART herhalten, die zum Debuggen immer mal praktisch ist. FT232H müsste auch gehen (hat auch MPSSE), ist aber mit 8x8 kaum eine Platzeinsparung.
123 schrieb: > Gibt es den jLink von Wetter nicht auch als Chip Lösung? Ist ja auf > vielen der Boards mit drauf. Meinst Du Segger? https://www.segger.com/products/debug-probes/j-link/models/j-link-ob/
> Was gibt es, was noch kleiner ist - so als SO16 oder TSSOP20 > idealerweise? Das kleinste, was mir da einfällt, wäre ein SAM-D11C: SOIC-14, mit eingebautem USB 2.0 ohne Quarz, 48MHz M0+, 16k Flash, 4k RAM. Müsstest halt die SW selbst schreiben ...
ups ja. Dumme autokorrektur von Android, ... Ich meine Segger Wobei 100 Teuronen ist schon heftig, .. aber ich kann mir nicht vorstellen, das das jeder kunde von denen zahlt. Die NRF boards sind um die 50 Euro und haben so was mit drauf, ... Ist sicher alles abhängig von der verhandlung und der abgenommenen Menge.
123 schrieb: > Ist sicher alles abhängig von der verhandlung und der abgenommenen > Menge. Ja, schätzungsweise. War damals bei uns ein Testballon, erstmal mit minimaler Stückzahl ins Rennen gegangen. Wenn du ${großer_Hersteller} heißt und da 10000 davon nimmst, sind die sicher eher bei 10 Dollar. Aber immer noch teuer.
Frank K. schrieb: > Ich habe auch ARM-basierte Lösungen z.B. mit einem STM32F103 gesehen. > Der ist aber auch minimal ein TQFP48, bringt mir also erstmal keinen > Vorteil Mir fallen da spontan zwei Lösungen ein: Black Magic Probe CMSIS-DAP. Für erstere gibt es eine OpenOCD-Fork, welche die BMP mittels HLA (high-level access) unterstützt, wodurch man (meines Wissens nach) bei den Targets nicht auf die Targets beschränkt bleibt, welche durch die BMP-Firmware supported werden. CMSIS-DAP wird von OpenOCD direkt unterstützt und auch hier gilt (mWn), dass man durch OpenOCD flexibel wird, was das Target angeht (typischerweise wird CMSIS-DAP für ein Target gebaut). Nun zur eigentlichen Problematik mit dem Platz: BMP nutzt einen STM32F103CB (erhältlich als QFN48) und CMSIS-DAP einen LPC11U35, den es immerhin als "HVQFN33" gibt (7x7mm). In beiden Fällen hast du natürlich (dank Open-Source) die Möglichkeit das auf deine eigene Hardware zu portieren bzw. portieren zu lassen. Im Falle der BMP wäre es vermutlich relativ einfach, die auf STM32G0/G4/L0/L4 zu portieren. Die gibt es alle jeweils als 4x4mm QFN28 bzw. 5x5mm QFN32 und das jeweils ohne groß an der eigentlichen Firmware herumzufrickeln (die braucht aktuell >64kB Flash). Wenn dir das selbst zu viel Arbeit ist, könnte ich mir auch gut vorstellen, dass einer der BMP-Entwickler das gerne als Auftrag entgegennimmt.
Ich hatte schon erwaehnt, dass STLINK-V3 (MODS) ein guter Kandidat ist und out-of-the-branch schon unterstuetzt ist. Er kostet ~ 10 Euro und ist ~ 32x16 mm gross. it Tricks bekommt man BMP auch auf den Chip, auch wenn er aufgrund neuer ST Firmware RDP2 gesetzt hat. Und fuer STM32 geht er mit den ST-Firmware einschraenkungen auch so.
Alle Modullösungen werden größer als der FT2232D, sind also uninteressant. Und die STLinks werden wahrscheinlich nicht mit meinen TI Tiva TM4C funktionieren, sind also auch schon mal gleich gestrichen. Ich schau mir das BMP mal an. fchk
Wenn der STLink mit OpenOCD betrieben wird könnte es trotzdem klappen, aber der V3 ist ja recht neu und ich weiß nicht ob der mit OpenOCD spielt. Auf dem Modul ist ja alles nötige drauf, incl. USB Buchse. Zum FTDI gehört ja auch noch Hühnerfutter. Laut BMP FAQ wird der TM4C unterstützt, über die BMP hosted Variante lässt sich das leicht (wenn man Linux benutzt) mit STLink oder anderen Adaptern testen. https://github.com/blacksphere/blackmagic/wiki/Frequently-Asked-Questions
Mit Original ST Firmware geht JTAG mit allen StLink Adaptern nur mit STM32 Teilen. StlinkV3 arbeitet auch bei SWD nur mit STM32 zusammen.
Uwe Bonnes schrieb: > Mit Original ST Firmware geht JTAG mit allen StLink Adaptern nur mit > STM32 Teilen. Bist du dir da sicher? Ich glaube mich dran zu erinnern, dass ich mit einem STlink (und OpenOCD natürlich) auch schon einen SAM4E debuggt habe. Weiß nicht mehr ganz genau, welcher STlink das war, ist schon 'ne Weile her. Auf jeden Fall habe ich es ausgiebig umgekehrt gemacht, AtmelICE an STM32F4 / STM32F7.
Jörg W. schrieb: > Ich glaube mich dran zu erinnern, dass ich mit einem STlink (und OpenOCD > natürlich) auch schon einen SAM4E debuggt habe. Weiß nicht mehr ganz > genau, welcher STlink das war, ist schon 'ne Weile her Per JTAG? Meist debuggt man CortexM per SWD.
Jörg W. schrieb: > Ich glaube mich dran zu erinnern, dass ich mit einem STlink (und OpenOCD > natürlich) auch schon einen SAM4E debuggt habe. Weiß nicht mehr ganz > genau, welcher STlink das war, ist schon 'ne Weile her. Mit ST-Link V2 ging das auch aber den V3 haben sie wohl mittels Firmware kastriert.
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.