2024年3月14日发(作者:)
KeilC中的一些ERROR和
Keil C 中的一些ERROR和WARNING
/doc/,B100.C(12):
下:
#include
#include
void delay(int);
unsigned
{int i,j;
P2=0xff;
while(1)
{P2=0x7f;
for(i=0;i<8;i++)
{P0=dis_code[i];
P2=_crol_[j,1];
j=P2;
delay(1);
}
}
}
void delay(int x)
{int i;
for(i=0;i
}
问题在于P2=_crol_[j,1];
应该改为P2=_crol_(j,1);
2.从网上COPY的程序执行类似的功能,有时候如果现象没出现,
char code
dis_code[8]={0x28,0x7e,0xa2,0x62,0x74,0x61,0x21,0x7a}; main()
error
C216: subscript on non-array or too many dimensions 原程序如
或者不明显,可以调整下延迟函数。
3.数码管的扫描显示0—7,延迟函数的延迟时间在1ms左右,是
通过人眼的视觉暂留而产生的现象,
如果延迟函数设臵的太大,则看不到持续显示0—7的现象。
4.用KEILC51调试程序时,出现错误提示为?unprintable
character 0XA1 skipped?用KEILC51调试程序时,出现错误提示
为?unprintable character 0XA1 skipped?的问题。
输入法的问题。在程序行输入中文模式下标点符号,不会显示,
但是会出现标题这样的问题。
打上//马上就能看到没有显示的标点符号
5.*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR
OVERLAY PROCESS
SEGMENT: ?PR?_COMPARE?TESTLCD
说明:程序中有些函数(或片段)以前(调试过程中)从未被调
用过,或者根本没有调用它的语句。
这条警告信息前应该还有一条信息指示出是哪个函数导致了这一
问题。只要做点简单的调整就可以。
不理它也没什么大不了的。解决方法:去掉COMPARE()函数或利
用条件编译#if …..#endif,可保留该函数并不编译。
/doc/,B99.C(19):
C141: syntax error near '{', expected 'const'
程序如下:
#include
#include
sbit LEDP=P1^0;
unsigned char counter;
main()
{TMOD=0x01;
TH0=0x3C;
TL0=0xB0;
error


发布评论