Blockerase bei AT25xx Flash

Lschreyer
Schreiberling
Avatar
Gender: n/a
Posts: 527
Registered: 02 / 2007
Subject:

Blockerase bei AT25xx Flash

 · 
Posted: 18.10.2019 - 12:03  ·  #1
Ich habe festgestellt, dass das AT25-Flash beim Blockerase nicht das tut was ich erwarte, dadurch fehlen Daten nach dem Schreiben.

Nur wenn ich ein Chip-Erase mache klappt das Schreiben neuer Daten, bei Block-Erase scheine ich etwas falsch zu machen.
Ich versuche mit AT25_32kb_erase zu löschen.

Als Adresse geben ich (blockno*32768) ein, das klappt auch für 2 Blocks, dann ist Ende.

Blockcount:=5;
AT25_reset;
AT25_unprotect_all;

for i:= 1 to BlockCount do
AT25_32kb_erase((blockcount-1)*32768));
endfor;

Das scheint aber nicht zu funktionieren, laut Handbuch müsste es aber so korrekt sein.

Weiß jemand wie man mit dem AT25xx-Flash korrekt Blöcke löschen kann?
Avra
Schreiberling
Avatar
Gender:
Location: Belgrade, Serbia
Age: 53
Homepage: rs.linkedin.com/in…
Posts: 653
Registered: 07 / 2002
Subject:

Re: Blockerase bei AT25xx Flash

 · 
Posted: 20.10.2019 - 18:10  ·  #2
I don't know about AT25, but if you need code for AT45 then let me know.
Merlin
Administrator
Avatar
Gender:
Age: 24
Posts: 1409
Registered: 03 / 2005
Subject:

Re: Blockerase bei AT25xx Flash

 · 
Posted: 22.10.2019 - 17:49  ·  #3
Shouldn't the line

Code
AT25_32kb_erase ((blockcount-1) * 32768));


be

Code
AT25_32kb_erase ((i-1) * 32768));


?
Lschreyer
Schreiberling
Avatar
Gender: n/a
Posts: 527
Registered: 02 / 2007
Subject:

Re: Blockerase bei AT25xx Flash

 · 
Posted: 23.10.2019 - 12:24  ·  #4
Uhoh...that was a very smart one from me :-o

What a stupid mistake, and I did not see it.
Thank you for opening my eyes! Sometimes you look at your code and do not see the easiest things.
Merlin
Administrator
Avatar
Gender:
Age: 24
Posts: 1409
Registered: 03 / 2005
Subject:

Re: Blockerase bei AT25xx Flash

 · 
Posted: 23.10.2019 - 17:18  ·  #5
We've all done it ;-)
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   90   104 · Page-Gen-Time: 0.029159s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI