《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 專用鍵盤接口芯片的一種CPLD實現方案

專用鍵盤接口芯片的一種CPLD實現方案

2008-11-03
作者:張永強 鄧少芝 王 凱 許寧生

??? 摘? 要: 對用于單片機的鍵盤子系統" title="鍵盤子系統">鍵盤子系統的專用鍵盤接口芯片" title="接口芯片">接口芯片進行功能分析,就芯片中核心部件的時序設計進行狀態描述,并利用可編程邏輯技術和原理圖輸入方式對鍵盤接口" title="鍵盤接口">鍵盤接口芯片的內部結構加以實現。?

??? 關鍵詞: 鍵盤子系統? 專用鍵盤接口? CPLD? 狀態描述?

?

??? 在單片機應用系統中,存在多種形式的外部數據輸入接口界面,例如RS-232C串行通信、鍵盤輸入等[1,4]。其中利用鍵盤接口輸入數據,是實現現場實時調試、數據調整和控制最常用的方法。單片機的外圍鍵盤擴展電路有多種實現方式,例如直接利用I/O接口線或外接8255A接口芯片,配合適當的接口管理程序,就可以實現外圍鍵盤擴展功能。但是,在這些方法中,鍵盤擴展電路需要占用單片機的資源對按鍵進行監控和處理,這對要求高實時性處理的單片機系統是不現實的。為了解決這一問題,可以使用專用鍵盤接口芯片(例如Intel8279)[2]來組建鍵盤子系統。然而,這類專用鍵盤接口芯片在使用靈活性方面尚有欠缺,尤其當用戶需要實現某些特定功能時,其缺點更為明顯。針對上述問題,本文提出一種利用復雜可編程邏輯器件(Complex Programmable Logic Device,CPLD)設計技術[3]實現專用鍵盤接口芯片的方案。?

1 系統原理?

??? 圖1是單片機系統中鍵盤子系統的構成原理框圖。其中鍵盤接口芯片KB-CORE是該子系統的核心部分,它應具備如下功能:第一,產生按鍵掃描時序,并進行硬件去抖動" title="去抖動">去抖動。如果有按鍵按下,實現按鍵編碼、中斷處理等功能。第二,可以區分處理數字鍵和功能鍵。數字鍵將由接口芯片暫存,而當功能鍵被按下時申請CPU中斷處理;對多個按鍵同時按下,按一定的編碼優先級處理。第三,提供與MCS-51系列單片機兼容的接口,單片機可以讀取芯片中保存的數據或功能代碼。第四,提供數據顯示接口,可以直接驅動4位七段LED數碼管,并進行動態掃描顯示。?

?

?

??? 按鍵根據鍵盤子系統的服務對象擬設置了數字鍵(0~9)、功能鍵(ROW、COL、DAT)、清零鍵(CLR)共14個,排成4×4的矩陣,有兩個未定義。?

2 專用鍵盤接口芯片功能結構設計?

??? 根據上述專用鍵盤芯片KB-CORE的功能要求,圖2示出本芯片內部應有的結構框圖。其工作原理如下:(1)鍵盤掃描" title="鍵盤掃描">鍵盤掃描控制及編碼電路中內含一個環形計數器。該計數器計數輸出至KSL[0~3]端作為鍵盤掃描信號。每當掃描信號發生變化時,鍵盤掃描控制器從KRL[0~3]端讀入某一行按鍵的狀態信號。如果沒有按鍵被按下,則掃描下一行;如果有按鍵被按下,則控制器鎖定被掃描行,并延遲約10ms去抖動,然后再次掃描被鎖定行以確定按鍵是否誤讀。如果按鍵被證實按下,則一直等待直至用戶松開該鍵。與此同時,數字鍵碼將被保存到先進先出存儲器,功能鍵則直接產生中斷請求信號IRQ,通知CPU讀取鍵碼DBO[0~7]。(2)FIFO RAM中數據容量為16位。每4位對應一個字形符,所以七段LED數碼管需要4位。(3)掃描發生器一方面產生LED的位選信號DSL[0~3],另一方面產生掃描顯示輸出控制電路的位數據選通信號。掃描顯示輸出控制電路根據位數據選通信號讀取FIFO RAM中相對應的數據,然后送七段譯碼電路輸出DP[0~6]驅動LED顯示屏的段選信號電極。(4)接口控制電路一方面用來識別CPU的讀時序;另一方面用來對地址信號線A1A0譯碼,實現對輸出數據的選擇。若A0A1=“00”,則輸出FIFO RAM中的低字節數據;若A0A1=“01”,則輸出FIFO RAM中的高字節數據;若A0A1=“10”,則輸出控制數據(表明ROW、COL、DAT中哪一個被按下);若A0A1=“11”,則不輸出FIFO RAM中的任何數據。?

?

?

3 專用鍵盤接口芯片核心部分的狀態描述與實現?

