Hi people, I'm using the old version of Keil compiler uVison 1. The linker is BL51 V3.70 I'm building my project from a batch file where I'm invoking the linker by the following command :
bl51 startup.obj, init.obj, rrex.obj, main.obj, uart.obj, glcd.obj, cmdp.obj, hi2c.obj, boot.obj TO TRX RS(256)
*** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?C_INITSEG *** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_HI2C_SENDI2C?HI2C *** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_HI2C_RECEIVEI2C?HI2C LINK/LOCATE RUN COMPLETE. 3 WARNING(S), 0 ERROR(S)
bl51 startup.obj, init.obj, rrex.obj, main.obj, uart.obj, glcd.obj, cmdp.obj, hi2c.obj, boot.obj, hrtc.obj TO TRX RS(256)
*** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?C_INITSEG *** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?HRTC_INIT?HRTC *** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_HRTC_SETDATE?HRTC *** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?HRTC_READDATE?HRTC LINK/LOCATE RUN COMPLETE. 4 WARNING(S), 0 ERROR(S)
Your problems may be caused since the startup code and init code are not the last 2 files in the obj file list. Refer to the following knowledgebase article. http://www.keil.com/support/docs/752.htm A question I have is, why are you forcing the init file to be included? This is done automatically by the linker when this file is required. Jon
View all questions in Keil forum