Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Thread

Trouble with IAP and Thumb-Interworking

Trouble with IAP and Thumb-Interworking

2005-02-10 by firegenie1980

Hi,

I have been trying to get some IAP commands working with a program I
am developing.

I have got the IRQ disable/enable commands working fine, well the
system accepts the commands and runs them. However when my program
encounters an IAP command it just freezes the board so a restart is
needed.

This is the first time me or any of my collegues have used these
commands some Im in the dark really and asking for help! Can anyone
see any problems here? I have Thumb-Interworking checked in the
assembly settings, however when I get the following warnings for each
file:

Warning:
/cygdrive/c/Cygnus/Arm-Tools/Bin/../lib/gcc-lib/arm-thumb-elf/3.3.1/../../../../arm-thumb-elf/bin/ld:
Warning: flash_record.o does not support interworking, whereas
Scheduler.elf does

Also this is my code so far, only one IAP command is trying to be ran
at the moment. Commented out it works fine.

...

Previous_IRQ_States = DisableInterrupts(INTERRUPT_DISABLE_MASK);

...

IAP_Command[0] = 50;
Flash_Prepare(IAP_Command);

...

RestoreInterrupts(Previous_IRQ_States);

...

---------------

And the function Flash_Prepare:

void Flash_Prepare(unsigned int IAP_Command[])
	{
	// Start and end sector numbers
	IAP_Command[1] = 14;
	IAP_Command[2] = 14;

	// Execute IAP commands
	IAP_Entry (IAP_Command, IAP_Result);
	}


Any ideas anyone as I am at a dead end and Im sure its just a simple
problem which I am overlooking. More than likely to do with the warnings.

Thanks,

FG

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.