找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

MSP430单片机按键扫描程序不能工作

查看数: 2877 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-12-12 21:44

正文摘要:

仅按键部分代码: unsigned char ReadKey(void)   {      unsigned char temp;      temp=P5IN&0xEF;      if(temp!=0xEF) ...

回复

ID:434526 发表于 2018-12-13 13:34
wulin 发表于 2018-12-13 06:07
unsigned char ReadKey(void)
{
        unsigned char temp;

先谢谢你的回答哈,不过你的也是跟我的一样,就是把你的这个代码改为(P5IN&0X07)就可以用,但是弄成(P5IN&0XEF)就扫描不了了emmmmm,不知道为啥,我的那个代码也是,弄成三个按键就可以用,但是改为七个按键就不行了
ID:434526 发表于 2018-12-13 13:27

emmmm,可是这个按键扫描弄成三个就可以用(P5IN&0X07),但是弄成七个就不行了(P5IN&0XEF),我也不知道为啥,把三个改成七个是我自己改的,然后改成七个后,示波器就没有反映了,连前三个按键也没反应了
ID:434526 发表于 2018-12-13 13:24
hozhiwen 发表于 2018-12-12 23:43
是不是多了个else    return 0xFF;??????

没有多,这个如果只有三个io口,就是P5IN&0x07就可以用,但是把0x07改为0xEF就用不了了,不知道为啥,三个按键的就可以,一加到七个就不行了,不知道是哪里错了,难受
ID:213173 发表于 2018-12-13 06:07
unsigned char ReadKey(void)
{
        unsigned char temp;
        temp=P5IN&0xEF;
        if(temp!=0xEF)
        {
                delayus(10);
                if(temp!=0xEF)
                        return temp;
                else
                return 0xFF;
        }
        return 0xFF;
}
ID:104779 发表于 2018-12-12 23:44
是不是多了一个else
   return 0xFF;????
ID:104779 发表于 2018-12-12 23:43
是不是多了个else    return 0xFF;??????
ID:393605 发表于 2018-12-12 22:26
要进行按键消抖动

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表