cancel
Showing results for 
Search instead for 
Did you mean: 

Program stm32F745 via RS-485 and bootloader

NDicostanzo
Associate II

Hello everyone

Is it possible to program my STM32F745 via RS-485 using the integrated bootloader?
My idea is using USART1 (as written in the AN2606) and a transceiver to do that. Has anyone done something similar? Thank you very much in advanced.

 

Best regards

Nick

6 REPLIES 6
TDK
Guru

You'll need to boot the chip into the bootloader and then use UART commands to program it. STM32CubeProgrammer can do this for you or you can write your own software.

Use AN2606 to find supported UART bootloader pins.

https://www.st.com/resource/en/application_note/an2606-stm32-microcontroller-system-memory-boot-mode-stmicroelectronics.pdf

Use AN3155 for UART bootloader commands:

https://www.st.com/resource/en/application_note/an3155-usart-protocol-used-in-the-stm32-bootloader-stmicroelectronics.pdf

 

If you feel a post has answered your question, please click "Accept as Solution".

Thank you very much.

So this is the pin configuration to boot the chip: 

Cattura.PNG

I was checking the schematic of the STM32F76 Evaluation Board since it uses an RS-232 transceiver to boot and program the chip. I see it uses flow control to set both RESET and BOOT0.

Cattura2.PNG


I have no hardware flow control in my application. Any ways I can boot my chip using the software via RS485? Thank you in advanced. 

You need to get your chip into the bootloader in order to use it to program the chip. If you have no way to control NRST or BOOT0, then unlikely.

If you can control the program, you can jump to the bootloader from the program itself.

If you feel a post has answered your question, please click "Accept as Solution".

Whato do you mean by "Control the program"? 
Basically, I just want to provide a way to flash the IC with future software upgrades, that's why I was thinking about using the bootloader. 

TDK
Guru

> Whato do you mean by "Control the program"? 

If you can write the program to jump into the bootloader upon request, then you can use that functionality to reprogram the board from the bootloader.

If you feel a post has answered your question, please click "Accept as Solution".
manx
Associate III

I think the core idea of the question, which I myself have now, is what about RS485 being half-duplex? You need a flow control. The DE signal. Since I guess the communication goes both ways. So is it possible to use the ST bootloader in half-duplex mode; does it make use of the DE signal?