We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello all. I'm using 0x80000(, 0x90000..) as a mspace for external eeprom(s). Is there a way to avoid to check the (valid) mspace of constants? Or even better, to add a 'new' memory space?
#define T_SIZE 16 #define P_SIZE 4*T_SIZE #define Params_E (0x080000 | 0x0140) #define ParamTab_E(n) (Params_E+n*T_SIZE) #define Param_Chk_E (Params_E+P_SIZE) unsigned char * pp; unsigned char tmp = 0; // This doesn't work pp = (unsigned char *)0x80050; // This does work pp = (unsigned char *)(0x80000 | tmp); // This doesn't work pp = (unsigned char *)Params_E; // This doesn't work pp = (unsigned char *)ParamTab_E(0); // This does work pp = (unsigned char *)ParamTab_E(tmp); // This doesn't work pp = (unsigned char *)Param_Chk_E;