資料介紹
4*4矩陣鍵盤設(shè)計(jì)及源代碼
一 實(shí)驗(yàn)?zāi)康?br />
1 學(xué)習(xí)使用4X4 掃描鍵盤的設(shè)計(jì)方法;
2 實(shí)踐對(duì)比按鍵抖動(dòng)對(duì)掃描鍵盤輸出的影響
二 實(shí)驗(yàn)原理及說(shuō)明
1、實(shí)驗(yàn)原理
行信號(hào)(KEY)接到高電平,當(dāng)沒(méi)有鍵按時(shí),行線與列線(KEYSCAN)是斷開的,且行線都是高電平(1111),行信號(hào)作為FPGA的輸入端、列信號(hào)作為FPGA的輸出端。可以設(shè)置列線初始狀態(tài)為低電平(0000)。信號(hào)為從上到下的順序
當(dāng)有鍵按下時(shí),假如是K1按下,行信號(hào)與列信號(hào)接通,這時(shí)相應(yīng)的行線(KEY0)變?yōu)榈碗娖剑?1111),可以肯定第一行(K1,5,9,13)有鍵按下。
下面就要運(yùn)用掃描的原理了:
1、因?yàn)橹恢赖谝恍杏墟I按下,不知道是那個(gè),可以設(shè)置列信號(hào)為0111,這時(shí)行信號(hào)變?yōu)椋?111)(注:假設(shè)時(shí)鐘周期很短,手還沒(méi)松開,即鍵還在按下的狀態(tài))
2、設(shè)置列信號(hào)為1011,行信號(hào)也變成(1111)
3、設(shè)置列信號(hào)為1101,行信號(hào)也變成(1111)
4、設(shè)置列信號(hào)為1110,行信號(hào)也變成(0111),這時(shí)就可以肯定是第一個(gè)鍵按下。
關(guān)鍵的工作只要調(diào)整好時(shí)鐘的頻率就可以了。
2、實(shí)驗(yàn)說(shuō)明
4X4掃描鍵盤只用8位數(shù)據(jù)線,可以提供16個(gè)不同的按鍵信號(hào)。這樣做的好處是:1節(jié)省FPGA管腳資源;2 系統(tǒng)簡(jiǎn)單化減小電路規(guī)模;特別是在資源比較緊張,對(duì)成本要求嚴(yán)格的系統(tǒng)中這是一種非常流行的設(shè)計(jì)方法。在上面的實(shí)驗(yàn)中同學(xué)們已經(jīng)見(jiàn)到了掃描數(shù)碼顯示器的實(shí)用性,4X4掃描鍵盤是輸入設(shè)備,控制器來(lái)要稍微復(fù)雜一些。掌握這種程序設(shè)計(jì)方法在以后的學(xué)習(xí)工作中還是很有用武之地的。
因?yàn)橐话愕拈_關(guān)在大約20ms內(nèi)信號(hào)不穩(wěn)定,存在所謂的“開關(guān)抖動(dòng)”,會(huì)產(chǎn)生多個(gè)脈沖影響電路正常工作。所以含開關(guān)輸入的設(shè)計(jì)需要做防抖動(dòng)處理,在本實(shí)驗(yàn)可以用20Hz的時(shí)鐘采樣實(shí)現(xiàn)防抖。
在設(shè)計(jì)程序時(shí)要注意時(shí)鐘的的分配;要考慮一般用手把鍵按下的時(shí)間長(zhǎng)度等問(wèn)題。如果不去抖動(dòng)可以把時(shí)鐘加快,使按下鍵的時(shí)間內(nèi)完成掃描處理。實(shí)際中操作與理論分析是有差別的,本實(shí)驗(yàn)的目的是要下載成功而不僅是仿真通過(guò)。
三 實(shí)驗(yàn)步驟
1、準(zhǔn)備實(shí)驗(yàn)前查閱本實(shí)驗(yàn)相關(guān)的信息
2、構(gòu)思程序設(shè)計(jì)方法
3、編寫veilog代碼同時(shí)做程序注釋
4、編譯仿真程序,與預(yù)想結(jié)果進(jìn)行比較,修改程序
5、下載到實(shí)驗(yàn)平臺(tái)上,觀察結(jié)果
四 實(shí)驗(yàn)要求
1 輸入verilog設(shè)計(jì)文件,編譯調(diào)試通過(guò)
2 利用仿真手段進(jìn)行測(cè)試
3 下載程序到實(shí)驗(yàn)板,由掃描數(shù)碼管或led輸出按下的鍵盤碼
4 對(duì)比抖動(dòng)的效果
五 擴(kuò)展性學(xué)習(xí)
上文已說(shuō)明開關(guān)防抖的必要性,在這種簡(jiǎn)單的實(shí)際應(yīng)用中做不做防抖處理沒(méi)有什么區(qū)別,但是用按鍵開關(guān)作發(fā)送串行數(shù)據(jù)的開關(guān)時(shí)就有可能出現(xiàn)問(wèn)題。所以下文將介紹一種較實(shí)用的開關(guān)去抖方案,請(qǐng)同學(xué)們參考
鍵一旦被按下,deDitherCounter計(jì)數(shù)開始。計(jì)數(shù)5ms(將主時(shí)鐘分頻為小于1ms的時(shí)鐘)時(shí)將鍵盤編碼值(處理前)賦給code,計(jì)數(shù)到15ms時(shí)比較當(dāng)前的鍵盤碼與10ms前的碼是否相同:如果相同,輸出keyPressed信號(hào),如果不同不做任何處理,keyPressed信號(hào)在1ms后(計(jì)數(shù)到15)重新拉低。而輸出的鍵盤碼code在第5毫秒時(shí)就變?yōu)橛行е?,直到下一次按鍵后的5ms才會(huì)重新變?yōu)樾碌闹?,從而保證在keyPressed信號(hào)輸出有效時(shí)code信號(hào)是有效的。
六 管腳映射
原理圖見(jiàn)實(shí)驗(yàn)原理
管腳映射
擴(kuò)展信號(hào)名稱 PIN
Key0 Pin_44
Key1 Pin_43
Key2 Pin_45
Key3 Pin_48
Keyscan0 Pin_47
Keyscan1 Pin_64
Keyscan2 Pin_65
更多矩陣鍵盤知識(shí)請(qǐng)?jiān)L問(wèn)http://www.wenjunhu.com/zhuanti/20111025226587.html
Keyscan3 Pin_50
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
- 数码管显示4X4键盘矩阵按键 PROTEUS 和51单片机教程(附仿真文件+源代码)43次下载
- 4*4矩阵键盘驱动程序7次下载
- 一种4*4矩阵键盘实现16个按键操作的设计资料下载13次下载
- 4X4矩阵键盘的应用仿真电路图和keil程序免费下载38次下载
- 数码管显示4X4键盘矩阵按键的仿真原理图免费下载49次下载
- 4×4键盘矩阵控制条形LED显示的仿真电路图合集免费下载18次下载
- 两个4×4键盘矩阵控制条形LED显示的电路原理图免费下载30次下载
- 使用单片机实现矩阵键盘的源代码和工程文件免费下载11次下载
- 使用单片机实现4x4矩阵键盘的程序免费下载12次下载
- 使用51单片机实现4x4矩阵键盘的程序免费下载11次下载
- 使用51单片机设计4X4矩阵键盘的程序免费下载16次下载
- 4×4键盘矩阵按键电路图和HEX资料免费下载35次下载
- 基于单片机的12864图形温度计+矩阵键盘_源代码5次下载
- 4x4矩阵键盘程序及原理图PCB0次下载
- 基于51单片机对4*4矩阵键盘扫描86次下载
- 【版本控制教程】如何使用Unreal Engine 5 + UE源代码控制(Perforce P4)168次阅读
- 使用单片机设计实现键盘的资料和源代码概述3366次阅读
- 微雪电子4x4矩阵式按键模块小键盘简介3235次阅读
- 英创信息技术工控主板扩展4×5矩阵键盘介绍2583次阅读
- 51单片机对矩阵键盘实现16个按键操作的电路设计31575次阅读
- 51单片机对矩阵键盘实现16个按键操作的设计37227次阅读
- 基于51单片机的4*4矩阵键盘字符输入11002次阅读
- 什么是矩阵键盘?4*4键盘的原理软件设计分析40183次阅读
- 基于AT89S51的4×4 矩阵键程序设计2903次阅读
- 4*4键盘数码管显示程序解析7629次阅读
- 4x4矩阵键盘工作原理及扫描程序244271次阅读
- 矩阵式键盘使用方法26650次阅读
- 一文看懂矩阵键盘的特点及工作方式39116次阅读
- 矩阵键盘有什么用_矩阵键盘有何用途17255次阅读
- 单片机4×4矩阵键盘设计方案24896次阅读
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1497次下載 | 免費(fèi)
- 2TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 3單片機(jī)典型實(shí)例介紹
- 18.19 MB | 99次下載 | 1 積分
- 4S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 28次下載 | 1 積分
- 5筆記本電腦主板的元件識(shí)別和講解說(shuō)明
- 4.28 MB | 18次下載 | 4 積分
- 6開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 14次下載 | 免費(fèi)
- 79天練會(huì)電子電路識(shí)圖
- 5.91 MB | 6次下載 | 免費(fèi)
- 8100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30321次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21540次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537794次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論