??? 為了實現上述專用鍵盤接口芯片功能結構,利用可編程邏輯技術對各個功能塊進行邏輯時序描述和實現。由于鍵盤掃描控制和去抖的邏輯時序設計較復雜并具典型性,因此下面將對鍵盤掃描控制和去抖部分的設計思想進行介紹。?

??? 鍵盤掃描時序的基本原理[4]可以用圖3所示的狀態圖表示。狀態圖的輸入變量為RST(復位)、KEY-PRESS(有按鍵)、TIMER-OVER(去抖動延時結束);輸出變量包括EN-SCAN(掃描行轉移)、EN-CODED(鍵盤編碼啟動)、START-TIMER(開啟去抖動延時)。從圖3中知道,狀態S0→S1→S2為按鍵掃描狀態鏈,狀態S3→S4→S5為去抖延時狀態鏈,狀態S6為按鍵保持期。當按鍵被按下時,進入啟動(S3)去抖延時狀態鏈;去抖延時結束后(S5),若按鍵沒有按下則恢復掃描狀態鏈(S0);若按鍵確認被按下則進入保持期(S6),并輸出按鍵編碼,維持至按鍵松開。?

?

?

??? 根據狀態圖3和上述的狀態轉移描述,進行鍵盤掃描控制電路的設計,結果如圖4所示。其中H3是6位循環移位寄存器,由時鐘CLK觸發實現狀態移位。移位寄存器的輸出Q0~Q5分別代表鍵盤掃描控制電路的狀態S0~S6,當然它們并非一一對應,但實現的功能相同。值得一提的是,如果專用鍵盤芯片KB-CORE的外部時鐘CLK來自單片機的ALE信號(如圖1所示),當單片機時鐘為6MHz時,則專用鍵盤芯片KB-CORE的外接時鐘為1MHz的方波信號,信號周期為1μs。如果將該時鐘信號經過一個分頻器,使其輸出的信號周期約為Tclk=1μs×212≈4ms,然后再作為H3的時鐘信號。這意味著鍵盤掃描控制電路約4ms掃描一行按鍵。如果H3中的Q2態沒有被使用,則可以實現約8ms的去抖動延時。通過這樣的設計,可以免除延時計數器,簡化電路。?

?

?

4 專用鍵盤接口芯片的實現?

??? 根據實時數據校正系統的設計要求,使用了34個自定義I/O引腳和PC44封裝的CPLD來實現專用鍵盤接口芯片KB-CORE。芯片型號的選擇依據綜合所需要的宏單元(Macrocells)個數決定。如果借助硬件描述語言VHDL[5]對上述設計進行描述,綜合結果需要約140個宏單元;如果改用原理圖輸入方式,則只需約60個宏單元。因此選用XC9572芯片可以滿足上述專用鍵盤接口芯片KB-CORE的要求。實際使用如圖1和圖2所示,操作結果表明鍵盤接口芯片性能穩定。?

參考文獻?

1 胡漢才.單片機原理及其接口技術,北京:清華大學出版社?

2 沈紅衛.鍵盤/顯示管理芯片8279的應用技巧.微計算機信息,1998;14(2)?

3 朱明程.XILINX數字系統現場集成技術.南京:東南大學出版社,2001?

4 何立民.MCS-51系列單片機應用系統設計——系統配置與接口技術. 北京:北京航空航天大學出版社,1999?

