overload of xc864 limit?

Hi,

I'm making a program with the xc864 using the keil application but at some point I started to get the followings errors while I tried to program my micro:

" Content mismatch at address 0000H (Flash=EDH Required=02H)
Content mismatch at address 0001H (Flash=B7H Required=0FH)
Content mismatch at address 0002H (Flash=DCH Required=D6H)
Content mismatch at address 0003H (Flash=7FH Required=78H)
... "

I've proved to comment independents parts of the program and the error disapears. So that I think that the problem is that my code is too huge for the micro.

How can I know what makes my code too huge?
There is a way to get more free space for coding?

thanks

Parents
  • Making your program smaller is called optimizing.

    On one hand, the compiler has a setting to turn on automatic optimization (for size and/or speed), but it is also a question of being a skilled developer.

    Avoid the use of large library functions. Look at your code and see if you can rewrite some parts of the code to be more efficient. Is the code always using the optimum size for all variables?

    Turn on generation of a map file, and look in the map file to see how large the program is, and the size of the different modules.

Reply
  • Making your program smaller is called optimizing.

    On one hand, the compiler has a setting to turn on automatic optimization (for size and/or speed), but it is also a question of being a skilled developer.

    Avoid the use of large library functions. Look at your code and see if you can rewrite some parts of the code to be more efficient. Is the code always using the optimum size for all variables?

    Turn on generation of a map file, and look in the map file to see how large the program is, and the size of the different modules.

Children
More questions in this forum