電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>接口技術(shù)>4*4矩陣鍵盤設(shè)計及源代碼

4*4矩陣鍵盤設(shè)計及源代碼

2010-02-08 | rar | 2 | 次下載 | 10積分

資料介紹

4*4矩陣鍵盤設(shè)計及源代碼

一 實驗?zāi)康?br /> 1 學(xué)習(xí)使用4X4 掃描鍵盤的設(shè)計方法;
2 實踐對比按鍵抖動對掃描鍵盤輸出的影響
二 實驗原理及說明
1、實驗原理

信號(KEY)接到高電平,當(dāng)沒有鍵按時,行線與列線(KEYSCAN)是斷開的,且行線都是高電平(1111),行信號作為FPGA的輸入端、列信號作為FPGA的輸出端。可以設(shè)置列線初始狀態(tài)為低電平(0000)。信號為從上到下的順序
當(dāng)有鍵按下時,假如是K1按下,行信號與列信號接通,這時相應(yīng)的行線(KEY0)變?yōu)榈碗娖剑?1111),可以肯定第一行(K1,5,9,13)有鍵按下。
下面就要運用掃描的原理了:
1、因為只知道第一行有鍵按下,不知道是那個,可以設(shè)置列信號為0111,這時行信號變?yōu)椋?111)(注:假設(shè)時鐘周期很短,手還沒松開,即鍵還在按下的狀態(tài))
2、設(shè)置列信號為1011,行信號也變成(1111)
3、設(shè)置列信號為1101,行信號也變成(1111)
4、設(shè)置列信號為1110,行信號也變成(0111),這時就可以肯定是第一個鍵按下。
關(guān)鍵的工作只要調(diào)整好時鐘的頻率就可以了。
2、實驗說明
4X4掃描鍵盤只用8位數(shù)據(jù)線,可以提供16個不同的按鍵信號。這樣做的好處是:1節(jié)省FPGA管腳資源;2 系統(tǒng)簡單化減小電路規(guī)模;特別是在資源比較緊張,對成本要求嚴(yán)格的系統(tǒng)中這是一種非常流行的設(shè)計方法。在上面的實驗中同學(xué)們已經(jīng)見到了掃描數(shù)碼顯示器的實用性,4X4掃描鍵盤是輸入設(shè)備,控制器來要稍微復(fù)雜一些。掌握這種程序設(shè)計方法在以后的學(xué)習(xí)工作中還是很有用武之地的。
因為一般的開關(guān)在大約20ms內(nèi)信號不穩(wěn)定,存在所謂的“開關(guān)抖動”,會產(chǎn)生多個脈沖影響電路正常工作。所以含開關(guān)輸入的設(shè)計需要做防抖動處理,在本實驗可以用20Hz的時鐘采樣實現(xiàn)防抖。
在設(shè)計程序時要注意時鐘的的分配;要考慮一般用手把鍵按下的時間長度等問題。如果不去抖動可以把時鐘加快,使按下鍵的時間內(nèi)完成掃描處理。實際中操作與理論分析是有差別的,本實驗的目的是要下載成功而不僅是仿真通過。
三 實驗步驟
1、準(zhǔn)備實驗前查閱本實驗相關(guān)的信息
2、構(gòu)思程序設(shè)計方法
3、編寫veilog代碼同時做程序注釋
4、編譯仿真程序,與預(yù)想結(jié)果進行比較,修改程序
5、下載到實驗平臺上,觀察結(jié)果
四 實驗要求
1 輸入verilog設(shè)計文件,編譯調(diào)試通過
2 利用仿真手段進行測試
3 下載程序到實驗板,由掃描數(shù)碼管led輸出按下的鍵盤碼
4 對比抖動的效果
五 擴展性學(xué)習(xí)
上文已說明開關(guān)防抖的必要性,在這種簡單的實際應(yīng)用中做不做防抖處理沒有什么區(qū)別,但是用按鍵開關(guān)作發(fā)送串行數(shù)據(jù)的開關(guān)時就有可能出現(xiàn)問題。所以下文將介紹一種較實用的開關(guān)去抖方案,請同學(xué)們參考
鍵一旦被按下,deDitherCounter計數(shù)開始。計數(shù)5ms(將主時鐘分頻為小于1ms的時鐘)時將鍵盤編碼值(處理前)賦給code,計數(shù)到15ms時比較當(dāng)前的鍵盤碼與10ms前的碼是否相同:如果相同,輸出keyPressed信號,如果不同不做任何處理,keyPressed信號在1ms后(計數(shù)到15)重新拉低。而輸出的鍵盤碼code在第5毫秒時就變?yōu)橛行е?,直到下一次按鍵后的5ms才會重新變?yōu)樾碌闹担瑥亩WC在keyPressed信號輸出有效時code信號是有效的。
六 管腳映射
原理圖見實驗原理
管腳映射
擴展信號名稱 PIN
Key0 Pin_44
Key1 Pin_43
Key2 Pin_45
Key3 Pin_48
Keyscan0 Pin_47
Keyscan1 Pin_64
Keyscan2 Pin_65

更多矩陣鍵盤知識請訪問http://www.wenjunhu.com/zhuanti/20111025226587.html


Keyscan3 Pin_50

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1497次下載  |  免費
  3. 2TC358743XBG評估板參考手冊
  4. 1.36 MB  |  330次下載  |  免費
  5. 3單片機典型實例介紹
  6. 18.19 MB  |  99次下載  |  1 積分
  7. 4S7-200PLC編程實例詳細(xì)資料
  8. 1.17 MB  |  28次下載  |  1 積分
  9. 5筆記本電腦主板的元件識別和講解說明
  10. 4.28 MB  |  18次下載  |  4 積分
  11. 6開關(guān)電源原理及各功能電路詳解
  12. 0.38 MB  |  14次下載  |  免費
  13. 79天練會電子電路識圖
  14. 5.91 MB  |  6次下載  |  免費
  15. 8100W短波放大電路圖
  16. 0.05 MB  |  4次下載  |  3 積分

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33564次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30321次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關(guān)電源設(shè)計實例指南
  16. 未知  |  21540次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537794次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費