unsigned int KeyBoard()
{
unsigned int j;
DDRD=0x0f;
PORTD=0x0f;
DDRD=0xF0;
j=PIND;
j&=0x0F;
return j;
}
以上程序可以正常运行。
下面这个就不能正常运行了,为什么呢?DDRD设置为输入,然后读取PIND,不就能得到外部引脚的电平吗?为什么得不到呢?
unsigned int KeyBoard()
{
unsigned int j;
//DDRD=0x0f;
//PORTD=0x0f;
DDRD=0xF0;
j=PIND;
j&=0x0F;
return j;
} |