英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流
标题:
PICC编译时出现以下错误,不知道是为什么
[打印本页]
作者:
winnie
时间:
2009-3-28 10:45
标题:
PICC编译时出现以下错误,不知道是为什么
Error[000] : Can't find 0x105 words for psect rbss_0 in segment BANK0
Error[000] : Can't find 0x2 words (0x2 withtotal) for psect intsave in segment BANK0
Error[000] : 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位,发送使能,异步,[H]
RCSTA= 0xb0; //串口使能,8位,单字使能,连续接收使能
TRISC6= 1;
TRISC7= 1;
}
void TMR1init(void)
{
TMR1CS=0;
TMR1ON=1;
TMR0IE=1;
}
void main()
{
unsigned char errflag, i=0,recdata[256];
unsigned int tep;
overflag=0;
errflag=0;
TXEN=1;
CREN=1;
while(!RCIF);
for(; ;)
{
RCREG=RCREG;
recdata[i]=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;
}
else break;
if (errflag==1)
break;
}
}
void interrupt ISR(void) //interrrupt
{
if (TMR1IE && TMR1IF)
{
TMR1IF = 0;
overflag=1;
}
}
作者:
winnie
时间:
2009-3-28 10:45
可能是BANK0的空间不够用了
把定义在BANK0中的变量转移出一部分,放到BANK1或者BANK2中,试一下吧,问题可能会解决
欢迎光临 英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 (http://enroobbs.com/)
Powered by Discuz! X3.2