Skip to main content
AGond.2
Associate III
July 13, 2023
Question

Regarding Flash Size and Revision ID of the MicroController stm32F4

  • July 13, 2023
  • 3 replies
  • 2799 views

I Having Two Board In which stm32F439nI Micro-Controller  Mounted on it. While Connecting with the STM Utility Software , one Board Display  flash Size but didn't Show revision Id, Same Way i Connected Another board but it Doesn't Display Flash Size neither Revision Id.

In 1st Board am Available to Flash Directly Using the IJET Debugger but in 2nd Board I have to Flash Code with Help of STM ultility Software.

I Checked the Firmware Version Both Having Same but in Option Byte option only one Difference,  in Working Board DB1M Option Unchecked While in Another Non Working Board DB1M is Checked.

Am Also Attaching the Working and Non Working Board STM Utlility Software 

This topic has been closed for replies.

3 replies

Peter BENSCH
Technical Moderator
July 13, 2023

Well, that looks similar to your other question.
What exactly is your problem?
Are you sure that the STM32F439NI are not fakes, which usually do not show ID data or other information?

Regards
/Peter

Tesla DeLorean
Guru
July 13, 2023

Stop using ST-LINK Utilities and move to STM32 Cube Programmer.

Show full markings of both these parts. Take a picture that is large, in-focus, clear and in circuit context.

Read the full Die / Part number (DEVID), memory size, and option bytes.

If the Flash Size and System Memory are filled with 0xFF these are likely fake or engineering samples.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
AGond.2
AGond.2Author
Associate III
July 14, 2023

Am Attaching the Photo of Mounted Micro Controller WhatsApp Image 2023-07-14 at 7.09.39 PM (1).jpegWhatsApp Image 2023-07-14 at 7.09.38 PM.jpegWhatsApp Image 2023-07-14 at 7.09.39 PM.jpeg

Piranha
Principal III
July 13, 2023
 for(wHSSStartIndex=RFC_HSS_BASE_REG_OFFSET; wHSSStartIndex<=wHSSEndIndex; wHSSStartIndex++);

 {

 wBaseAddress+=GET_HSS_SET_DATA(wHSSStartIndex);

 }

 for(wHSSStartIndex=RFC_HSS_BASE_REG_OFFSET; wHSSStartIndex<=wHSSEndIndex; wHSSStartIndex++);

 {

 wHSSBaseAddress+=GET_HSS_SET_DATA(wHSSStartIndex);

 }

Fantastic code! And I'm not even talking about the bad beginner level formatting. Here is a hint - the wBaseAddress and wHSSBaseAddress are not modified in a loops...