STM32 Bootloader RS485

Gast #5094295
Lesenswert?

Hallo Zusammen,

ich würde gerne die Firmware über RS485 auf einen STM32F103C8T6 laden. 
Da die Controller nachher im Haus verteilt sind will ich nicht überall 
mit dem Laptop hin laufen..
Leider komm ich mit meiner Idee nicht wirklich weiter. Ich hab versucht 
die Firmware über den Internen Bootloader und UART (FTDI Adapter) auf 
den Stm zu laden und das hat Problem los funktioniert. Genutzt habe ich 
die "Flash Loader Demonstrator" Software von ST.

Jetzt hab ich einen MAX485 an den STM32 gepackt und ein RS485-USB 
Adapter an den PC. Die Kommunikation über RS485 funktioniert auch, die 
habe ich schon getestet. Wenn ich aber jetzt versuche die Firmware mit 
der Software auf den ST zu übertragen kommt beim Verbindungsaufbau 
direkt der Fehler:
No Response from the target, the Bootloader can not be started. Please
verify the boot mode configuration and the flash protection status.
Reset your device then try again.

Mir ist auch irgendwo klar das es am umschalten zwischen Senden um 
Empfangen am Max485 liegt. Aber wie kann ich das Problem lösen?

Geht das überhaupt mit dem internen Bootloader was ich da vorhabe? Oder 
muss ich einen eigenen Bootloader schreiben? Und wenn ja könnte mir da 
jemand bei helfen?

Verwendet wird die HAL Library von CubeMX.


Vielen Dank schonmal
Fabian
Gast #5094393
Lesenswert?

Wenn du sowieso CAT-Kabel verwendest, hast du ja zuviele Adern ;) Dann 
könntest du Full Duplex Treiber verwenden, damit funktioniert der 
Bootloader wie mit RS232. Die Treiber brauchen zwar immer noch einen 
Enable (für den normalen Betrieb), aber er kann ja statisch mit 
BOOT-Signal eingeschaltet werden.
Gast #5094936
Lesenswert?

Vielen Dank für die Antworen

Jim M. schrieb:
> Schaltplan? Aber vermutlich nein, denn der kann nicht wissen dass er den
> MAX485 Senden/Empfangen umschalten muss.

Schaltplan gibt es da nicht großartig einen. Ich hab TX an PA9, RX an 
PA10 und RE/DE an PA8 und der Rest ist alles auf dem Dev Board 
"BluePill".

eagle user schrieb:
> Wenn du sowieso CAT-Kabel verwendest, hast du ja zuviele Adern ;) Dann
> könntest du Full Duplex Treiber verwenden, damit funktioniert der
> Bootloader wie mit RS232. Die Treiber brauchen zwar immer noch einen
> Enable (für den normalen Betrieb), aber er kann ja statisch mit
> BOOT-Signal eingeschaltet werden.

CAT-Kabel hab ich  tatsächlich verlegt (passt ja schön wegen der 
Verdrillung für RS485).
Die Full Dupelx Treiber sind auch eine gute Idee, woran ich auch noch 
nicht gedacht hatte. Da müsste ich nur mal schaue wie ich das mache. Auf 
der Slave Seite (Mikrocontroller) wäre es kein Problem. Allerdings habe 
ich als Master ein Industriellen RS485 Wandler der leider nur Halfduplex 
kann.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren