STM32F407 WITH STRANGE BEHAVIOR
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-04-04 6:07 AM
I am facing a very strange problem, we first assemble 3 prototype boards of a project that uses the STM32F407IGT6 everything worked perfectly, we have developed 3 firmware for this project:
1 - Bootloader: Checks if necessary to update the application firmware jumps to firmware 2 or else jumps to firmware application
2 - Update Application: updates the application firmware
3 - Application
After all the tests and the approved project we realized the purchase of a small batch of our supplier (50 units).
To our surprise when we were to write the firmware many does not boot the firmware of the application or better loads the bootloader makes the jump to the application, but there is an error (stackoverflow) when it will execute the following in the last line:
LDR R0, = SystemInit
BLX R0
LDR R0, = __ main
BX R0
I could not find what is causing this error, we decided to replace the STM32F407 with one that we bought from Digikey, to our surprise it worked and we did it in 10 more equipments all worked.
Someone could help us, because I can not understand what is happening and now that it should be a line product we can not have to be replacing the microcontroller of all equipment.
I wonder if you have a solution for this or if someone has already had this kind of problem?
Thank you,
Giovani
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-04-04 9:56 AM
Picture with the values of the registers before executing the statement
BX R0.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-04-04 10:06 AM
there is an error (stackoverflow)
What do you mean by this?
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-04-04 11:29 AM
In 4 boards the unique one that works VCAP1 and VCAP2 voltage is 1,270V their IDCODE are the same:
DEV_ID =0X0413REV_ID =0X1007Voltage on VCAP1, VCAP2 of the others boards is 1,260V
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-04-04 12:17 PM
Perhaps a Hard Fault?
Review the ID Code/Stepping of the failing part. External markings would be helpful to pin down differences.
Look at DBGMCU->IDCODE
Check regulator VOS and Overdrive settings, voltages on VCAP pins
Up vote any posts that you find helpful, it shows what's working..
