This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

STM32F103ZE Flash write problem.

Hi,

I'm trying to write an In-Application bootloader.
Before writing to internal Flash it must be unlocked, then erased (selected page) then written to.
- the unlock sequence works fine
- the page erase works fine
- the writing of data reports no error but data is not written

The internal oscillator is selected as is ordered by the specs.
To write data a 16 bit value (half word) must be written to an address in the erased page.

I use an assembler function to execute this data write operation. (First argument is transported in R0, second in R1).

__asm void vFlashWrite(int iAdd,short sDta){

  strh    r1,[r0] //store (halfword) data from r1 to address in r0

  bx      lr      //return

}

vFlashWrite(0x08000800,0x55aa);

...but still no data is written...

Anybody has any idea?

Thanks,
Henk

0