pic单片机编译错误汇总

2019-04-15 12:12发布

一、Error[000] : Can't find 0x12C words for psect rbss_1 in segment BANK1   连接器告诉你总共有0x12C(300)个字节准备放到bank1 中但bank1 容量不够。显然,只有把一部分原本定位在bank1 中的变量改放到其它bank 中才能解决此问题。 二、 Error[000] :Fixup overflow in expression (...)    Error [477] ; . fixup overflow in expression (location 0x1FEE (0x1FE6+8), size 2, value 0xFF5)      既然定义的指针有明确的bank 适用区域,在对指针变量赋值时就必须实现类型匹配,下面的指针赋值将产生一个致命错误:   unsigned char *ptr0; //定义指向bank0/1 的指针   bank2 unsigned char buff[8]; //定义bank2 中的一个缓冲区     程序语句:ptr0 = buff; //错误!试图将bank2 内的变量地址赋给指向bank0/1 的指针,如果你看到了“Fixup overflow”的错误指示,请重点检查程序中有关指针的操作。     如果总程序仍超过一页,则可能会有以上错误,检查程序是否超页: 三、 Error[000] : Can't find 0x26 words (0x26 withtotal) for psect text13 in segment CODE   Error[000] : Can't find 0xC words (0xC withtotal) for psect text in segment CODE   Error[000] : Can't find 0xC words (0xC withtotal) for psect text4 in segment CODE   常见的情况是编译的内容超出芯片ROM空间,可屏蔽部分代码,以检查代码量是否过多。 四、 Error[000] D:Workstandard_ emo.c 113 : probable missing '}' in previous block    Error[000] D:Workstandard_ emo.c 8 : { expected   程序中大括号不完整,检查{}是否完整成对使用。 五、Error[000] D:Workstandard emo.c 8 : ; expected       程序代码后缺少“;”号。 六、 Error[000] D:Workstandard emo.c 10 : undefined identifier: buzz1   变量buzz1未定义就使用,变量应先定义后使用。 七、 Error[000] D:Workstandard emo.c 80 : inappropriate 'else'   If,else语句未成对使用,缺少if条件,提示不对称的else。 八、Error[000] : undefined symbols:    Error[000] : _chipsel (D:Workstandardmini.obj)     未定义的标签,确认子程序chipsel()等是否可以被调用,检查是否在INCLUDE中,是否在调用前进行了函数原型声明。 九、Error[000] D:Workstandardmini.c 19 : Cannot open include file "I2C.c1"   包含的文件名错误,检查包含的文件和原文件的命名是否相同。 十、Error[000] :function _EQ_DATA_SEND appears in multiple call graphs: rooted at _isr and _main (error)      函数EQ_DATA_SEND在主程序和中断程序中均被调用,有可能该函数在被主程序调用执行的过程中又被中断程序调用。这样就破坏了正在执行过程的数据,造成不可预料的结果,因此不能这样。可以写成两个不同命名的函数分别调用。 十一、Error[000] : This demo compiler has expired.Contact HI-TECH software to purchase and re-activate this compiler 演示版的编译器寿终正寝了,把编译器卸载了重新安装激活吧