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.
hi Dis is my program..and its showing error saying 'IDATA' segment too large...does it depend on the version of kiel used ?
#include <REG52.H> #define ST_CNTRL P1 sfr ldata = 0x80; sbit rs = P3^7; sbit rw = P3^6; sbit en = P3^5; sbit busy = P0^7; //--------------Funtion declaration void MSDelay (unsigned int); //Delay void lcdcmd (unsigned char value); void lcddata (unsigned char value); void lcdready (); void stepper(unsigned char k); void antistepper(unsigned char k) ; void delay(void); unsigned char getkey (); unsigned char j,key=0,data1,data2,data0,count ; unsigned char idata msg0[17] = {"R 642"}; unsigned char idata msg1[17] = {"R 2986"}; unsigned char idata msg2[17] = {"R 21440"}; unsigned char idata msg3[17] = {"R "}; unsigned char idata msg4[17] = {"R "}; unsigned char idata msg5[17] = {"R "}; unsigned char idata msg6[17] = {"R "}; unsigned char idata msg7[17] = {"R "}; unsigned char idata msg8[17] = {"R "}; unsigned char idata msg9[17] = {"R "}; unsigned char idata msg10[17] = {"R "}; unsigned char idata msg11[17] = {"R "}; unsigned char idata msg12[17] = {"R "}; unsigned char idata msg13[17] = {"R "}; unsigned char idata msg14[17] = {"R "}; unsigned char idata msg15[17] = {"R "}; unsigned char idata msg16[17] = {"R "}; unsigned char idata msg17[17] = {"R "}; unsigned char idata msg18[17] = {"R "}; unsigned char idata msg19[17] = {"R "}; unsigned char idata msg20[17] = {"R "}; unsigned char idata msg21[17] = {"R "}; unsigned char idata msg22[17] = {"R "}; unsigned char idata msg23[17] = {"R "}; unsigned char idata msg24[17] = {"R "}; unsigned char idata msg25[17] = {"R "}; unsigned char idata msg26[17] = {"R "}; unsigned char idata msg27[17] = {"R "}; unsigned char idata msg28[17] = {"R "}; unsigned char idata msg29[17] = {"R "}; unsigned char idata msg30[17] = {"R "}; unsigned char idata msg31[17] = {"R "}; unsigned char idata msg32[17] = {"R "}; unsigned char idata msg33[17] = {"R "}; unsigned char idata msg34[17] = {"R "}; unsigned char idata msg35[17] = {"R "}; unsigned char idata msg36[17] = {"R "}; unsigned char idata msg37[17] = {"R "}; unsigned char idata msg38[17] = {"R "}; unsigned char idata msg39[17] = {"R "}; unsigned char idata msg40[17] = {"R "}; unsigned char idata msg41[17] = {"R "}; unsigned char idata msg42[17] = {"R "}; unsigned char idata msg43[17] = {"R "}; unsigned char idata msg44[17] = {"R "}; unsigned char idata msg45[17] = {"R "}; unsigned char idata msg46[17] = {"R "}; unsigned char idata msg47[17] = {"R "}; unsigned char idata msg48[17] = {"R "}; unsigned char idata msg49[17] = {"R "}; unsigned char idata msg50[17] = {"R "}; unsigned char idata msg51[17] = {"R "}; unsigned char idata msg52[17] = {"R "}; unsigned char idata msg53[17] = {"R "}; unsigned char idata msg54[17] = {"R "}; unsigned char idata msg55[17] = {"R "}; unsigned char idata msg56[17] = {"R "}; unsigned char idata msg57[17] = {"R "}; unsigned char idata msg58[17] = {"R "}; unsigned char idata msg59[17] = {"R "}; unsigned char idata msg60[17] = {"R "}; unsigned char idata msg61[17] = {"R "}; unsigned char idata msg62[17] = {"R "}; unsigned char idata msg633[17] = {"R "}; unsigned char idata msg64[17] = {"R "}; unsigned char idata msg65[17] = {"R "}; unsigned char idata msg66[17] = {"R "}; unsigned char idata msg67[17] = {"R "}; unsigned char idata msg68[17] = {"R "}; unsigned char idata msg69[17] = {"R "}; unsigned char idata msg70[17] = {"R "}; unsigned char idata msg71[17] = {"R "}; unsigned char idata msg72[17] = {"R "}; unsigned char idata msg73[17] = {"R "}; unsigned char idata msg74[17] = {"R "}; unsigned char idata msg75[17] = {"R "}; unsigned char idata msg76[17] = {"R "}; unsigned char idata msg77[17] = {"R "}; unsigned char idata msg78[17] = {"R "}; unsigned char idata msg79[17] = {"R "}; unsigned char idata msg80[17] = {"R "}; unsigned char idata msg81[17] = {"R "}; unsigned char idata msg82[17] = {"R "}; unsigned char idata msg83[17] = {"R "}; unsigned char idata msg84[17] = {"R "}; unsigned char idata msg85[17] = {"R "}; unsigned char idata msg86[17] = {"R "}; unsigned char idata msg87[17] = {"R "}; unsigned char idata msg88[17] = {"R "}; unsigned char idata msg89[17] = {"POT RESET"}; unsigned char idata keypad[4][4]= { '1','2','3','/', '4','5','6','*', '7','8','9','-', 'Z','0','X','+',};
"... its showing error saying 'IDATA' segment too large...does it depend on the version of kiel used ?"
No. It depends on the 8051 derivative you've selected or that you've elected to mspace-qualify 1530 bytes of idata in msgXX arrays alone, not to mention the other object you are trying to stuff into idata.
Choose an 8051 that has enough idata (hint: they don't exist), choose a different 8051 memory space, or choose an appropriate microcontroller altogether.
www.8052.com/.../120112
http://www.8052.com/tutorial
http://www.keil.com/support/man/docs/c51/c51_le_idata.htm