2013-01-09 06:12 AM
I want to program STM32VL Discovery via USART1. I am using ''Flash Loader Demonstrator V2.6''. I have connected BOOT0 pin to 3V directly and BOOT1(PB.02) to GND. I have connected USART1 PA.09(Tx) to PC Rx and PA.10(Rx) to PC Tx directly. Problem is that the Flash Loader Demonstrator is unable to connect with STM after reset.I think STM enters into System booloader mode correctly but cannot communicate with PC. I have also tried to send 0x7F manually through hyper terminal but STM is not returning any response at all.. Note that I am using serial to USB converter and it is working fine. I have tried all baud rates with even parity,1 stop bit configuration. Secondly I do not understand if there is any need to use pull up resistors in circuit especially on USART pins. I am directly connecting the wires without pull up resistors. Please help to resolve bootloader issue. Thanks in advance.
#stm32-bootloader2013-01-09 09:07 AM
Directly?
The STM32 USART pins are not compatible with RS232 levels, you'll need a converter (MAX232) in-line.2013-01-09 09:26 AM
Not directly. I am using USB to UART FTDI converter. I used that converter to communicate between PC and STM32VL USART earlier and it works fine so converter is not the issue.
2013-01-10 01:50 AM
Ok, I have succeded in programming flash. Problem was with the FTDI USB to UART Tx and Rx pins connection with USART1 Tx and Rx. Connected Tx with Tx and Rx with Rx and works fine now. Correct sequence for STM32VL discovery is:
1)Power on board.2)connect FT232 converter Tx pin with USART1 Tx(PA.09) pin3)connect FT232 converter Rx pin with USART1 Rx(PA.10) pin4)connect BOOT0 pin to 3.3v to go to System Boot loader. No need to connect BOOT1(PB.02) pin to any logic level.Just keep it floating.5)press reset button on development board.6)run Flash boot loader demonstrator. set parity even and baud rate to 9600 and click next.Now program flash7)Now again leave BOOT0 pin floating(On board it is grounded already) in order to run program and press reset button.