lpc932 dead after config change?

Started by roger floyd, July 22, 2004, 10:16:11 AM

Previous topic - Next topic

roger floyd

I have been using a MCB900 configured as ISP to program tssop parts - about 6 months now.
Suddenly the 932's are getting trashed, apparently when I configure for the external xtal(11.059) something happens and further communication is lost (forever?).
I have downloaded V2.01 - same thing

Andy Ayre

Have you checked with a scope that there is a clock signal on the XTAL pins, and that the frequency is correct?
Did you add stabilization caps to the XTAL pins?

Embedded Systems Academy, Inc.
support at esacademy dot com

roger floyd

yes there is NO clock on the broken chips. both X1,X2 have about a volt or so.
30 pf caps are included
my
I  tried to inject a xtal osc into p3.1  (11 mhz) - also, that to didn't work

Andy Ayre

Hmmm...I'm not sure what the problem could be. Maybe someone else on here might have an idea.

Embedded Systems Academy, Inc.
support at esacademy dot com

Joachim Woelk

Hi,

I don't know whether it is useful to post something to this old thread, but let's try.

I just had the same problem with my first LPC935 on a MCB900 Vers. 4 board. I could download a new program, including ISD51 (In-System Debugger) into it, using Flash Magic 1.95.

As I could step through the code with ISD51 as usually, I thought the serial interface should be save enough to try the next step, which was to solder an 12 MHz quartz to port 3, together with the two 22 pF caps and the 1 megohm resistor recommended by Philips app note AN10289_1.pdf.

Then I used Flash Magic to reconfigure the device configuration to use a high speed external crystal. From this moment I lost the connection to the LPC935 and never gained it again, because I can't get the oscillator to work. I even replaced the quartz with an external oscillator with a 3.3 Vpp signal at 10.5 MHz, but I do not see any action.
With the 12 MHz quartz and with/without the 100meg resistor I see exactly the voltages which are shown in figure 4 of the mentionned app note. But with the external oscillator I do not see even any signal on P3.0, so I think the oscillator is disabled.

Maybe I hit the wheel of my mouse when I started the configuration, so that a false oscillator is selected now. I will try with a slower oscillator in the next days.

By the way, is it possible to use ICP for re-animating that processor? I have to buy some more processors and sockets anyway.

Best Regards

Joachim

erikm

I do not recall what, but there is an errata/post/statement that something does not work if the clock is above the 7.xxx MHz.

Erik

Joachim Woelk

This evening I tried again with various frequencies driven by an external generator, but today the oscillator was ok. Maybe I did not pay enough attention to the settings of my oscilloscope yesterday.
The oscillator now even runs with a 12 MHz crystal.
And Flash Magic can connect and seems to fully operate again.
A new program loaded into the LPC935 also works for some time, but though it is really very simple, execution stops after some minutes.
Unfortunately uVision3 is not able to connect to ISD51, so I can not be sure whether there is a flaw in the program or what ever.

All I did today with the MCB900 board was to solder a cable connection to P3.1, then replace it again by the crystal. Also I connected the screening of the serial cable with the ground plane of the board. I wonder why this connection has not been done by design.
I think there might be a bad solder joint somewhere on the board.

Well, nevertheless a big progress for me.

Thank you for your reply, Erik.

> I do not recall what, but there is an errata/post/statement that
> something does not work if the clock is above the 7.xxx MHz.

I also have a faint rememberance. Maybe another chip?

Best Regards

Joachim

nguyen hoai viet

Hi everybody,
I'm working with LPC922 but i haven't uVision.So anybody can send it for me?Thanks alot.

Joachim Woelk

Hi Erik,

> I do not recall what, but there is an errata/post/statement that
> something does not work if the clock is above the 7.xxx MHz.

I discovered the topic again in the Philips forum under the following thread:
"LPC932 loosing flash program code ?", opened Mon Nov 24, 2003.
http://forums.semiconductors.philips.com/forums/viewtopic.php?t=3699

There Robert Sierzega states on 28 Jun 2003:

--- citation ---

We spent a long time to find out the following problem:

After an e-mail to Philips support team about our problems with LPC932 unwanted reprogramming during power cycling (I think we were not the only one), they added in an errata sheet not to cycle the power supply between 0.2 and 2.7 Volt, because POR (power on reset) can fail. (Even when brown out detection should avoid any problems with hang-ups).

But we found out that this is not the solution!!

By using an external crystal with 7.373 MHz or higher (limit is exactly the internal RC-oscillator ;-) ) the POR fails in some cases also when all controller pins were below 0.2 Volt! The LPC932 hangs up and will make some IAP-calls....

Next problem: It is possible to save NEARLY the whole memory from reprogramming calls by using the security bits. BUT: There are no security bits for adresses 2000H and higher (UCFG)! So after some hangups the LPC932 may forget which oscillator to use and so on ....

So please do not use a crystal higher than 7,373 MHz and there won't be a problem!!!

--- end of citation ---

As nothing is stated in the LPC93x errata sheets, I think the same error
can well be present in other devices, like my LPC935.

By the way, after reprogramming the device several times successfully, the
LPC935 oscillator now will not start again. Besides the problem described
above this could be my own fault, because I was not aware that the
UCFG1 etc. bytes ware included in the Keil project by default, so were
reprogrammed unnecessarily with each program code download.

Now I have to wait until I get other devices.

I am considering to switch to another processor type, but the 32 MHz CCU
is quite attractive to me.

Regards

Joachim

Joachim Woelk

Hi Nguyen Hoai Viet,

please look at www.keil.com. They have a free evaluation version of uVision which can be used for unlimited time. It is, however, constrained to 2kB code, and has some other restrictions as well.

Then they sell the MCB900 evaluation board with an LPC935 processor on it (the same with which I currently experiment) for just 60 EUR plus shipping and taxes. A uVision version restricted to 4kB is included.

To circumvent the 2kB resp. 4kB limit I propose to do the following
(I will do it, too, once my code has grown too large, but at the moment
I can not prove my proposal will work):
- First keep the project size below the limit of 2kB or 4kB. Test the program code.
- Link some tested functions to fixed addresses within a sector which
is not used by the uVision linker. Edit the resulting HEX file by hand,
deleting all code except these functions. Program them into the Flash
by using Flash Magic.
- In your project you can now replace the functions' code by indirect
calling sequences to the code in the upper Flash segment. In assembler
code this can be done with only one JMP instruction for each function.
- Now you can add more code to your project and repeat the above.
Eventually you have to combine some HEX files to completely fill a Flash segment.

The drawback is that you can not debug your project with the software
debugger, but have to use e.g. IDS-51 In-System Debugger (included
in the evaluation package), which is almost as handysome, and runs on
the target hardware.

I hope you have got the idea.

Best Regards

Joachim

Joachim Woelk

Hi,

I finally should remark that I succeeded now in reprogramming the "dead" LPC935 by using a second LPC935 and ICP.

If someone wants to solder the really easy ICP adapter between an MCB900 board and a second processor, (s)he should be aware to take a NPN transistor, as shown in the new AN10258_2.pdf app note. I wonder how long Philips will need to discover they erroneously still have mentionned "PNP" twice in the text.