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