Hallo Forum, zurzeit arbeite ich mit dem STM32WB55 Nucleo Board. Bei diesem Board ist der ST-Link/V2 bereits integriert. Der Anschluss zum PC erfolgt über Micro-USB. Darüber ist es auch möglich, über das USART des WB55 Nachrichten an das Terminal zu schicken. Jetzt möchte ich mein eigenes Board entwerfen. Dieses soll allerdings keinen Integrierten ST-Link haben, sondern über einen externen ST-Link (zu kaufen) programmiert und debuggt werden. Auch möchte ich über diesen ST-Link Nachrichten an das Terminal senden. Über das Programm CubeMX habe ich mir die Konfiguration des Nucleo Boards angeschaut, das user manual zum ST-Link durchgelesen (ist leider nicht sonderlich ergiebig) und mir die schematics des Nucleo Boards angeschaut. Bei meiner Recherche habe ich leider keine Information dazu gefunden, wie das USART des WB55 mit dem ST-Link verbunden wird. Auch habe ich noch nicht verstanden, wo der Unterschied zwischen "serial wire", "JTAG (4 Pin)", "JTAG (5 Pin)" und "Trace Asynchronous Sw" im Hinblick auf die Funktionen besteht. Konkret sind meine Fragen: -Wo muss ich die TX und RX Pins des USARTs an den 20 poligen Stecker des ST-Link anschließen, damit das Senden an das Terminal funktioniert? -Welche zusätzliche Funktionialität bietet es, wenn ich mehr Pins des uCs für ST-Link verwende und z.B. statt "serial wire" "JTAG (5 PIN)" verbinde? Ich habe das Gefühl, dass mir zu dem Thema einige Informationen fehlen. Wenn ihr Links zum Nachlesen habt, bin ich dafür auch sehr dankbar. Liebe Grüße
STLINK V2 auf alten Disco Boards hat den UART nicht implementiert. STlinkv2 Standalone hat Uart auf dem SWIM Konnektor. Auf dem 20-poligen Stecker ist UART nicht rausgefuehrt. Nucleo Boards haben STLinkV2/1 und haben UART implementiert. Die Doku auf st.com ist Dein Freund, mit dem Du sprechen solltest! Mehr Pins: SWO(TDO) erlaubt Tracing. JTAG (TDI/TDO) erlaubt JTAG und damit mehrere Bausteine in einer Kette. Das Programm, dass mit der Probe spricht muss das aber unterstuetzen. NRST erlaubt es auch mit Bausteinen zu sprechen, deren SWJ Pins remappt sind.
:
Bearbeitet durch User
René W. schrieb: > Konkret sind meine Fragen:... Wenn du was Eigenes machen willst und dein Programmiergeschirre extern per Steckverbinder anschließen willst, dann such dir einen platzsparenden Steck aus, der zumindest die folgenden Signale führt: VCC, GND, RxD, TxD, SWD: CLK+DATA, /RESET, BOOT(0) Damit liegst du auf so ziemlich alle Fälle richtig: du kannst per SWD etwas tun, hast nen seriellen Port, hast Reset, kannst auch den Bootlader benutzen, kannst ein J-Link mit Reset dort anschließen. Ich benutze dafür die 10 poligen Stecker im 1.0mm Pitch von JST. Die sind angenehm klein, es gibt vorkonfektionierte Stecker mit Kabelenden dafür und sie sind nicht teuer. Und bei 10 Polen kannst du nach Gusto noch was Anderes mit draufpacken, I2C zum Beispiel. W.S.
W.S. schrieb: > Damit liegst du auf so ziemlich alle Fälle richtig Ich würde noch (Trace)SWO ergänzen.
René W. schrieb: > Über das Programm CubeMX habe ich mir die Konfiguration des Nucleo > Boards angeschaut, das user manual zum ST-Link durchgelesen (ist leider > nicht sonderlich ergiebig) und mir die schematics des Nucleo Boards > angeschaut. Bei meiner Recherche habe ich leider keine Information dazu > gefunden, wie das USART des WB55 mit dem ST-Link verbunden wird. Auch Diese "Recherche" war recht oberflächlich. Schematics zu MB1355 lesen! Geht über TXS0108EPW und Jumper an PB6 und PB7. Es steht sogar "TX_STlink (VCP)" bzw "RX_STlink (VCP)" dran.
Uwe B. schrieb: > STLINK V2 auf alten Disco Boards hat den UART nicht implementiert. > STlinkv2 Standalone hat Uart auf dem SWIM Konnektor. Auf dem 20-poligen > Stecker ist UART nicht rausgefuehrt. Nucleo Boards haben STLinkV2/1 und > haben UART implementiert. Also ist es nicht möglich die UART Verbindung, die auf den Nucleo Boards aufgebaut ist eins zu eins mit einem externen ST-Link nachzubauen? Ich hab das Datenblatt auch so verstanden, dass der SWIM Konnektor nur für STM8 ist. Uwe B. schrieb: > SWO(TDO) erlaubt Tracing. > JTAG (TDI/TDO) erlaubt JTAG und damit mehrere Bausteine in einer Kette. > Das Programm, dass mit der Probe spricht muss das aber unterstuetzen. > NRST erlaubt es auch mit Bausteinen zu sprechen, deren SWJ Pins remappt > sind. Danke, genau das hat mich interessiert. W.S. schrieb: > Wenn du was Eigenes machen willst und dein Programmiergeschirre extern > per Steckverbinder anschließen willst, dann such dir einen > platzsparenden Steck aus, der zumindest die folgenden Signale führt: > > VCC, GND, RxD, TxD, SWD: CLK+DATA, /RESET, BOOT(0) Danke. Und wie verbinde ich dann diese Pins mit dem externen ST-Link? A. B. schrieb: > Diese "Recherche" war recht oberflächlich. Schematics zu MB1355 lesen! > Geht über TXS0108EPW und Jumper an PB6 und PB7. Es steht sogar > "TX_STlink (VCP)" bzw "RX_STlink (VCP)" dran. Doch, wie bereits gesagt geht es mir nicht um die Verbindung zum on board ST-Link, sondern zu einem externen ST-Link. Und da steht leider nichts zur Verbindung. Danke für die hilfreichen Informationen, aber ich muss zugeben, dass ich immer noch nicht verstanden habe, wie ich TX und RX über den externen ST-Link anschlie0e. Also ich nehme den 20 poligen JTAG Stecker, schließe da die benötigten Kabel an und was mache ich mit RX und TX? Kommen die dann zusätzlich an den SWIM Connector?
René W. schrieb: > Also ist es nicht möglich die UART Verbindung, die auf den Nucleo Boards > aufgebaut ist eins zu eins mit einem externen ST-Link nachzubauen? Der "normale" ST-Link/V2 hat keine UART Schnitstelle. Was die anderen Pins angeht: > Und wie verbinde ich dann diese Pins mit dem externen ST-Link? 1:1. Siehe Kapitel 4.2 in seiner Bedienungsanleitung. https://www.st.com/resource/en/user_manual/dm00026748-stlinkv2-incircuit-debuggerprogrammer-for-stm8-and-stm32-stmicroelectronics.pdf
> TX und RX über den externen ST-Link
Schwer von Begriff. Der normale externe ST-Link hat
kein TX und RX.
Kauf dir halt einen grossen F103 und bau dir selber
den ST-Link der Nucleoboards nach...
oder besorg dir den STLink V3 in der Variante 14-Poliger Steckverbinder bereits bestückt und mache auf dein Bord den 14-Poligen Stecker. https://www.reichelt.de/in-circuit-debugger-programmierer-fuer-stm32-stlink-v3mini-p274817.html?&trstct=pol_2&nbc=1
Stefan ⛄ F. schrieb: > Der "normale" ST-Link/V2 hat keine UART Schnitstelle. Danke, dass du es nochmal so deutlich gesagt hast :-) pittiplatsch schrieb: > Schwer von Begriff. Ach das macht nichts. Lass dir Zeit. Ich brauche manchmal auch etwas länger... dummschwaetzer schrieb: > oder besorg dir den STLink V3 in der Variante 14-Poliger Steckverbinder > bereits bestückt und mache auf dein Bord den 14-Poligen Stecker. > https://www.reichelt.de/in-circuit-debugger-programmierer-fuer-stm32-stlink-v3mini-p274817.html?&trstct=pol_2&nbc=1 Waas? Warum habe ich den noch nie zuvor gesehen? Das ist ja genau das, was ich gesucht habe! Und nochmal günstiger als der V2! Richtig genial. Danke! Ist schon bestellt :D
Achtung beim STLinkV3! Beim Hotplug versagt er in viel mehr Situationen als ein STLinkV2. Und anderen Chips als STM32 sind aktiv ausgesperrt.
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.