|
在這個(gè)程序中如果不對(duì)p3.0和p3.6定義,而直接使用的話 為什么系統(tǒng)會(huì)出現(xiàn)報(bào)錯(cuò)snytax error near "="?
很明顯的額,定義和不定義使用的都是同一個(gè)端口,但為什么會(huì)出現(xiàn)不一樣的結(jié)果?謝謝各位的解答,我只是個(gè)單片機(jī)新人,剛開(kāi)始學(xué)編程。
單片機(jī)源程序如下:
#include <reg51.h>
# define uchar unsigned char
# define uint unsigned int
sbit button=P3^0;
sbit led=P3^6;
uchar code table[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void main()
{
EA=1;
IT0=1;
P0=0x00;
P1=0xff;
button=1;
led=0;
while(1)
{
if(P3^0==0)
{
led =1;
P0=0x00;
P2=0xff;
P1=0xff;
EX0=0;
}
}
}
void int_0() interrupt 0
{
EX0=0;
switch(P2)
{
case 0xfe: P0=table[1];P1=0xfe;
case 0xfd: P0=table[2];P1=0xfd;
case 0xfb: P0=table[3];P1=0xfb;
}
led=1;
button=1;
P2=0xff;
}
|
|