音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

[轉(zhuǎn)帖]4×4矩陣式鍵盤識別技術(shù)(桂林電子工業(yè)學(xué)院)

作者:timetime 欄目:單片機(jī)

如圖4.14.2所示,用AT89S51的并行口P1接4×4矩陣鍵盤,以P1.0-P1.3作輸入線,以P1.4-P1.7作輸出線;在數(shù)碼管上顯示每個按鍵的“0-F”序號。對應(yīng)的按鍵的序號排列如圖4.14.1所示

4.14.1

2. 硬件電路原理圖

4.14.2

3. 系統(tǒng)板上硬件連線

(1.       把“單片機(jī)系統(tǒng)“區(qū)域中的P3.0P3.7端口用8芯排線連接到“4X4行列式鍵盤”區(qū)域中的C1C4 R1R4端口上;

(2.       把“單片機(jī)系統(tǒng)”區(qū)域中的P0.0/AD0P0.7/AD7端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任一個ah端口上;要求:P0.0/AD0對應(yīng)著a,P0.1/AD1對應(yīng)著b,……,P0.7/AD7對應(yīng)著h

4.  程序設(shè)計內(nèi)容

(1.       4×4矩陣鍵盤識別處理

(2.       每個按鍵有它的行值和列值 ,行值和列值的組合就是識別這個按鍵的編碼。矩陣的行線和列線分別通過兩并行接口和CPU通信。每個按鍵的狀態(tài)同樣需變成數(shù)字量“0”和“1”,開關(guān)的一端(列線)通過電阻接VCC,而接地是通過程序輸出數(shù)字“0”實(shí)現(xiàn)的。鍵盤處理程序的任務(wù)是:確定有無鍵按下,判斷哪一個鍵按下,鍵的功能是什么;還要消除按鍵在閉合或斷開時的抖動。兩個并行口中,一個輸出掃描碼,使按鍵逐行動態(tài)接地,另一個并行口輸入按鍵狀態(tài),由行掃描值和回饋信號共同形成鍵編碼而識別按鍵,通過軟件查表,查出該鍵的功能。

5. 程序框圖

6. 匯編源程序

KEYBUF    EQU 30H

            ORG 00H

START:      MOV KEYBUF,#2

WAIT:  

            MOV P3,#0FFH

            CLR P3.4

            MOV A,P3

            ANL A,#0FH  

2樓: >>參與討論
timetime
C語言源程序

#include <AT89X51.H>

unsigned CHAR code table[]={0x3f,0x06,0x5b,0x4f,

                            0x66,0x6d,0x7d,0x07,

                            0x7f,0x6f,0x77,0x7c,

                            0x39,0x5e,0x79,0x71};

unsigned CHAR TEMP;

unsigned CHAR key;

unsigned CHAR i,j;

void main(void)

{

  while(1)

    {

      P3=0xff;

      P3_4=0;

      TEMP=P3;

      TEMP=TEMP & 0x0f;

      if (TEMP!=0x0f)

        {

          for(i=50;i>0;i--)

          for(j=200;j>0;j--);

          TEMP=P3;

          TEMP=TEMP & 0x0f;

          if (TEMP!=0x0f)

            {

              TEMP=P3;

              TEMP=TEMP & 0x0f;              

              SWITCH(TEMP)

                {

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
[討論]關(guān)于AT89C2051正常工作的濕度范圍,高手請進(jìn)!
使用x24c45的一點(diǎn)心得
緊急求助。
[討論]那位高人用過89c51制作搶答器   幫幫忙啊
[求助]哪位高手幫幫我啊!~~~~~~~~~
免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號