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.
/*******************************************/ /*compiler Keil C51 v6.23*/ /*name:main*/ unsigned char xdata temp; unsigned char xdata *p; void func(void); void main(void) { unsigned char xdata i; while(1) { p = &temp; *p = 98; func(); i = *p; } } /******************************************/ /*-------------------------------------- compile following program to assembly program, then link with the main function.ERROR!!! Why and how to chang the assembly program.please help me,thank you.! ------------------------------------------*/ #pragma src(MYPTR.A51) small extern unsigned char xdata *p; void func(void) { *p = 0xdd; } my E-mail:inspra@xjgroup.com name:huangjian
Yes,you are right.Thank you very much! But when I chang memory model from SMALL to LARGE or COMPACT,the program fly away.Please tell me why and how to adjust it.
"the program fly away" What does that mean?
It appears that your C program which you use SRC with is ALWAYS compiled in SMALL memory model. The following line:
#pragma src(MYPTR.A51) small