cancel
Showing results for 
Search instead for 
Did you mean: 

Memory-Loader error

shravan
Associate II
Posted on April 12, 2017 at 15:22

Hi all,

        I am facing some issues here on flash erasing and programming. I am not getting where is the actual problem. I am using STM32F429ZET on our custom board. For testing purpose is used provided blinky example's hex file which support same controller. Problem here is that when i am trying to program this hex file using ST-Link utility it throws errors as:

18:22:34 : ST-LINK SN : 49FF70065178505057391687

18:22:34 : ST-LINK Firmware version : V2J28S6

18:22:34 : Connected via SWD.

18:22:34 : SWD Frequency = 4,0 MHz.

18:22:34 : Connection mode : Normal.

18:22:34 : Debug in Low Power mode enabled.

18:22:34 : Device ID:0x419

18:22:34 : Device flash Size : 512KBytes

18:22:34 : Device family :STM32F42xxx/F43xxx

18:23:04 : [Blinky.hex] opened successfully.

18:23:04 : [Blinky.hex] checksum : 0x000F72B6

18:23:07 : Memory-Loader error

18:23:07 : Error occured during erase operation!

18:23:07 : Programmed memory Checksum: 0x00000000

Any idea?

Any suggestions might help me.

27 REPLIES 27
Posted on May 15, 2017 at 11:58

Which brings us back to how is your design different from the reference one that works?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Max
ST Employee
Posted on May 16, 2017 at 04:03

So there is a problem when you start the PLL.

Try to change its configuration to see what is wrong.

Reduce the output frequency (reduce PLLN or increase PLLP)

I think PLLQ is out of spec in your configuration (freq>48MHz) try with 8.

Posted on May 16, 2017 at 07:15

Hi Clive,

I have found out couple of differences between my custom board schematic and stm32f429zi disco. And PFA of my custom board schematic.0690X000006071AQAQ.png0690X000006071FQAQ.png

They are as follows. Disco board schematic 

http://www.st.com/en/evaluation-tools/32f429idiscovery.html

 
  •      STM32 Disco board doesn?t have resistors at pin PH0-PH1(8MHz oscillator in and out) which our board has.
  •      Disco doesn?t have 33.2KHz crystal (LSE) crystal fitted on board but our board has.
  •      NRST is being pulled to 3.3v in custom board with 100k and 0.1uf which disco doesn?t.
  •      PDR_ON pin on or board is pulled to 3.3v via 100k.
Posted on May 16, 2017 at 07:19

Hi Max,

I have followed this 

https://stm32f4-discovery.net/2014/11/overclock-stm32f4-device-up-to-250mhz/

 to set the PLL values. I have tested for different values and for all those changes its giving same response by getting stuck at the above mention line. I tested by changing system click from 48MHz to 168MHz but no use.
Posted on May 16, 2017 at 09:21

If you get stuck when enabling the PLL, this means there is something wrong with your configuration.

Are you sure the voltage scaling / flash wait states are set up correctly?

Did you try running an example from the library on your board?

Posted on May 16, 2017 at 11:24

Hi,

Yes. I am trying to flash blinky application from the sample code in keil. The same code works fine in stm32 disco board and not in my custom board. So I presume that my sample code what ever I am using is right. The only change I do before flashing to my custom board and disco are 

1) I change the target device from settings.(Its obvious as both controllers are slightly diff)

2) I change the flash algorithm.

Any hint would help me a lot.

Thanks.

Posted on May 16, 2017 at 18:24

The DISCO however uses an 8 MHz crystal/clock-source, so different code and PLL settings WILL be required.

You should enable the HSE and feed it out via the MCO (PA8) pin and verify the clock from there. The PLL_M setting will need to changed from 8 to 25 to get the correct 1MHz comparison frequency into the PLL.

You've indicated you've done this, but the 'same code' argument falls over here unless you modify the DISCO board with your oscillator design, and disconnect the 8 MHz source. I would tend to do some very simple test code when bring up the board, and instrument that via a serial port to pin down where in the SystemInit() or PLL/Clocking code things were going awry.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
shravan
Associate II
Posted on May 29, 2017 at 06:51

Hi, Sorry for the delayed reply. I used STM32 cube to generate the code and a simple blinky program seems to work without any problem. I would like to thank you all for your support.