This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Usage of full 256 bytes of AT89S52

I want to use full 256 bytes of RAM of 89S52.
I am neither using Interrupts nor Timers.
KEIL gives error of overflow over 128 bytes.
I want to use SFRs RAM area to be included for my program(for float variable).
Actually i m using LCD 20x4 for lots of variable display. So far no problem

//Ascii Conversion
temp=adc_int_variable/10;
temp1=temp/10;
buffer[4]=adc_int_variable%10+0x30;      // Last digit
buffer[3]=temp%10+0x30;
buffer[2]=0x2E; //decimal point
buffer[1]=temp1%10+0x30;
buffer[0]=temp1/10+0x30;
//simply> sprintf(buffer,"%u ",adc_int_variable);


But if i m using some mathematical calculation and result is in float variable then i have to use sprintf, that causes Overflow of RAM.
Please help to lighten the load of "sprintf" function or to use the other 128-stack area.

0