Because when compiling. The following information appears... MAIN.C(1351): error C249: 'DATA': SEGMENT TOO LARGE Change the small:variables in DATA into the Large:variables in XDATA. While compiling again. The following information will appear.... Could you tell me what kind of situation it is. How to solve?? Help to answer it. THX! *** ERROR L102: EXTERNAL ATTRIBUTE MISMATCH SYMBOL: DDS_DATA_TEMP MODULE: tranCode.obj (TRANCODE) *** ERROR L102: EXTERNAL ATTRIBUTE MISMATCH SYMBOL: DDS_DATA MODULE: DDS_value.obj (DDS_value) *** ERROR L102: EXTERNAL ATTRIBUTE MISMATCH SYMBOL: LATCH_COUNTERvalue MODULE: Counter.obj (COUNTER) *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?ONUSBSUSPEND?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?MAIN1?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_TRANSMITDATAEPX?UPSD_USB *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: TIMEINT2 MODULE: initial.obj (INITIAL) *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: SAVEANDRECALL MODULE: initial.obj (INITIAL) *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL BL51 BANKED LINKER/LOCATER V5.12 09/07/2005 11:41:29 PAGE 161 SYMBOL: TIMEINT2 MODULE: initial.obj (INITIAL) ADDRESS: 848AH . . . . . *** ERROR L118: REFERENCE MADE TO ERRONEOUS EXTERNAL SYMBOL: LATCH_COUNTERvalue MODULE: Counter.obj (COUNTER) ADDRESS: B612H *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: CUSCL_value MODULE: upsd_usb.obj (UPSD_USB) *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: CUSCL_value MODULE: upsd_usb.obj (UPSD_USB) ADDRESS: B8E3H Program Size: data=174.0 xdata=613 code=47389 LINK/LOCATE RUN COMPLETE. 11 WARNING(S), 131 ERROR(S)
EXTERNAL ATTRIBUTE MISMATCH Something has been declared with an explicit memory type that doesn't match its real memory space. Given your description, this is probably one of the items you moved from data to xdata. Some other piece of code still refers to it in the data space. UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS You have some routines that are not being called. This situation contributes to your running out of data memory. Every uncalled function serves as the root of a new call tree, and the data memory that call tree needs cannot be overlaid with the main tree. Study the manual sections that talk about the overlay analysis. UNRESOLVED EXTERNAL SYMBOL Symbol declared, but not actually present in any of the .c files being linked. You don't have a complete program in your project files, or at least your definitions and declarations don't always correspond.