cancel
Showing results for 
Search instead for 
Did you mean: 

ST10 STEAK problem

michaelschania9
Associate II
Posted on July 17, 2003 at 09:25

ST10 STEAK problem

5 REPLIES 5
michaelschania9
Associate II
Posted on April 24, 2003 at 13:54

in AN1247 the STEAK algorithm for ST10F168 is described.

Trying to simply read the status (example on p.16) it ends in a buserror after the NOPs.

Is there a typo in the Appnote? or do you have another code to test test the status? For us it seems the STEAK is not working properly.

Looking forward to your inputs!

mike

maxime2399
Associate II
Posted on April 24, 2003 at 19:22

In order to avoid conflict in the flash, the STEAK algorithm should be called from RAM or external memory.

Also, all interrupt should be disabled.

Are you sure this coditions are ok?
michaelschania9
Associate II
Posted on April 25, 2003 at 12:41

Dear Max, we tested all variations: execution from FLASH, from internal RAm, from external RAM, all Interrupts disabled. every time the same buserror after the 2 NOPs....

Do you have a full example, tested and proofen, what we can run, to check if we have made a general mistake?

heiko2
Associate
Posted on June 27, 2003 at 07:02

Hi

I wand to use the internal Flash ST10F168, so i need also the Steak algorithm. I want to refresh internal Flash from Adresse 0x38000 until 0x38800;

Want can I do, for running in C code???

Do you have now a full example, tested and proofen, what we can run, to check if we have made a general mistake?

Thanks for your email

Heiko

friedemann
Associate II
Posted on July 17, 2003 at 09:25

i have found on a SAT10F269 a curios problem, that can be the answer of your problem. my flash software is on the top of the RAM (0xe740-0xe7ff). the last command (the RET) is on the last possible RAM. from 0xe800 are not usable RAM. and now at tests the Trap with TRAP_ILLBUS came. at the emulator i found that the trap came from the instruction read 0xe7dc. the reason i never found, but my idea is the prefetching of instructions run in the area over 0xe800. now i have 8 NOPs after the end of the program.[addsig]