PICC 莫名的变量消失..

2020-02-10 08:33发布

我是个PIC初学者,今天写了个简单的程序,建了3个变量,但观察变量,发现并没有建立,如下程序
#include <pic.h>
#define uchar unsigned char                                               

__CONFIG (HS & PROTECT & PWRTEN & BOREN & WDTDIS);

void main(void)
{
    uchar i=1,j=2,k=3;
    i++;
    j++;
    k++;
    while(1);
}
并且在单步仿真的时候,指针是直接到while(1);的,为何?
但如果我把k++;改为k=i+j;,那么i和j就能建立了。
还有,首次编译的时候,会出现Warning [111] F:PICCPRO9.65includepic.h; 286.20 redefining preprocessor macro "EEADRL",这是什么?
请各位指点一下。谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
9条回答
yiminglei
2020-02-11 08:56
感谢楼上各位帮助和建议!
我也上个图,有图有真相。

PICC (原文件名:PICC.jpg)
1,莫名的警告(如果再按一次编译就没有了)
2,运行已经到最后了
3,4,变量没有生成(加上volatile了话,就能生成了)


PICC2 (原文件名:PICC2.jpg)
当加了volatile之后就能生成了。

关于EEADRL,百度了一下,应该是个寄存器,我现在手头上没有书,我有空找本书看看,而后面的问题就真的很莫名,我的MPLAB是8.4版,PICC是9.65版,不知道是否版本更新后有的新功能。

一周热门 更多>