Hi! I have a problem with global xdata variables. In main.c I have the following code to make two global arrays.
unsigned int xdata fordonsnummer[100] _at_ 0x000; unsigned int xdata tomvikt[100] _at_ 0x0c8;
extern unsigned int xdata fordonsnummer[]; extern unsigned int xdata tomvikt[];
Hello all! Now it works and the solution was to setup the SFR register to enable the xdata area. I thought this was automatically done by the compilator when I marked the "Use on chip xdata" box in the target dialog. Thank you all for your suggestions I'll keep them in mind. Regards Jonas Finell
"Now it works and the solution was to setup the SFR register to enable the xdata area. I thought this was automatically done by the compilator when I marked the "Use on chip xdata" box in the target dialog." I think that checking the "Use on chip xdata/code" boxes is just a substitute for entering the start address and length of these memory areas. It is a bit misleading in that sense, if I had the choice I'd get rid of those check boxes.
"I think that checking the "Use on chip xdata/code" boxes is just a substitute for entering the start address and length of these memory areas." Yes, it is - see my earlier post. "It is a bit misleading in that sense" I agree. "if I had the choice I'd get rid of those check boxes." Dunno about getting rid of them - they just need a better better name!