68精品久久久久久欧美,最近中文字幕完整在线看一,久久亚洲男人天堂,最近中文字幕完整视频高清1

你好!歡迎來到深圳市穎特新科技有限公司!
語(yǔ)言
當(dāng)前位置:首頁(yè) >> 技術(shù)中心 >> 單片機(jī)入門 >> 8051單片機(jī)串行口擴(kuò)展矩陣鍵盤接口與應(yīng)用

8051單片機(jī)串行口擴(kuò)展矩陣鍵盤接口與應(yīng)用

作者:admin 來源:不詳 發(fā)布時(shí)間:2018-05-08  瀏覽:15
 由于8051的串行口在方式0工作狀態(tài)下,可以方便地通過移位寄存器74LS164擴(kuò)展并行輸出口。因此,可以將這些并行口線作為列線,與P3口的行線構(gòu)成行列式鍵盤。每占用一條P3口線可增加8個(gè)按鍵,用戶根據(jù)需要可增減。
     在8051的串行口方式0工作狀態(tài)下,結(jié)合P3.4和P3.5實(shí)現(xiàn)2*8鍵盤。如圖所示。

 C51軟件設(shè)計(jì):
     #include<stdio.h> //預(yù)處理
     #include<reg51.h>
     #include<intrins.h>
     unsigned char getkey(void); //鍵盤掃描函數(shù)
     void proc1(void); //定義按鍵處理程序1
    void proc2(void); //定義按鍵處理程序2
    void proc3(void); //定義按鍵處理程序3
    void proc4(void); //定義按鍵處理程序4
    ……
    bit0=P3.4;
    bit1=P3.5;
    void delay(void); //定義延時(shí)函數(shù)
    void main(void) //主函數(shù)
    {
    unsigned char idata key;
    SCON=0x00; //串口初始化
    ES=0;
    EA=0; //關(guān)閉中斷
    while(1)
    {
    key=getkey();
    if(key!=0xff)
    switch (key)
    {
    case 0x00:
    proc0();
    braek;
    case 0x01:
    proc1();
    braek;
    case 0x02:
    proc2();
    braek;
    case 0x03:
    proc3();
    braek;
    ……
    ……
    ……
    default:
    break;
    }
    }
    }
    unsigned char getkey(void) //鍵盤掃描函數(shù)
    {
    unsigned char idata key_code,col=0; mask=0x00;
    TI=0;
    SBUF=mask;
    while(TI==0);
    if((bit0&bit1)!= 0)
    return(0xff);
    delay();
    if((bit0&bit1)!= 0)
    return(0xff);
    mask=0xfe;
    while(col!=8)
    {
    TI=0;
    SBUF=mask;
    while(TI==0);
    if((bit0&bit1)!= 0)
    {
    mask=mask<<1;
    mask=mask|0x01;
    col=col+1;
    continue;
    }
    else break;
    }
    if(col==8)
    return(0xff);
    if(bit0==1) key_code=col;
    else key_code=8+col;
    while(bit0&bit1==0);
    return(key_code);
    }
    void delay(void) /*延時(shí)10毫秒*/
    {
    unsigned int i=10;
    while(i--);
    }

編輯:admin  最后修改時(shí)間:2018-05-08

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4

忻城县| 五河县| 巴林左旗| 遵义县| 漠河县| 东至县| 蓬莱市| 泰安市| 敖汉旗| 抚顺市| 新源县| 桐梓县| 桐柏县| 宝清县| 建水县| 南阳市| 庆阳市| 泰来县| 华坪县| 阜平县| 雷波县| 竹北市| 什邡市| 中西区| 淮北市| 沂水县| 祁阳县| 醴陵市| 咸丰县| 普兰县| 南投市| 蓝田县| 榕江县| 吉隆县| 永善县| 周口市| 安新县| 大埔县| 和顺县| 称多县| 宜宾县|