找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2787|回復(fù): 7
打印 上一主題 下一主題
收起左側(cè)

MSP430單片機按鍵掃描程序不能工作

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:434526 發(fā)表于 2018-12-12 21:44 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式

僅按鍵部分代碼:
unsigned char ReadKey(void)
  {
     unsigned char temp;
     temp=P5IN&0xEF;
     if(temp!=0xEF)
{
    delayus(10);
    if(temp==(P5IN&0xEF))
       {
   return temp;
       }
       else
       return 0xFF;
   }
   else
   return 0xFF;
}


為什么這個代碼不能對七個按鍵進行掃描呢,求大神解答

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:393605 發(fā)表于 2018-12-12 22:26 | 只看該作者
要進行按鍵消抖動
回復(fù)

使用道具 舉報

板凳
ID:104779 發(fā)表于 2018-12-12 23:43 | 只看該作者
是不是多了個else    return 0xFF;??????
回復(fù)

使用道具 舉報

地板
ID:104779 發(fā)表于 2018-12-12 23:44 | 只看該作者
是不是多了一個else
   return 0xFF;????
回復(fù)

使用道具 舉報

5#
ID:213173 發(fā)表于 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;
}
回復(fù)

使用道具 舉報

6#
ID:434526 發(fā)表于 2018-12-13 13:24 | 只看該作者
hozhiwen 發(fā)表于 2018-12-12 23:43
是不是多了個else    return 0xFF;??????

沒有多,這個如果只有三個io口,就是P5IN&0x07就可以用,但是把0x07改為0xEF就用不了了,不知道為啥,三個按鍵的就可以,一加到七個就不行了,不知道是哪里錯了,難受
回復(fù)

使用道具 舉報

7#
ID:434526 發(fā)表于 2018-12-13 13:27 | 只看該作者

emmmm,可是這個按鍵掃描弄成三個就可以用(P5IN&0X07),但是弄成七個就不行了(P5IN&0XEF),我也不知道為啥,把三個改成七個是我自己改的,然后改成七個后,示波器就沒有反映了,連前三個按鍵也沒反應(yīng)了
回復(fù)

使用道具 舉報

8#
ID:434526 發(fā)表于 2018-12-13 13:34 | 只看該作者
wulin 發(fā)表于 2018-12-13 06:07
unsigned char ReadKey(void)
{
        unsigned char temp;

先謝謝你的回答哈,不過你的也是跟我的一樣,就是把你的這個代碼改為(P5IN&0X07)就可以用,但是弄成(P5IN&0XEF)就掃描不了了emmmmm,不知道為啥,我的那個代碼也是,弄成三個按鍵就可以用,但是改為七個按鍵就不行了
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表