winnie 发表于 2009-3-28 10:45:38

PICC编译时出现以下错误,不知道是为什么

Error   : Can't find 0x105 words for psect rbss_0 in segment BANK0
Error   : Can't find 0x2 words (0x2 withtotal) for psect intsave in segment BANK0
Error   : Can't find 0x1 words (0x1 withtotal) for psect intsave_0 in segment COMBANK

源程序里面对定时器做了一些设置,并接收串口数据。用的是PIC16F877。
源程序如下:
unsigned char overflag;
void sciinit()
   {
    SPBRG= 25;
    TXSTA= 0xa6;   //主模式,发送8位,发送使能,异步,
    RCSTA= 0xb0;   //串口使能,8位,单字使能,连续接收使能
    TRISC6= 1;
    TRISC7= 1;
   }
void TMR1init(void)
{
TMR1CS=0;
TMR1ON=1;
TMR0IE=1;
}

void main()
{
unsignedcharerrflag, i=0,recdata;
unsigned int tep;
    overflag=0;
    errflag=0;
    TXEN=1;
    CREN=1;
while(!RCIF);
for(; ;)   
       {      
      RCREG=RCREG;
      recdata=RCREG;
      i++;
      TMR1init();
      TMR1H=0xF4;
      TMR1L=0x47;                //3ms interrupt;
      while(!RCIF)
            { if(overflag==1)
            break;
            }
      if (overflag==0)
            {
             tep=TMR1H;
             tep<<=8;
             tep+=TMR1L;
             if (tep<0xF82F);
             else
               errflag=1;
             }
      elsebreak;   
       if (errflag==1)
          break;
       }

}
void interrupt ISR(void) //interrrupt
   {
    if (TMR1IE && TMR1IF)
       {
       TMR1IF = 0;
       overflag=1;
       }
   }

winnie 发表于 2009-3-28 10:45:51

可能是BANK0的空间不够用了
把定义在BANK0中的变量转移出一部分,放到BANK1或者BANK2中,试一下吧,问题可能会解决
页: [1]
查看完整版本: PICC编译时出现以下错误,不知道是为什么