嵌入式設備中CPLD的鍵盤控制實現
2004年6月A版
摘 要:用CPLD在信息家電控制平臺中設計鍵盤控制器。
關鍵詞:CPLD;鍵盤控制;信息家電;VHDL
前言
嵌入式系統中所用的鍵盤有編碼和非編碼鍵盤兩種。編碼鍵盤的優點是比較方便,亦不需要編寫太復雜的程序。其缺點是使用的硬件較復雜。非編碼鍵盤的按鍵是排列成行、列矩陣形式的,可以采用多種鎖存器和可編程并行I/O接口芯片組成,但是,在這些方法中,鍵盤擴展電路需要占用微處理器的資源對按鍵進行監控和處理,還有不能按照嵌入式設備中特定要求來進行開發,這些都制約了鍵盤在嵌入式設備中的開發應用。為了解決這一問題,本文提出一種利用復雜可編程邏輯器件設計技術實現鍵盤控制部分。
鍵盤時序信號和功能
本設計采用通用鍵盤的實現形式。用戶通過通用鍵盤向主機輸送信息,使用的鍵盤方式只向主機單向傳輸數據,而不接收主機發送過來的數據。鍵盤輸出的是掃描碼,按串行方式輸出。鍵盤輸出的信號包括時鐘信號和串行數據信號。鍵盤接口電路,按照串行傳送的鍵盤代碼的應答約定,接收鍵盤發送的掃描碼,同時,還向鍵盤發送主機的控制信號,主機與鍵盤接口的連接信號時序如圖1所示。
從時序圖可以看出鍵盤控制器欲實現以下功能:產生按鍵掃描時序,并進行硬件去抖動,如果有按鍵按下,實現按鍵編碼、中斷處理等功能;可以同時處理數字鍵和功能鍵,對多個按鍵同時按下,采用一定的處理算法優先進行處理;提供數據顯示接口,可以和我們采用的NEC公司NL3224BC35-20彩色顯示器正確連接。
在本控制平臺中根據系統要求對按鍵進行如下設置:數字鍵(0~9)、字母鍵(A~Z)、功能鍵(手動、自動、編程方式選擇)、清零鍵(CLR)等共56個,排成8
評論