AW: [En-Nut-Discussion] IAR Compiller and PPP implementation

Robert Hildebrand robert.hildebrand at ims.fhg.de
Tue Apr 15 08:21:47 CEST 2003


Hi Jon,

I would start with the GNU-Version, but only because of personal reasons.
When I was porting between IAR and GNU (not Nut/OS, only plain code) I had
to consider the following points:

1. changing Port-access from IAR style ( PORTA = 0xF3) to former GNU-style
( outp(0xF3,PORTA) ). This step is obsolete with the latest GCC version, but
you have to check, if all the registers are identically named.

2. changing definition of interupt-serviceroutines
IAR:
interrupt [UART_RX_vect] void receive_interrupt(void)
{
	[...]
}

GNU:
SIGNAL(SIG_UART1_DATA)
{
	[...]
}


3. checking the library-funtions
The IAR compiler had more library functions than GCC (former version), so
the porting from IAR to GCC was somtimes hard, the other way was no problem.
I don't have the actual IAR version (I missed the last update(s)), but there
could be differences in the AVR-specific library like snprintf_P

4. Generating the linker command file (and other options)
The IDE of the IAR-compiler has a lot of options, but it should be no big
problem to adjust the settings

5. Adjusting the inline-assembler
I don't know the difference in the inline-assembler-syntax

If there is more to do, the compiler/linker will tell you.

Regards,

Robert




More information about the En-Nut-Discussion mailing list