Hallo, ich habe gerade angefangen ein Board zu entwerfen, welches als Prozessor einen STM32F303 benutzt. Ich habe nun gerade ein wenig im Internet über den Boot0 bzw. Boot1 pin dieses Chips gelesen. Ich möchte gerne den integrierten USB-Bootloader verwenden, wenn ein USB-Kabel angeschlossen ist. Das man dafür irgendwie diese Pins (Boot0 und Boot1) braucht habe ich auch schon heraus gefunden aber wie genau ich die belegen muss habe ich noch nicht herausgefunden/gefunden, oder ich habe es einfach übersehen. Grüße Ole
Das steht im Reference Manual, Kapitel 3.5, Boot Configuration. Tip: Verlasse dich nicht auf den integrierten Bootloader, der ist ziemlich instabil. Sehe auf jeden Fall noch eine SWD/JTAG Verbindung für einen Programmieradapter vor. Erspart auch ungemein viel Arbeit beim debuggen...
PS: Je nach Modell (zB STM32F303x6/8) ist kein USB Bootloader vorhanden, steht auch in o.g. Kapitel.
Dr. Sommer schrieb: > Verlasse dich nicht auf den integrierten Bootloader, der ist > ziemlich instabil. Sehe auf jeden Fall noch eine SWD/JTAG Verbindung für > einen Programmieradapter vor Bei LPC oder EFM ist der integrierte Bootloader absolut stabil, der ist zudem die letzte Rettung wenn im Programm die SWD Pins umgeschaltet wurden oder die PLL falsch konfiguriert und das DEBUG RESET zu spät kommt. Kann mir nicht vorstellen, dass es bei den STM anders sein soll.
Lothar schrieb: > Bei LPC oder EFM ist der integrierte Bootloader absolut stabil, der ist > zudem die letzte Rettung wenn im Programm die SWD Pins umgeschaltet Bei EFM32 geht dann immer noch der "Flash unlock" über SWD, der dann übrigens den Bootloader killt weil Flash hinterher komplett leer ist. Bei LPC1343 braucht der USB Bootloader auf der CCC R0ket über 30 Sekunden zum Hochfahren weil da ein Bit im (Masken)ROM quer liegt.
Dr. Sommer schrieb: > Das steht im Reference Manual, Kapitel 3.5, Boot Configuration. > > Tip: Verlasse dich nicht auf den integrierten Bootloader, der ist > ziemlich instabil. Sehe auf jeden Fall noch eine SWD/JTAG Verbindung für > einen Programmieradapter vor. Erspart auch ungemein viel Arbeit beim > debuggen... Danke für die Warnung. Unter welchen Bedingungen hast Du Probleme mit den STM32-Bootloadern? Welche dieser Probleme sind nicht in der aktuellsten AN2606 und den Errata-Sheets erfasst? Was sagt ST dazu?
Lothar schrieb: > Kann mir nicht vorstellen, dass es bei den STM anders sein soll. Ist es auch nicht. Genauso, wie man bei den LPC nebst TxD und RxD auch noch Reset und Boot (ein Boot reicht, wenn man den anderen sinnvoll festlegt) an die Serielle führt, sollte man das auch bei den STM32 tun. Dann funktioniert auch der STM-Bootlader sauber und zuverlässig. Der Knackpunkt zwischen LPC und ST ist die Art der Auslesesperre. Bei den LPC hat es dazu an bestimmter Stelle die diversen Magics und bei ST hat es den Option-Block - und letzterer hat seine Wurzeln in der Hardware. Deshalb muß man beim Entsperren eines STM32 (zum einen Lesesperre und dann dasselbe mit der Schreibsperre) eben mehrmals mit Reset und nachfolgendem Wieder-Synchronisieren rechnen. Genau DAS ist es, wo sich viele Leute drum herum mogeln wollen und eben deshalb mitten im Programmieren feststecken - und dann heißt es, der Bootlader sei instabil. Unsinn sowas. Andererseits sind die Dokumente von ST im Detail oft ungenau bis falsch. Das gilt vor allem für Adreßeingaben, wo zwar dasteht, daß der BL in manchen Fällen kein NAK sendet - er tut es aber dennoch. W.S.
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.