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

auto segment too large

i get the error "main() auto segment too large" for the given program which should be run on atmet 89c51 how to fix it
thanks.........

#include <reg51.h>
void Delay();
char serialsend(char []);

void main ()
{ char z;
char command1[]={"AT+CGATT=1\r"};
char command2[]={"AT+CSTT= \"ufone.pinternet\"\r" };
char command3[]={"AT+CIICR\r"};
char command4[]={"AT+CIFSR\r"};
char command5[]={"AT+CIPSTART=\"TCP\"\"121.52.147.94\"800\r"};
char command6[]={"AT+CIPSEND\r"};
char command7[]={"GPRS is Activated"};
char command8[]={"26"};
TMOD = 0x20;
TH1 = 0xFD;
SCON = 0x50;
TR1 = 1;
serialsend(command1);
Delay();
serialsend(command2);
Delay();
serialsend(command3);
for(z=0; z<3; z++)
{ Delay(); }
serialsend(command4);
Delay();
serialsend(command5);
for(z=0; z<10; z++)
{ Delay();
} serialsend(command6);
for(z=0; z<5; z++)
{ Delay(); }
serialsend(command7);
serialsend(command8);

}
char serialsend(char array[])
{ int i=0;
while(array[i] != '\0')
{ SBUF = array[i];
while(TI == 0);
TI = 0;
i++;
} }

void Delay()
{ unsigned char x;
for(x=0; x<40; x++)
{ TMOD=0x10;
TL1=0xFE;
TH1=0xA5;
TR1=1;
while (TF1==0);
TR1=0;
TF1=0;
} }

Parents
  • Please do not feed the Trolls. It just encourages them to come out from under their bridges.

    Either
    1) he is too clueless to realize he is clueless (quite sad).
    2) He is a Troll.
    3) He is right and everyone else is wrong. (he did get an A++!!!!)

    Well it is not 3. Duct Taping the problem is not fixing it.
    Number 1 much like R.O.U.S. I do not think people that clueless really exist.
    So Sherlock Holmes would have us deduce that number 2 is the remaining choice and must be true.

    P.S. if it is #1 dude stop knowing everything and LEARN. The A++ does not mean you are done learning. A Degree means you are ready to start learning.

Reply
  • Please do not feed the Trolls. It just encourages them to come out from under their bridges.

    Either
    1) he is too clueless to realize he is clueless (quite sad).
    2) He is a Troll.
    3) He is right and everyone else is wrong. (he did get an A++!!!!)

    Well it is not 3. Duct Taping the problem is not fixing it.
    Number 1 much like R.O.U.S. I do not think people that clueless really exist.
    So Sherlock Holmes would have us deduce that number 2 is the remaining choice and must be true.

    P.S. if it is #1 dude stop knowing everything and LEARN. The A++ does not mean you are done learning. A Degree means you are ready to start learning.

Children