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

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 4*4矩陣鍵盤(pán)模塊程序的調(diào)用

            4*4矩陣鍵盤(pán)模塊程序的調(diào)用

            作者: 時(shí)間:2016-11-18 來(lái)源:網(wǎng)絡(luò) 收藏
            產(chǎn)生.lib文件的方法:選擇“工程”——“目標(biāo)target屬性”——“輸出”——產(chǎn)生庫(kù)文件*.lib,修改完后,編譯一下程序,無(wú)措后,就在工程目錄下產(chǎn)生一個(gè).lib文件,到時(shí)要用到這個(gè)模塊程序時(shí),直接把.c和.lib文件拷貝到所在的目錄下,再把.c的文件加載到工程文件里就OK了。

            /*
            ***************************************************************************************
            摘 要: 4*4小鍵盤(pán)模塊程序,供以后其他程序調(diào)用.其中P2口高四位接鍵盤(pán)列,P2口低四位接鍵盤(pán)行,
            版 本: V1.0
            完成日期: 2008.4.28
            作 者: ZHOUSFE
            ***************************************************************************************
            修改日期: 2008.5.6
            版 本: V1.2
            ****************************************************************************************
            */

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

            #i nclude
            #define uchar unsigned char
            #define keyport P2
            //uchar code seg[16]=

            {0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0X88,0X83,0XC6,0XA1,0X86,0X8E}; //0~f,

            共陽(yáng)極
            uchar code keycode[16]=

            {0xEE,0XDE,0XBE,0X7E,0XED,0XDD,0XBD,0X7D,0XEB,0XDB,0XBB,0X7B,0XE7,0XD7,0XB7,0X77};//待查詢(xún)的

            鍵碼值

            /*
            *******************************************************************************************
            函數(shù)名稱(chēng):delay()
            功能描述:延時(shí)ms個(gè)微妙
            入口參數(shù):unsigned int ms
            出口參數(shù):無(wú)
            *******************************************************************************************
            */

            void delay(unsigned int ms)
            {
            unsigned char a;
            while(!ms--)
            for(a=0;a<124;a++);
            }

            /*
            *******************************************************************************************
            函數(shù)名稱(chēng):keyscan()
            功能描述:鍵盤(pán)掃描程序,利用行掃描方式,得到鍵值
            入口參數(shù):無(wú)
            出口參數(shù):掃描得到的鍵值~((~sm)+(~fh))
            *******************************************************************************************
            */

            uchar keyscan(void)
            {
            uchar sm; //存放行掃描代碼,該函數(shù)的返回值的低四位
            uchar fh; //該函數(shù)的返回值的高四位
            keyport=0xf0;
            if((keyport&0xf0)!=0xf0) //判斷是否有按鍵按下
            {
            delay(2); //去抖動(dòng)延時(shí)(1~10ms)
            if((keyport&0xf0)!=0xf0)
            {
            sm=0xfe; //行掃描初值
            while((sm&0x10)!=0)
            {
            keyport=sm;
            if((keyport&0xf0)!=0xf0) //若本行有鍵按下,則執(zhí)行讀取鍵值信息
            {
            fh=(keyport&0xf0)|0x0f;
            return(~((~sm)+(~fh))); //返回掃描的鍵值
            }
            else sm=(sm<<1)|0x01; //若本行沒(méi)有鍵按下,則掃描下一行
            }
            }
            }
            return 0xff; //若沒(méi)有按鍵按下,則返回0xff
            }

            /*
            *******************************************************************************************
            函數(shù)名稱(chēng):getkey()
            功能描述:將掃描得到的鍵值轉(zhuǎn)化為對(duì)應(yīng)的0~f
            入口參數(shù):無(wú)
            出口參數(shù):顯示的數(shù)字0~f
            *******************************************************************************************
            */

            uchar getkey()
            {
            uchar key;
            uchar temp;
            uchar j;
            while(1)
            {
            key=keyscan();
            delay(2);
            for(j=0;j<16;j++)
            {
            if(key==keycode[j]) //通過(guò)查詢(xún)方式,得到按下的按鍵值
            {
            temp=j; //按鍵值先保存于temp中
            if(key==0xff) //若沒(méi)有按下下一個(gè)鍵,則一直顯示上一個(gè)鍵值
            {
            return temp;
            }
            else
            {
            return j;
            temp=j; //更新temp里的值
            }
            }
            }
            }
            }
            /*
            *******************************************************************************************
            測(cè)試用函數(shù)
            *******************************************************************************************
            */
            /*void main(void)
            {
            uchar ch;
            P3&=0xfe;
            while(1)
            {
            ch=getkey();
            P0=~seg[ch]; //P0口接數(shù)碼管
            }
            }*/



            關(guān)鍵詞: 4*4矩陣鍵盤(pán)模塊程

            評(píng)論


            相關(guān)推薦

            技術(shù)專(zhuān)區(qū)

            關(guān)閉