新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 矩陣鍵盤實(shí)驗(yàn)程序

        矩陣鍵盤實(shí)驗(yàn)程序

        作者: 時間:2016-12-02 來源:網(wǎng)絡(luò) 收藏
        void DigDisplay()
        {
        unsigned char i;
        unsigned int j;

        wei = wei1[i]; //發(fā)送位選
        duan = duan1[ge]; //發(fā)送段碼
        j = 10; //掃描間隔時間設(shè)定
        while(j--);
        duan = 0x00; //消隱
        }

        void s(unsigned char xms)
        {
        unsigned char x,y;
        for(x=xms;x>0;x--)
        for(y=110;y>0;y--);
        }

        void keys()
        {
        P1=0x7f;
        temp=P1;
        if(temp!=0x7f)
        {
        s(5);
        temp=P1;
        if(temp!=0x7f)
        {
        temp=temp&0x0f;
        switch(temp)
        {
        case 0x07:ge=0;break;
        case 0x0b:ge=1;break;
        case 0x0d:ge=2;break;
        case 0x0e:ge=3;break;
        }
        while(temp!=0x0f)
        {
        temp=P1;
        temp=temp&0x0f;
        DigDisplay();
        }
        }
        }

        P1=0xbf;
        temp=P1;
        if(temp!=0xbf)
        {
        s(5);
        temp=P1;
        if(temp!=0xbf)
        {
        temp=temp&0x0f;
        switch(temp)
        {
        case 0x07:ge=4;break;
        case 0x0b:ge=5;break;
        case 0x0d:ge=6;break;
        case 0x0e:ge=7;break;
        }
        while(temp!=0x0f)
        {
        temp=P1;
        temp=temp&0x0f;
        DigDisplay();
        }
        }
        }

        P1=0xdf;
        temp=P1;
        if(temp!=0xdf)
        {
        s(5);
        temp=P1;
        if(temp!=0xdf)
        {
        temp=temp&0x0f;
        switch(temp)
        {
        case 0x07:ge=8;break;
        case 0x0b:ge=9;break;
        case 0x0d:ge=10;break;
        case 0x0e:ge=11;break;
        }
        while(temp!=0x0f)
        {
        temp=P1;
        temp=temp&0x0f;
        DigDisplay();
        }
        }
        }

        P1=0xef;
        temp=P1;
        if(temp!=0xef)
        {
        s(5);
        temp=P1;
        if(temp!=0xef)
        {
        temp=temp&0x0f;
        switch(temp)
        {
        case 0x07:ge=12;break;
        case 0x0b:ge=13;break;
        case 0x0d:ge=14;break;
        case 0x0e:ge=15;break;
        }
        while(temp!=0x0f)
        {
        temp=P1;
        temp=temp&0x0f;
        DigDisplay();
        }
        }
        }
        }
        上一頁 1 2 下一頁

        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 荆州市| 岫岩| 平遥县| 屏东市| 南岸区| 旬邑县| 湘潭市| 宁晋县| 仙桃市| 阿克| 大庆市| 栖霞市| 通江县| 汝南县| 道孚县| 攀枝花市| 岑巩县| 呈贡县| 嘉禾县| 莆田市| 赣榆县| 阿坝| 梁河县| 临泉县| 扎鲁特旗| 松溪县| 西贡区| 溆浦县| 承德县| 新安县| 大厂| 松原市| 冷水江市| 澳门| 聊城市| 凌海市| 修水县| 佛山市| 从化市| 甘洛县| 贞丰县|