cancel
Showing results for 
Search instead for 
Did you mean: 

Flash protection

maxime2399
Associate II
Posted on January 21, 2003 at 18:18

Flash protection

4 REPLIES 4
maxime2399
Associate II
Posted on May 17, 2011 at 11:32

I had some trouble figuring the ''Flash Protect'' registers - I worked

from an AppNote (AN1275) that gave example in-application-programming,

and it had some code to prepare the Flash for reprogramming.

In this code, I found that the ''calls 230038h'' crashed on the emulator - no testflash?

I cannot find any documentation on the testflash routines and what

they do - is there any?

[ This message was edited by: Romain on 22-01-2003 08:55 ]
Posted on May 17, 2011 at 11:32

You are correct : no TestFlash on the emuchip, see previous discussion : ''ST92F120 code running with emulator not with device ?''

This is why this call to the TestFlash (calls 230038h) crashes your debugger.

For your information, this calls to the TestFlash allows to execute a subroutine that will temporarily disable the access protection to this Test Flash. This way, the user can temporarily set high some bits from the protection registers and therefore temporarily unprotect any memory...

Regarding your second question, it seems that you are lucky : there is a new application note since last month that talks about the TestFlash. See AN1528, ''ST92F120/F124/F150/F250 TESTFLASH''

Jojo

[ This message was edited by: Romain on 22-01-2003 08:58 ]

pierre239955_st
Associate II
Posted on May 17, 2011 at 11:32

Jojo

You are wrong. Testflash is in emulation chip. On emulation chip only one control bit allows to enable/disable all internal Flash memory (i.e sectors F0, F1, F2, F3 and testflash and FlashOTP). So, to be able to run/display testflash routines in seg 23 you need to map sectors F0,F1,F2,F3 (000000-01FFFF) and testflash (230000-231F7F) and FlashOTP(231F80-231FFF) as internal. Once it is done you program should runs. You can set breakpoint on 230038 and use step.

Pierre Tarayre
Posted on May 17, 2011 at 11:32

You are right, Pierre. It works

Thanks for the tip

Jojo