Hello
I have been using keil's uVision for a while and i was pretty satisfied. Until one day totally unexpectedly i received the following error:
Build target 'Target 1' compiling Blinky.c... C51 COMPILER V8.08 - SN: K1DEC-L281B9 COPYRIGHT KEIL ELEKTRONIK GmbH 1987 - 2007 C51 FATAL-ERROR - ACTION: PARSING SOURCE-FILE ERROR: PREPROCESSOR: MACROS TOO NESTED C51 TERMINATED. Target not created
I do not use any macros , or complex defines etc. I receive this even while trying to compile a simple "Blinky" app. I haven't messed with Linker-Compiler-Assembler flags-settings. The weird thing also is that this error , for the same code ,doesn't appear no Silab's IDE. I know all this seem peculiar but if this problem has occured to anyone else and solved it i would be very happy if he shared the solution with me.
Thank you P.S New Embedded programming..
No nothing else , just default uVision settings , one day worked for me the other , this error appeared (sounds silly but that's what happened). And as i said Silabs IDE works fine , for the same compiler linker and assembler.
IDE-Version: µVision3 V3.51 Copyright (c) Keil Elektronik GmbH / Keil Software, Inc. 1995 - 2007
Tool Version Numbers: Toolchain Path: C:\Keil\C51\BIN\ C Compiler: C51.Exe V8.08 Assembler: A51.Exe V8.00d Linker/Locator: BL51.Exe V6.05 Librarian: LIB51.Exe V4.24 Hex Converter: OH51.Exe V2.6 CPU DLL: S8051.DLL V3.11 Dialog DLL: DCYG.DLL V2.44d Target DLL: BIN\SiC8051F.dll V3.4.1.0 Dialog DLL: TCYG.DLL V2.45
some more info for the IDE
Maybe you have a damanged include file. Is the Silabs IDE compiling with same compiler and header files as uVision?
yes , everything is exactly the same.. Headers , c source code , everything.. Tried reinstalling but nothing..
SILabs have, bless them, created some rather involved macros that allow the same code to run under Keil or SDCC. I stumbled over this, looking at some code in the SILabs forum, but never used it. I do not use either IDE thus do not know anything about IDEs automatic includes. I GUESS that these macros are automatically included by the SILabs IDE and if the switch (whatever it is) has not been defined you will get the above error. You may want to post at the SILabs forum about this.
Erik