在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<s id="cmphk"><label id="cmphk"></label></s>
    <span id="cmphk"><var id="cmphk"></var></span>
    <dfn id="cmphk"><var id="cmphk"></var></dfn>
    <menu id="cmphk"><thead id="cmphk"></thead></menu>

    <address id="cmphk"></address>

      <dfn id="cmphk"></dfn>
      
      
      <span id="cmphk"></span>

      <object id="cmphk"><tt id="cmphk"></tt></object>
      1. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > AT89S52鍵盤程序

        AT89S52鍵盤程序

        作者: 時間:2016-11-13 來源:網絡 收藏
        //返回鍵值

        /********************************************************************/

        本文引用地址:http://www.biyoush.com/article/201611/316304.htm

        //鍵盤掃描子程序 獲取鍵值函數(shù)

        /****************************************************************************/

        uchar keyscan(void)

        { uchar temp;

        P0=0xfe; //第一行置低

        temp=P0;

        temp&=0xf0;

        if(temp!=0xf0)

        {

        delay_nms(10);

        if(temp!=0xf0)

        {

        switch(temp) //根據列線獲取第一行的鍵值

        {

        case 0xe0: key=3; break;

        case 0xd0: key=2; break;

        case 0xb0: key=1; break;

        case 0x70: key=0; break;

        }

        }

        }

        P0=0xfd; //掃描第二行,置低

        temp=P0;

        temp&=0xf0;

        if(temp!=0xf0)

        {

        delay_nms(10);

        if(temp!=0xf0)

        {

        switch(temp)

        {

        case 0xe0: key=7; break;

        case 0xd0: key=6; break;

        case 0xb0: key=5; break;

        case 0x70: key=4; break;

        }

        }

        }

        P0=0xfb; //掃描第三行,置低

        temp=P0;

        temp&=0xf0;

        if(temp!=0xf0)

        {

        delay_nms(10);

        if(temp!=0xf0)

        {

        switch(temp)

        {

        case 0xe0: key=11; break;

        case 0xd0: key=10; break;

        case 0xb0: key=9; break;

        case 0x70: key=8; break;

        }

        }

        }

        P0=0xf7; //掃描第四行,置低

        temp=P0;

        temp&=0xf0;

        if(temp!=0xf0)

        {

        delay_nms(10);

        if(temp!=0xf0)

        {

        switch(temp)

        {

        case 0xe0: key=15; break;

        case 0xd0: key=14; break;

        case 0xb0: key=13; break;

        case 0x70: key=12; break;

        }

        }

        }

        else

        {

        ;

        }

        return(key);

        }



        關鍵詞: AT89S52鍵盤程

        評論


        技術專區(qū)

        關閉