ISP mode on 89LPC922 with no control of VDD?

Started by kosman, February 16, 2006, 12:09:13 PM

Previous topic - Next topic

kosman

Hello, I am new to Flash Magic and MCB900.

I need to read the CRC values of pre-programmed 89LPC922's which are already soldered onto fully populated circuit boards. VDD is connected directly to the boards 3.3V bus.

This is in a production enviromnent using automated test equipment and a bed-of-nails fixture. My plan is to use Flash Magic and the MCB900 board wired to the bed of nails.

Problem is that the VDD of the 89LPC922 is already supplied by the board it is installed on, and I won't be able to control VDD and supply the T1 pulse on VDD.

According to the 89LPC922 datasheets, only T2 should matter: "RST delay from VDD active". Why does the device need T1?

I read some postings about write-once-only if VDD is not controlled. I don't plan on writing, only reading CRC.

Will Flash Magic still be able to establish communication with the device and read CRC if VDD is always high?

Will this work? I don't have the MCB900 yet but I need to know if it will work before I purchase.

Thank you kindly.


Andy Ayre

T1 is the time that the device is powered off for. You must make sure that the supply voltage lowers to below the correct threshold for the necessary amount of time for a proper reset. Some users have large capacitors, etc. on the power supply, therefore the option is provided in Flash Magic to make the power off time configurable.

The devices come from the factory with the status bit set to 1. Therefore they reset into ISP mode. If you are going to program them only once then you don't need the pulse entry method (or any other ISP entry method). If they have already been programmed, and there is no provision in the firmware for entering ISP mode, then your only option is to make sure you provide the reset and pulses in accordance with the timing diagram given in the datasheet.

If you want Flash Magic to generate the pulses (which is optional), then it will want to control VDD as well. You wont be able to synchronize controlling VDD yourself with Flash Magic generating the pulses, because the prodedure happens quickly. Therefore I think your only option is to devise some hardware to generate the pulse entry yourself. If you cannot control VDD then you need to ensure that RST is held low for tVR after powering up your hardware, and then generate the pulses. A modified MCB900 may be able to do this, but I'm not sure. Perhaps some additional logic might do the trick. You can also program the LPC9xx device on the MCB900 to act as a reset controller/pulse generator, holding RST low and only starting the sequence when you release a switch for example.

Embedded Systems Academy, Inc.
support at esacademy dot com