cancel
Showing results for 
Search instead for 
Did you mean: 

Writing and reading the internal flash ROM

jschatz
Associate II
Posted on August 19, 2009 at 05:09

Writing and reading the internal flash ROM

2 REPLIES 2
jschatz
Associate II
Posted on May 17, 2011 at 13:20

I just had an unusual thing happen. I am putting the routines together for my device and I wrote a couple of test lines to try writing to the internal flash ROM.

The lines are below and they reference the library's (V3.1.0) routines:

FLASH_Unlock(); // Write a test spot to internal Flash

FLASH_ErasePage( 0x0807f800 );

FLASH_ProgramWord( 0x0807f800, 0x55555555);

However, I am using the STM32F103ZCH6 processor that has 256K of flash ROM. The result is that the word was written correctly to 0x0807F800 as indicated in the code above.

This is outside the boundary of the 256Kb of my part. I checked a few other overlaping addresses and did not find any wraparound of the data.

Anybody have an explanation?

st3
Associate II
Posted on May 17, 2011 at 13:20

It's not uncommon to find that ''low-spec'' parts are just ''high-spec'' parts where (some of) the ''extra'' features don't work (properly)...

I seem to remember that there was a similar discussion here a while ago...