5 潘 松,王國棟.VHDL實用教程.成都:電子科技大學出版社

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产日韩欧美在线看| 999在线观看精品免费不卡网站| 欧美极品在线播放| 美女福利精品视频| 久久久久久久波多野高潮日日| 香蕉久久夜色精品| 亚洲在线1234| 亚洲综合第一| 亚洲一区二区精品在线观看| 在线亚洲欧美视频| 中文欧美日韩| 亚洲午夜精品久久久久久app| 99热免费精品| 亚洲破处大片| 亚洲精品在线视频| aa日韩免费精品视频一| 一区二区三区毛片| 亚洲午夜免费视频| 亚洲欧美电影在线观看| 亚洲欧美bt| 欧美一区二区三区啪啪| 久久成人羞羞网站| 久久久噜久噜久久综合| 久久影音先锋| 欧美大片免费看| 欧美日本不卡视频| 欧美性猛交视频| 国产九九精品视频| 狠狠色综合网站久久久久久久| 韩国三级在线一区| 在线成人国产| 亚洲精品资源| 亚洲图片在线观看| 性久久久久久久久久久久| 欧美一区亚洲一区| 久久精品国产99精品国产亚洲性色| 亚洲国产电影| 在线亚洲精品福利网址导航| 午夜精品久久久久久久久久久久| 久久er99精品| 欧美va天堂在线| 欧美日韩亚洲一区三区| 国产精品区二区三区日本| 国产性色一区二区| 在线观看成人网| 亚洲最新中文字幕| 亚欧成人在线| 亚洲乱码精品一二三四区日韩在线| 亚洲午夜日本在线观看| 久久精品成人欧美大片古装| 免费成人黄色| 国产精品初高中精品久久| 国产区精品在线观看| 在线欧美电影| 亚洲一区3d动漫同人无遮挡| 亚洲第一福利视频| 亚洲图中文字幕| 久久―日本道色综合久久| 欧美日韩精品一区二区三区| 国产女主播一区二区| 亚洲福利视频免费观看| 在线一区免费观看| 亚洲第一精品夜夜躁人人爽 | 亚洲视频在线二区| 久久精品国产亚洲aⅴ| 一区二区三区久久网| 久久福利资源站| 欧美绝品在线观看成人午夜影视 | 亚洲午夜精品久久久久久浪潮| 久久精品视频在线免费观看| 亚洲天堂网在线观看| 久久综合色天天久久综合图片| 欧美日韩一区三区| 一区一区视频| 午夜精品视频在线观看| 一本一本a久久| 久久久亚洲欧洲日产国码αv| 欧美连裤袜在线视频| 国内揄拍国内精品久久| 在线视频欧美日韩精品| 亚洲国产清纯| 久久aⅴ国产紧身牛仔裤| 欧美日韩精品一二三区| 亚洲电影免费在线 | 免费91麻豆精品国产自产在线观看 | 欧美r片在线| 国产区欧美区日韩区| 一本色道久久88综合亚洲精品ⅰ | 韩国一区二区三区在线观看| 亚洲图片欧洲图片日韩av| 99国产精品久久久久久久| 久久精品五月婷婷| 国产精品久久国产精品99gif | 亚洲看片网站| 久久只有精品| 国产亚洲激情| 亚洲免费在线视频| 亚洲视频在线播放| 欧美激情中文字幕乱码免费| 伊人夜夜躁av伊人久久| 欧美一区免费| 欧美一区二区三区视频在线| 欧美性理论片在线观看片免费| 亚洲精品视频免费在线观看| 亚洲精品久久久蜜桃| 久久看片网站| 国产日韩一区二区三区在线播放 | 国产精品视频大全| 一区二区av| 在线视频亚洲一区| 欧美日本亚洲| 亚洲美女在线观看| 一区二区电影免费观看| 欧美日本三区| 亚洲蜜桃精久久久久久久 | 中日韩高清电影网| 欧美激情一区二区三区在线视频观看| 韩国免费一区| 久久精品免费播放| 久久亚洲电影| 激情久久影院| 亚洲国内精品在线| 欧美成人一品| 亚洲国产精品悠悠久久琪琪| 亚洲日本成人| 欧美激情一区二区三级高清视频| 亚洲狠狠丁香婷婷综合久久久| 亚洲精品乱码久久久久久黑人 | 欧美视频在线免费| 在线亚洲+欧美+日本专区| 亚洲一区二区免费看| 国产精品家庭影院| 亚洲一区二区视频在线| 午夜伦欧美伦电影理论片| 国产精品亚洲综合天堂夜夜| 欧美亚洲视频| 麻豆精品一区二区av白丝在线| 亚洲电影在线免费观看| 日韩亚洲视频在线| 欧美视频在线一区| 亚洲欧美日韩网| 久久天堂av综合合色| 在线免费精品视频| 一本久久青青| 国产精品免费看片| 欧美一二三区在线观看| 久久综合中文色婷婷| 亚洲国产精品久久久久秋霞影院| 亚洲狼人综合| 国产精品激情av在线播放| 新狼窝色av性久久久久久| 麻豆成人91精品二区三区| 亚洲精品女人| 午夜精品久久久久久久99樱桃| 国产亚洲欧美日韩美女| 亚洲激情综合| 欧美性一二三区| 欧美一区二区视频97| 欧美激情一区二区三区| 亚洲小说欧美另类社区| 久久久久久久尹人综合网亚洲 | 一本色道久久综合一区| 国产精品日韩欧美一区二区三区 | 久久视频在线看| 日韩香蕉视频| 久久精品动漫| 亚洲精品偷拍| 欧美一区二区黄| 亚洲国产成人午夜在线一区| 亚洲午夜精品在线| 国内精品久久久久久久影视麻豆| 夜夜嗨一区二区| 国产三级精品三级| 99一区二区| 国产午夜精品视频| 亚洲精品中文字幕在线观看| 国产精品人人做人人爽| 91久久午夜| 国产女优一区| 一区二区日本视频| 国内偷自视频区视频综合| 亚洲午夜激情免费视频| 黄色亚洲在线| 午夜久久久久久| 亚洲日本电影| 久久久久久一区二区三区| 一级日韩一区在线观看| 久久夜色精品一区| 一本一本a久久| 免费成人美女女| 亚洲欧美国产不卡| 欧美激情精品久久久久久| 欧美一区二区三区喷汁尤物| 欧美三级日韩三级国产三级| 欧美专区18| 国产精品久久久久久久一区探花| 亚洲国产女人aaa毛片在线| 国产精品视频内| 在线一区二区三区做爰视频网站 | 亚洲国产成人tv|