Skip to main content
Visitor II
January 16, 2007
Question

curios flash erase without end

  • January 16, 2007
  • 2 replies
  • 737 views
Posted on January 16, 2007 at 15:17

curios flash erase without end

    This topic has been closed for replies.

    2 replies

    Visitor II
    September 10, 2003
    Posted on September 10, 2003 at 15:11

    i use the ST10F269 for an embedded application.

    now we want to use the internal flash for data strage.

    i have two blocks free for the data. i want store data to one block

    and after he is full to the other. the full block must be erased for

    the next data. in this configuration it is nessary to erase one block

    and later the other.

    now i found a problem:

    the erase of the first block run in the right time.

    the erase of the second block has no end.

    after the timeout (ca.12sec pure erasetime parted with suspend mode time)

    the data are not erased.

    if i read the data, the data are not the same over the time.

    but i can write 0xffff correctly.

    and then i read 0xffff correctly.

    if i change the two blocks the problem at the second erase is the same.

    what is my error?

    i use the FSB.7 to test the ready of erase.

    with best regards mars
    Visitor II
    January 16, 2007
    Posted on January 16, 2007 at 15:17

    This code doesn't work for me. I know of at least one reason - my compiler (Keil) uses direct addressing which doesn't work when programming/erasing the flash. It is easy to change the addressing mode, however, by putting your command addresses into global variables and dereferencing them.