Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - crossing

I tried as you did: downloaded 10.67 again
Uninstalled 7.71 , installed 10.67 and IT WORKS
(output shows 10.67 now)
Really Looks curious.
Actually I do not have any 10.30 Version
I switched installations between 7.71 and 10.66, after your 1st advice Version 10.67
right now, i rolled back to 7.71 and get the following Output (working)
Flash Magic Version 7.71.3506
8051/XA Driver Version 3.04.3296
ARM UART Driver Version 3.11.3302
ARM Cortex UART Driver Version 4.66.3495
ARM Ethernet Driver Version 2.05.3296
ARM Cortex Ethernet Driver Version 2.10.3471
ARM CAN Driver Version 2.12.3476
(C) Embedded Systems Academy 2000-2013 All rights reserved

Sorry, still answers with
Flash Magic Version 10.30.4694
8051/XA Driver Version 3.51.4763
ARM UART Driver Version 5.01.4766
ARM Cortex UART Driver Version 7.91.4816
ARM Ethernet Driver Version 2.22.4763
ARM Cortex Ethernet Driver Version 2.61.4763
ARM CAN Driver Version 3.30.4776
(C) Embedded Systems Academy 2000-2017 All rights reserved
Erase failed: not connected (DEVICE)
After Update to V10.66 Flash Magic's fm.exe does not work anymore:
Error "device not connected" appears.
I double checked the Parameters and even tried the "fm.exe @commandfile.txt"- way. Same result.
(The "Windows Version" works fine, nevertheless)
(I tried with and without installing the USB Driver Option. It is not needed as I use a Serial port)
When uninstalling 10.66 and installing the old 7.66 everything works fine again. (7.71 works fine, too)
Is this a known problem or can anyone confirm it works in 10.66 without issues?
Hi Andy
thank you for the fast reply.
You wrote
"There is currently no signature checking in the command line version. The idea is that people who use the command line version are confident of what they are doing."

Basically that's right, but when programming a bunch of devices with different LPC controllers being selected using a batch file, it quickly happens that a wrong key is touched....
I was about trying to eliminate that case.

How do you guys of FlashMagic figure out a device matching in the GUI? Using the Device ID?
I could try this way...Maybe asking NXP if Device ID are unique for each controller independet of year, charge or release.
Hi All,
I'm using Flashmagic both as GUI  and as batch file, too.
If a selected device in the GUI  doesn't match the connected device, a warning pops up. Thats great!
Not so in the  FM console:
When using the console programming I can select a LPC 2377  and program for example a LPC2478 without warning.
fm COM(1, 115200) DEVICE(LPC2377, 4.000000) HEXFILE(hexfile.hex, NOCHECKSUMS, NOFILL, PROTECTISP) VERIFY(hexfile.hex, NOCHECKSUMS)
Not even verify gives errors.
Will there any errorlevel value given back when doing actions on a wrong device? I would be glad when able to avoid overwriting other devices.

Alternatively, I found the READSIGNATURE command.
But it helps a little only, as it requires double checking of a 9 digit number. And do I know if the signature remains the same during all life cycle of a LPC2478?
I think I figured out what the reasons were:
The built hex file contained one area, where the address range from 8000.0000 to 80001AF0 was filled with data (before optimization with 00).
However, >8000.0000 is reserved for external RAM!
Deleting this part from hexfile made the firmware run.
We will now check the obj files etc. to avoid effects like that further.
Nevertheless, Flash Magic obviously doesn't check the allowed memory range and overwrote with the data, respectively Zeros.

Thank you for your help
Dear Andy,
here come the answers to your questions:

>Have you checked the hardware is not causing the device to stay in the bootloader on every reset?
Seems to be fine, RESET is H =  inactive and EINT0 is H =  inactive, too.
FM does start the programming after pulling down these in the correct sequence.

>After programming with JTAG what happens if you reset the hardware by removing power, disconnecting >JTAG, applying power? Does your firmware run?
Yes, firmware runs as expected after reset and/or power on. That's the way I can display the flash content later with FM.

>You say the verify in Flash Magic passes but you see differences. What are you comparing it to? You
can >use File -> Save in Flash Magic to save a hex file from the device - that might help.
I read and compare bytewise the machine code. Its the same in the disassembly window of the Hitex IDE and in the hex file and in the binary when flashed via JTAG.
It's actually mostly 00, on >14h i have FF FE FF FF  when flashed via UART0.

Dear Andy, dear friends ,
the problem occurs on a new developed board. It is the 2nd board we developed with LPC2478, on the 1st one the effect was unknown.

Now let me describe the problem:
Firmware runs fine when downloading with Tantino JTAG Debugger under Hitex IDE. It remains and runs without Tantino, too.

Now I download the ihex file with FM in ISP mode. Verify ok.
But doesn't start!

So I checked the quartz: No oscillation. Obviously firmware doesn't initialize the clk-registers.

I checked the hexfile: looks fine up to 0x4C and above (where the inits begin) and the code looks exactly the same as in the IDE.
I double checked with the binary I obtained when running objcopy with binary option.
Finally I'm sure the elf-, the ihex- and the bin-files are o.k.

But when I display (read back) the code from flash, I see differences, many 00.

The code for the 1st board was pretty smaller. So I suspected the size as a problem.
I loaded it (for it was a running code) and - it started the quartz.
Next I manipulated the ihex file to get a shorter code - guess what? Quartz started.

I load the original ihex - same problem as in the beginning.

When programming with FM the counter starts at 7xxxx..something I can't fix because it counts down to fast. (Is it 7CFFF???)

Does FM check file size/flash overflows? I suspect there may be my problem.

Best regards