ADuC812: Problems downloading to FLASH

Document created by analog-archivist Employee on Feb 23, 2016
Version 1Show Document
  • View in full screen mode

We have a customer trying to use the EVAL BD for the ADUC812 - he has had this
for some time but is now reporting a 'download limit' preventing the system
from working - even s/w written some time ago that used to work is no longer
functioning.

Is there a 'timeout' feature on the eval kit preventing it being used after 12
months or so?
Or can you offer any advice as to anything that has changed which would now
prevent the correct opporation of the product (perhaps a device modification
etc ? ).

 

There is no deliberate "download limit" whatsoever on the ADuC812 or its
evaluation board.

Reading between the lines, the customer seems to be unable to download code to
the on board FLASH memory.
There are two likely causes to the problem of being unable to re-program the
FLASH. Either your software has written to a FLASH location higher than 159Hor 
a spurious RESET signal has caused the ADuC812 to begin executing with a supply
less than 2V. let's look at both these possibilities in more detail.

-Code downloaded fine a few times, but now always "fails to reset the
target"....If the last program to successfully go onto the chip contains any
commands to program the 640 byte Flash/EE data space, then it's possible that a
simple programming error caused a write to page 160 resulting in the security
bits getting set and locking the chip up for good. There's no way to recover
other than replacing the chip. Code must be written carefully to ensure that
page 160 of data Flash/EE space never gets programmed. See errata #7 (errata
revs E & D) for details.

-Check the reset signal on your board. Are there any glitches on it? Look at
the reference on the mis-behaving parts, is it exactly at 2.5V? If the micro is
released from reset while DVDD is below 2V, the micro will still execute code
without trouble. However, if you try to write to the FLASH while the power
supply is low, the on -chip charge pumps cannot generate the required
programming voltages. Exactly what happens in these circumstances is
indeterminate but one possibility is that the calibration co-efficients are
erased and this would cause the reference to jump to 2.8V, the ADC would not be
accurate and it would also be possible to lock the code space on the part such
that it cannot be reprogrammed. So check your RESET line, and, if necessary 
replace your reset generator with one that follows VDD during power up and then
releases RESET a few 100ms after DVDD is fully up. The ADM1817, ADM1813, ADM809
would be ideal here. If you have erased the cal co-efficients, the part must be
replaced, there is no way to reload these co-efficients once they are lost.

Attachments

    Outcomes