欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1992|回復: 1
收起左側

單片機矩陣數碼管顯示固定數值和對應鍵值

[復制鏈接]
ID:351822 發表于 2018-9-21 15:17 | 顯示全部樓層 |閱讀模式
#include<AT89X52.H>                  //包含AT89X52.H頭文件          /*定義0~9,A~F十六個字符的字型碼表*/
unsigned char table[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,
                                           0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};

void delay10ms(void)
{
        unsigned char i,j;
        for(i=20;i>0;i--)
                for(j=248;j>0;j--);
}

void delay()
{
        unsigned char i;
        for(i=0;i<255;i++);
}


unsigned char scan_key(void)
{
        unsigned char scan,col,rol,tmp;
        bit flag=0;
        scan=0xef;
        for(col=0;col<4;col++)
        {
                P0=scan;
                tmp=P0;
                switch(tmp&0x0f)
                {
                        case 0x0e:rol=0;flag=1;break;
                        case 0x0d:rol=1;flag=1;break;
                        case 0x0b:rol=2;flag=1;break;
                        case 0x07:rol=3;flag=1;break;
                }
                if(flag==1)
                break;
                scan=(scan<<1)+1;
        }
        while(tmp!=0x0f)
        {
                P0=0x0f;
                tmp=P0;
        }
        return(rol*4+col);
}


void scan()
{
        unsigned char tmp,key;
        while(tmp!=0x0f)
        {
               
       
                P1=table[0];
                P2=0xfe;
                delay();
                P2=0xff;
                P1=table[6];
                P2=0xfd;
                delay();
                P2=0xff;
               
        }       
}

void main()
{
        unsigned char tmp,key;
        P0=0x0f;
        while(1)
        {
                while(tmp==0x0f)
                {
                        P0=0x0f;
                        tmp=P0;
                }
                delay10ms();
            P0=0x0f;
                tmp=P0;
                if(tmp==0x0f)
                continue;
                key=scan_key();
                P1=table[key];
                P2=0xf7;
                delay();
                scan();                 
        }

}

回復

使用道具 舉報

ID:1 發表于 2018-9-21 17:25 | 顯示全部樓層
補全原理圖或者詳細說明一下電路連接即可獲得100+黑幣
回復

使用道具 舉報

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

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表