機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
以PLD器件來實(shí)現(xiàn)自動(dòng)掃描去抖的編碼鍵盤設(shè)計(jì)
以PLD器件來實(shí)現(xiàn)自動(dòng)掃描去抖的編碼鍵盤設(shè)計(jì)
 更新時(shí)間:2008-8-3 15:54:06  點(diǎn)擊數(shù):9
【字體: 字體顏色


    摘要:GAL6002是Lattice公司研制的電可擦除且可重復(fù)編程的高性能PLD器件,文中介紹了以PLD器件GAL6002實(shí)現(xiàn)4×4自動(dòng)掃描去抖的編碼鍵盤電路,給出了該電路的原理及其與MCS-51單片機(jī)的接口方法,同時(shí)給出了KEY44.ABL文件的程序清單。

關(guān)鍵詞:GAL6002;自動(dòng)掃描去抖;編碼鍵盤

        鍵盤在單片機(jī)控制系統(tǒng)中是最常用的輸入設(shè)備之一。雖然非編碼鍵盤的硬件電路較為簡(jiǎn)單,但按鍵的識(shí)別及鍵值的計(jì)算則需軟件來完成,因此需要耗費(fèi)寶貴的機(jī)時(shí);而編碼鍵盤雖然程序簡(jiǎn)單且易于使用,但硬件比較復(fù)雜。因此,設(shè)計(jì)人員常常難以決定采用哪一類鍵盤。本文以GAL6002為例,介紹了一種用PLD器件來實(shí)現(xiàn)4×4鍵盤自動(dòng)掃描去抖的編碼鍵盤電路及其設(shè)計(jì)方法。

        1  GAL6002芯片簡(jiǎn)介

        GAL6002是Lattice公司研制的電可擦除、可重復(fù)編程的高性能PLD器件,圖1所示是其引腳排列。GAL6002具有78×64×36 FPLA結(jié)構(gòu),可提供78×64的可編程與陣列和64×36的可編程或陣列。它具有10個(gè)輸出宏單元、8個(gè)隱埋宏單元及20個(gè)輸入和I/O宏單元。它的兩個(gè)獨(dú)立輸入時(shí)鐘可分別用于輸入和輸出宏單元的控制。其輸出宏單元和隱埋宏單元的寄存器共用一個(gè)高有效復(fù)位乘積項(xiàng)。每個(gè)寄存器復(fù)位為“0”。輸出宏單元和輸出腳之間均有一個(gè)反相緩沖器,每個(gè)輸出緩沖器的使能可由單獨(dú)的乘積項(xiàng)來控制。

        2  設(shè)計(jì)原理

        直接訪問方式下的接口電路如圖2所示。以下分別從去抖電路、自動(dòng)掃描電路和接口電路三方面來描述該自動(dòng)掃描去抖編碼鍵盤電路的設(shè)計(jì)原理。

        2.1去抖電路

        去抖電路用來執(zhí)行兩個(gè)功能:其一是當(dāng)按鍵按下時(shí)產(chǎn)生一個(gè)“凍結(jié)”信號(hào)FREZ,以用來停止并“凍結(jié)”掃描狀態(tài)機(jī)直到按鍵被釋放。它的ABEL方程為:

        FREZ:=!(COL3&COL2&COL1&COL0);

        其二是當(dāng)輸出保持低電平達(dá)兩個(gè)(或更多)相鄰時(shí)鐘周期時(shí)產(chǎn)生一個(gè)中斷INT。其ABEL方程為:

        INT:=FREZ&!(COL3&COL2&COL1&COL0);

        2.2  自動(dòng)掃描電路

        自動(dòng)掃描電路的軟件定義如下:

        R OWREG=[ROW3,ROW2,ROW1,ROW0];


  
        掃描狀態(tài)機(jī)在輸入時(shí)鐘的上升沿依次向鍵盤行線發(fā)送“0”電平以掃描鍵盤,如果FREZ信號(hào)被使能,則“凍結(jié)”狀態(tài)機(jī)。該操作在ABEL文件中的狀態(tài)圖描述如下:

        2.3  接口電路

        在該電路的ABEL文件中,可由真值表界定按鍵的行列位置與輸出值D3~D0的對(duì)應(yīng)關(guān)系,其中數(shù)值1~16分別對(duì)應(yīng)于16個(gè)按鍵,即編碼鍵盤的鍵值。從Lattice公司的工具軟件ispDesignEXPERT8.2對(duì)ABEL文件的編譯結(jié)果來看,當(dāng)有多鍵同時(shí)按下時(shí),D3~D0的輸出亦為“0”,因此在51匯編程序中應(yīng)對(duì)“0”號(hào)鍵進(jìn)行適當(dāng)取舍。

        通過輸出緩沖器可使輸出管腳設(shè)置成高阻態(tài),因此輸出管腳可以直接和單片機(jī)的數(shù)據(jù)總線連接。本設(shè)計(jì)中,D3~D0輸出緩沖器由CS和RD兩個(gè)信號(hào)控制。其ABEL方程為:

  • 上一篇: 采用PIC單片機(jī)控制的電話小總機(jī)
  • 下一篇: 基于DSP CCS 2.2實(shí)現(xiàn)指紋識(shí)別預(yù)處理系統(tǒng)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1