请高手指点一下,我在数字调频收音机的时候,用upD16311驱动VDF屏的时候,UPD16311芯片本身可以扫描48个按键,但是我怎么也没想明白,它读回来只是一个字节的数据怎么能扫描48个按键:[img]file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/0[OW0O$1[IOPOFCE}8)E6J2.jpg[/img]
这是芯片按键说明部分,在有六个按键接在Seg1/ks1 Seg2/ks2能扫描到,接在别的就扫描不到了,我想应该是我没看明白这个顺序,希望高手指点:下面是我的函数
/*读键子程序*/
uchar ReadKey(void)
{
uchar i,val;
STB=1;
STB=0;
w8bit_VFD(rdkey);
//delay(4);
DO=1;
for (i=0;i<8;i++)
{
CLK=1;
delay(1);
CLK=0;
if(DO)
val|=0x80;
if(i<7)
val>>=1;
CLK=1;
delay(1);
}
STB=1;
return val;
} |