STM32F407VG and UART Bootloader
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-03-27 11:26 PM
Posted on March 28, 2014 at 07:26
Hi All
I have kind of garbage with the uart bootloader. What I do: 1. I tie pins (BOOT0=vcc, BOOT1=gnd). Turn on power. 2. From PC sent 0x7F (57600, 8E1). 3. I get answer from STM32 - 0x79 - that means that everything is OK. 4. Send any other command (e.g. 0x00,0xFF = GET or 0x01, 0xFE). But I get no answer. What could it be? #stm32f407-uart-bootloader
Labels:
- Labels:
-
Bootloader
5 REPLIES 5
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-03-31 3:05 AM
Posted on March 31, 2014 at 12:05
What I have digged. I debugged bootloader and noticed, that RX pin was pull-up. I made it float and everything started working.
Is it the miracle or the bug? Noone have met this problem? PS: Sorry, I have two accounts here. I deal with it later.Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-03-31 5:54 AM
Posted on March 31, 2014 at 14:54
Noone have met this problem?
Not one I've encountered. The USART technically isn't receiving the initial 0x7F, a timer is measuring the signal and computing a baud rate against the internal clock. If the value is wrong, all subsequent communications will be at the wrong baud rate, and you'll see corrupted characters or garbage.
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Up vote any posts that you find helpful, it shows what's working..
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-03-31 6:23 AM
Posted on March 31, 2014 at 15:23
I would agreed with you.
But 1. It always respond at the known baud rate (0x7F). I changed from 9600 to 115200. 2. In debug mode I made Rx pin float.And it help. 3. I try with port B (USART3) and it works. 4. I hadn't see any garbage on TX. I need to be sure, that it's the bug or not. Anybody could test Bootloader with stm32f407ig USART1?Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-03-31 6:46 AM
Posted on March 31, 2014 at 15:46
What about an electrical issue ?
Are you using a well known HW or is this your design ? Is there any noticeable difference between USART1 and USART3 connection ? How are you connected to your host machine ? Normally Pull-up shall not hurt, unless the driver on TX side being weak (bad driver, or broken ground).Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2014-03-31 10:50 PM
Posted on April 01, 2014 at 07:50
This is my device.
I've found my ''bug''. USART1 RX line has serial resitor 10k (for future purpose). USART3 RX is connected directly to RS232-UART. When I'd replaced 10k by 0Ohm, bootloader started working. Now I need to understand why internal pull-up resistor leads to the malfunction.