Forum: Mikrocontroller und Digitale Elektronik Bootloader für STM32F0 für 1-Wire UART


von Florian J. (fjay24)


Lesenswert?

Hallo zusammen,

hab nach längerer Tätigkeit auf höherer SW-Ebene mal wieder das 
Vergnügen tiefer zu tauchen.

Meine Anforderung ist, ich brauche einen Bootloader für einen STM32F0, 
der über 1-Wire UART funktioniert. Ich hab damit jetzt noch nichts 
gemacht, über die normale UART Schnittstelle oder CAN etc. gibt es eine 
gute Auswahl fertiger BLs. Leider konnte ich keine für diesen 
spezifischen Anwendungsfall finden.

Hat von euch schon mal so einen genutzt  entwickelt  bezogen?

Vielen Dank!

Flo

von Thomas E. (picalic)


Lesenswert?

Servus,

ich benutze eigentlich fast ausschließlich single-Wire/Halbduplex, 
wenn's über UART läuft. In unserer Firma auf verschiedenen STM32 (diesen 
Code kann ich natürlich nicht zur Verfügung stellen), privat für PIC12 
und PIC16 (http://www.picalic.de/projects/bootloader/). Weil es sich 
dabei fast immer um RC-Modellbau dreht, bietet sich das über den 
normalen 3-Pin Servostecker (GND,VCC,Signal) an.

Da Bootloader i.d.R. sowieso im "Ping-Pong"-Verfahren mit dem Host 
kommunizieren (d.h. Host schickt irgendwelche Anforderungen an den 
Bootloader, der verarbeitet es und schickt irgendwas zurück - die 
Datenrichtung ergibt sich also schon über das Protokoll und Kollisionen 
sind kein Problem), sollte es eigentlich kein großes Problem sein, 
irgend einen Vollduplex-UART Bootloader auf SW zu modifizieren. Der BL 
muss halt nur seine eigenen, gerade gesendeten Daten ignorieren, da der 
UART die ja auch gleich selbst wieder empfängt.
Die STM32-USARTs sind dafür übrigens auch gut geeignet, da dort 
Halbduplex mit Open-Drain Ausgang nur über den Tx-Pin schon 
hardwareseitig implementiert ist.

: Bearbeitet durch User
von Florian J. (fjay24)


Lesenswert?

Hallo Thomas,

vielen Dank für die Tipps, das hört sich schon mal gut an, wenn es 
grundsätzlich möglich ist einen fertigen zu modifizieren.
Ich werde mir mal einen "normalen" BL besorgen und diesen mal studieren.

Gibts da irgendwo ne Quelle für kostenlose BLs?

Viele Grüße!

Flo

von Thomas E. (picalic)


Lesenswert?

Florian J. schrieb:
> Gibts da irgendwo ne Quelle für kostenlose BLs?

Sicher - habe selbst jetzt aber nicht unbedingt nach Bootloadern für 
STM32 gesucht. Den Bootloader in unserer Firma gab es schon, als ich 
dort angefangen habe, und der wird halt jeweils auf neue Hardware und 
Features nach Bedarf angepasst, z.B. USB statt UART o.ä. STM selbst hat 
ja auch den eigenen (2-wire) Bootloader fest im Controller, aber der ist 
AFAIK nicht Quelloffen. Das Protokoll findet man wohl in irgendeiner 
Appnote. Ich kenne den ST Bootloader selbst auch nur als Anwender.

Sonst kannst Du ja auch nach BL-Quelltext in C bei anderen Herstellern 
suchen. Spontan fällt mir nur ein, daß es wohl einen für 8-Bit-AVRs 
gibt, mit AES Verschlüsselung. Ggf. muss ja nur der Hardware-nahe Teil 
angepasst werden.

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
Noch kein Account? Hier anmelden.