CH452程序,但是读取的键盘值都是0

[复制链接]
 楼主| bylxy000 发表于 2013-9-5 09:36 | 显示全部楼层 |阅读模式
2线 CH452 驱动3*4键盘,送数码管显示的程序,为什么读取按键值一直都是0呢
#define CH452_GET_KEY  0x07FF
sbit CH452_CLK  =P2^5;
sbit CH452_DIN  =P2^6;
sbit CH452_LOAD =P2^7;

void CH452_Write(uint cmd)
{
uchar i;
CH452_LOAD=0;            
for(i=0;i<12;i++)   
{
    CH452_DIN=cmd&0x0001;  
CH452_CLK=0;
cmd>>=1;
CH452_CLK=1;
}
CH452_LOAD=1;        
DELAY_6US();
}

uchar CH452_ReadKey(void)
{
unsigned char i;//,Key_Num=0 ;
CH452_Write(CH452_GET_KEY);
for(i=0;i<7;i++)
{
CH452_CLK=1;
Key_Num<<=1;
if(CH452_DIN) Key_Num++;
CH452_CLK=0;
}
return Key_Num;
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

83

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部