在一个循环的程序中
void main(void)
{
int t;
uint ch[8] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
Init_CLK();
Init_Port();
P5OUT=0X00;
P5DIR=0XFF;
while(1)
{
t=KeyScan();
P5OUT=ch[t];
}
}当P5OUT赋值之后,再循环到KeyScan程序中,KeyScan中没有任何对P5进行操作的,但是P5的值却变成了0,这是为什么啊????
我觉得吧,很那看出破绽!
似乎是P5OUT=0X00; 这句有问题吧,应该是P5OUT|=0x00;
P5OUT=ch[t]; 也应该是P5OUT|=ch[t]l;
试试吧!
不对的话,再问别人吧!