This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

too many Warnings and errors after file implementation

Hi,

I have an existing project which contains my code and code of a library and I would add again a little part from this same library (Atmel) 3 new files ( file.c, fs_varaiable.c and fat.c) at this project but after adding the fat.c file I have receive too many errors and warning.
For a segment (function) there are too many differents warning but which one is the first and so?

Can you advice me to best implement a part of a library?

The output file is:

Sequences of warnings (LX) and errors (Error LX)

L16 24 x
L15 1 x
ERROR L107 30 x
L1 6 x
Error L105 1x
Error L120 1x
Error L118 1 x
Error L105 7x
Error L120 10x
Error L105 4x
Error L120 2x
Error L118 12x
Error L120 1x
Error L118 2x
Error L120 1x
Error L118 1x
Error L120 1x
Error L118 24x
Error L105 1x
Error L120 1x
Error L118 84x
Error L105 2x
Error L120 2x
Error L105 1x
Error L120 2x
Error L105 1x
Error L118 20x
Error L120 1x
Error L118 14x
Error L105 1x
Error L118 22x
Error L120 1x
L1 2x
Error L105 1x
L2 2x
Error L120 1x
L1 12x
Error L105 7x
Error L120 1x
L2 46x
Error L120 1x
L2 93x
Error L120 1x
L2 30x
Error L120 3x
L2 18x
Error L118 2x
Error L105 1x
Error L118 4x
Error L105 1x
Error L120 1x
Error L105 1x
Error L120 1x
Error L105 1x
Error L120 1x

////////////////////////////////

Build target 'Target 1'
compiling main.c...
compiling I2C.c...
compiling ADC.c...
compiling AUD.c...
compiling DAC.c...
compiling MICRO2.c...
compiling DONG2.c...
assembling STARTUP.A51...
compiling variable.c...
compiling ide_drv.c...
compiling C_Flash.c...
compiling CF_oper.c...
compiling cf_drv_.c...
compiling ata.c...
compiling file.c...
compiling fs_variable.c...
compiling fat.c...
linking...
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?CAG?ADC
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?MICRO?MICRO2
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?CO?VARIABLE
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_FILE_SEEK_PREV?FILE
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_FILE_SEEK_NEXT?FILE
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_FILE_ENTRY_DIR?FILE
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
....
...
...
..

Can you help me please?

Thank you

Parents
No data
Reply
  • "I Think that I must reduce te code space memory"

    Why?
    Your code fits; only just, but it does fit!

    "but I don't know how?"

    Have you actually read any of the suggestions that I've given you?

    "So I think to use Banking code"

    That will not reduce the size of your code!

    Banking is a way to gain access to >64K code space.
    Do you actually have >64K of CODE memory?
    Do you have the hardware necessary to do bank switching?

    As I said before, moving to code banking is not a trivial exercise!

Children
  • Thank you

    Ok so I'll not use code banking. yes my program fit but can it be

    Do you actually have >64K of CODE memory?
    Do you have the hardware necessary to do bank switching?

    I think that I have 64 Kbytes limited because my µC is an Atmel AT89C51SNDC1 with 64KB.

    I have another problem, my project has bugs and I will see where it's bugging in my code so when I launch de debug and when it comes to a printf the debug stopped and I can't debug my program for resolving So I have used that :


    #ifdef DEBUG_ME
    printf functions
    #endif

    And in a config.h file I define or not to use the debug.
    If I write this line :
    #define DEBUG_ME
    in the config.h file
    my code size become 58150 , so it's cool for debugging

    But anyway I launch the debug it is running but nothing happens when I push F5 o F10, I can't follow the sequence of my program in my files? Could you help me for how to use the debug?

    Thanks

  • "I think that I have 64 Kbytes limited because my µC is an Atmel AT89C51SNDC1 with 64KB."

    You think?!

    This is the kind of thing that you really need to know!!

    :-0

  • Yes 64Kbytes but I can maybe increase this size
    because the specifications of this µC :

    • 64K Bytes of Code Memory
    – Flash (100K Erase/Write Cycles)
    • 4K Bytes of Boot Flash Memory (AT89C51SND1C)
    – ISP: Download from USB or UART

    Can I use maybe 4K bytes of boot Flash like code Memory , I don't know ?

    And about debugging can you said me why my debug is stopping when in a line I have printf instruction ?

    Thank you