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

string pointer and static address problem

Hello,

My problem is as following. I have a string array, If I delete last string of GprsErrors or pointer of GprsErrors, if I make const pointer. I don't get error.

I'm using some static addresses(0x20000309, 0x20000308 .....), I guess, Keil is trying to write static address so I get the following error.

Keil shows as fgetc_b.o and constant.o overlap, I didn't find the source of the problem.

what is my fault? or How can I find and solve the problem?

Thanks alot.

Kutay,

..\Output\Project.axf: Error: L6971E: fgetc_b.o(.data) type RW incompatible with constants.o(.ARM.__AT_0x20000309) type ZI in er RW_IRAM1.

char const * GprsErrors[]={
    "BAUDRATE",
    "AT CMD",
    "ATE0 CMD",
    "BAT INIT",
    "PIN CODE",
     .....

     ".....",       // I'm deleting this string and I get no error(everything is ok)
};

Parents
  • Carve out a region for the static stuff in the scatter file, say 0x20000000..0x200003FF, and put your new stuff elsewhere.

    You'd have to look at how exactly the other data is accessed via address from outside. If it is through an interface you provide, then couldn't you just decode that appropriately?

    Here we use a more considered command/response system to access internal parameters, not absolute addresses within our firmware or RAM footprint.

Reply
  • Carve out a region for the static stuff in the scatter file, say 0x20000000..0x200003FF, and put your new stuff elsewhere.

    You'd have to look at how exactly the other data is accessed via address from outside. If it is through an interface you provide, then couldn't you just decode that appropriately?

    Here we use a more considered command/response system to access internal parameters, not absolute addresses within our firmware or RAM footprint.

Children