I am developing an application for the AT89S53 in C. while trying to define a CHAR array in size bigger then 128 Byte i got a compilation ERROR. i allready read the "Data Memory - RAM" section in the User Manuel but i did not understand. please help me to manage the 256 byte RAM i have. I have to implement an Array in 200 Byte size. Thanks
char idata myarray[200]; But be careful, you will have very little stack space left.
"i allready read the "Data Memory - RAM" section in the User Manuel but i did not understand." Do you understand the 8052's different memory address spaces, viz: CODE DATA IDATA XDATA (there's also PDATA, but you needn't worry about that just now). If not, you need to read the following documents, commonly referred to as "the bible" for the 8051 - Chapter 1 describes the memory architecture: Chapter 1 - 80C51 Family Architecture: http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_ARCH_1.pdf Chapter 2 - 80C51 Family Programmer's Guide and Instruction Set: http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_PROG_GUIDE_1.pdf Chapter 3 - 80C51 Family Hardware Description: http://www.semiconductors.philips.com/acrobat/various/80C51_FAM_HARDWARE_1.pdf Are you also a newbie to 'C' programming in general? If so, you'll also need a good 'C' textbook. Here are some other introductory & reference materials: http://www.keil.com/books/8051books.asp http://www.8052.com/books.phtml http://www.8052.com/tutorial.phtml