标题: TM1637搭建4个按键,发现按键控制不了是怎么回事? [打印本页]

作者: 远小刘    时间: 2021-9-11 23:42
标题: TM1637搭建4个按键,发现按键控制不了是怎么回事?
电路原理图如下:

char Keysacn()        //键盘扫描函数
{
        static char n,key_value = 0;
        IIC_start();
        IIC_Write_cmd(0x42);//读按键命令
        IIC_ack();//CLK = 1;
        SDA=1;        //设置为输入// 在读按键前拉高数据线--在无按键按下时,读键数据为1111_1111
        for(n=0;n<8;n++)//从低位开始读-低位在前,高位在后
        {
               
                CLK = 0;
//                key_value = key_value>>1;//先读低位
                delay_6us();
            key_value>>=1;
                CLK = 1;
                if(SDA)
                {
                        key_value = key_value|0x80;        
                }
                else
                {
                        key_value = key_value|0x00;
                }
                delay_6us();
                delay_6us();
                delay_6us();
        }

        IIC_ack();
        IIC_stop();
        return (key_value);
}


作者: 47okey    时间: 2021-9-20 15:02
关注!我用实物,数码管显示正常了,但读不了按键,按下按键 还是FF,不知哪里问题。网上很难找到1637按键部分的资料
作者: 远小刘    时间: 2021-9-21 17:27
47okey 发表于 2021-9-20 15:02
关注!我用实物,数码管显示正常了,但读不了按键,按下按键 还是FF,不知哪里问题。网上很难找到1637按键 ...

未能解决,使用此处的按键功能目的是为了减少单片机IO资源的使用,因此,按键方面的话,我使用了一个ADC通道,接入了4个按键,判断电压值,执行相应的功能。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1