版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)設(shè)計項目成績評定表一、設(shè)計任務(wù)及要求:1、設(shè)計任務(wù):利用 EDA設(shè)計試驗箱、微機和Quartus軟件系統(tǒng),設(shè)計并實現(xiàn)一個4*4鍵盤掃描電路。設(shè)計過程中使用 Verilog HDL語言,完成硬件設(shè)計和功能仿真。最后下載EDA設(shè)計試驗箱中予以實現(xiàn)。2、要 求:在時鐘控制下循環(huán)掃描鍵盤,根據(jù)列掃描信號和對應(yīng)鍵盤響應(yīng)信號確定鍵盤按鍵位置,并將按鍵值顯示在7段數(shù)碼管上。指導(dǎo)教師簽名: 年 月 日 二、指導(dǎo)教師評語:指導(dǎo)教師簽名: 年 月 日 三、成績評定:指導(dǎo)教師簽名: 年 月
2、日四、系部意見:系部蓋章: 年 月 日設(shè)計報告書目錄TOC o 1-3 h u 一、設(shè)計目的1、掌握常用的輸入設(shè)備行列式鍵盤接口電路的實現(xiàn)方法。2、學(xué)習(xí)較復(fù)雜的數(shù)字系統(tǒng)設(shè)計方法。二、設(shè)計思路如下圖所示為“4 * 4鍵盤”模擬圖。行“kbrow”有四行:kbrow0、kbrow1、kbrow2、kbrow3。列“kbcol”有四列:kbcol0、kbcol1、kbcol2、kbcol3 通過給四行賦值循環(huán)地對每行進行掃描,例如:通過行線賦值為“1000”時,這樣就使得第0行“0鍵、1鍵、2鍵、3鍵”處在高電平的狀態(tài)下。此時如果0鍵被按下,那么就有第0列輸出為高電平。即四位kbcol輸出為“100
3、0”,獲取鍵值為“0”然后在7段數(shù)碼管上顯示出來。圖1 4 * 4鍵盤三、設(shè)計內(nèi)容3.1、原理分析在數(shù)字系統(tǒng)設(shè)計中,4*4矩陣鍵盤是一種常見的輸入裝置,通常作為系統(tǒng)的輸入模塊。對應(yīng)于鍵盤上每一個鍵的識別,一般采用掃描的方法來實現(xiàn)。下面介紹一種用列信號進行掃描時的基本原理和流程,如圖2所示。當進行列掃描時,掃描信號由列引腳進入鍵盤,以1000、0100、0010、0001的順序每次掃描不同的一列,然后讀取行引腳的點評信號,以此可以判斷是哪個按鍵被按下。例如,當掃描行信號獨處的值為“0000”時,表示正在掃描“89AB”一列,如果該列沒有按鍵被按下,則由行信號讀出的值為“0000”;反之,如果按鍵
4、“9”被按下時,則該行信號讀出的值為“0110”。圖2 4 * 4鍵盤及行列代碼 3.1 1、4* 4鍵盤的掃描在這一部分中,利用時鐘信號進行掃描和頻率計數(shù)器的計數(shù)來完成對鍵盤的掃描。程序配套的4*4矩陣鍵盤電路圖如下圖所示:圖3 程序配套的4*4矩陣鍵盤電路圖時鐘信號給定相應(yīng)的時鐘信號,通過它的上升沿信號給計數(shù)器賦值。并同時讀取復(fù)位信號,一旦獲取到相應(yīng)的復(fù)位信號,所有鍵盤值即被初始化復(fù)位。3.1.2、掃描結(jié)果的顯示 用7段數(shù)碼管顯示相應(yīng)的掃描結(jié)果。其中7段數(shù)碼管采用共陰極讀取鍵值。當某一鍵被按下,相應(yīng)的7段數(shù)碼管獲得高電平,便顯示該鍵值,如圖4所示:圖4 7段數(shù)碼管及所對應(yīng)的I/O接口3.1
5、.3、電路符號4*4矩陣鍵盤掃描電路的電路符號如圖5所示。輸入信號:時鐘信號clk;開始信號start;行掃描信號kbrow3:0。輸出信號:列掃描信號kbcool3:0;7段顯示控制信號seg7_out6:0;數(shù)碼管地址選擇控制信號scan2:0,圖5 4*4矩陣鍵盤掃描電路的電路符號3.1.4、數(shù)碼管地址選擇控制信號數(shù)碼管地址選擇控制信號scan2:0用于選擇哪個數(shù)碼管顯示數(shù)字,8個數(shù)碼管(SM8-SM1)為共陰極數(shù)碼管(段碼為高電平點亮數(shù)碼管),I/O2-I/O0為數(shù)碼管位選,位選對應(yīng)的數(shù)碼管關(guān)系如下表一所示:表一:數(shù)碼管地址選擇控制信號對應(yīng)的位選接口序列(硬件接口管教號)數(shù)碼管選中狀態(tài)
6、,可顯示I/O0 (scan0)I/O1 (scan1)I/O3 (scan2)111SM8110SM7101SM6100SM5011SM4010SM3001SM2000SM13.2、程序設(shè)計module jp(kbrow,seg7_out,scan,clk,start,kbcol); output 3:0 kbrow;/ 列掃描信號 output 6:0seg7_out;/ 7段顯示控制信號 output 2:0 scan;/ 數(shù)碼管地址選擇控制信號 input clk,start;/ 掃描時鐘信號,開始信號,高電平有效 input 3:0 kbcol;/ 行掃描信號 reg 3:0 kbr
7、ow; reg 6:0seg7_out; reg 2:0 scan; reg 1:0 sta; reg 1:0 count; reg 6:0 seg7; reg 4:0 dat; reg fn;/ 按鍵標志位,判斷是否有鍵被按下 initial scan=3b000;/ 只使用一個數(shù)碼管顯示/循環(huán)掃描計數(shù)器always (posedge clk)begin if(start=0) seg7=7b;else begin count=count+1; /循環(huán)列掃描 case(count)2b00:begin kbrow=4b0001;sta=2b00;end 2b01:begin kbrow=4b
8、0010;sta=2b01;end 2b10:begin kbrow=4b0100;sta=2b10;end 2b11:begin kbrow=4b1000;sta=2b11;end endcase /行掃描譯碼 case(sta) 2b00:begin case(kbcol) 4b0001:begin seg7=7b111_1001;dat=5b00011;end 4b0010:begin seg7=7b110_1101;dat=5b00010;end 4b0100:begin seg7=7b011_0000;dat=5b00001;end 4b1000:begin seg7=7b111_1
9、110;dat=5b00000;end default:begin seg7=7b000_0000;dat=5b11111;end endcase end 2b01:begin case(kbcol) 4b0001:begin seg7=7b111_0000;dat=5b00111;end 4b0010:begin seg7=7b101_1111;dat=5b00110;end 4b0100:begin seg7=7b101_1011;dat=5b00101;end 4b1000:begin seg7=7b011_0011;dat=5b00100;end default:begin seg7=
10、7b000_0000;dat=5b11111;end endcase end 2b10:begin case(kbcol) 4b0001:begin seg7=7b001_1111;dat=5b01011;end 4b0010:begin seg7=7b111_0111;dat=5b01011;end 4b0100:begin seg7=7b111_1011;dat=5b01001;end 4b1000:begin seg7=7b111_1111;dat=5b01000;end default:begin seg7=7b000_0000;dat=5b11111;end endcase end
11、2b11:begin case(kbcol) 4b0001:begin seg7=7b100_0111;dat=5b01111;end 4b0010:begin seg7=7b100_1111;dat=5b01110;end 4b0100:begin seg7=7b011_1101;dat=5b01101;end 4b1000:begin seg7=7b100_1110;dat=5b01100;end default:begin seg7=7b000_0000;dat=5b11111;end endcase end default:seg7=7b;endcase end end always
12、begin fn=(dat0&dat1&dat2&dat3&dat4); end /產(chǎn)生按鍵標志位,用于儲存按鍵信息 always (posedge fn)/ 按鍵信息儲存 begin seg7_out=seg7; end endmodule3.3、管腳分配表二:管腳分配表tolocationclkPIN_79seg7_out6PIN_10seg7_out5PIN_11seg7_out4PIN_12seg7_out3PIN_13seg7_out2PIN_14seg7_out1PIN_15seg7_out0PIN_16kbrow3PIN_62kbrow2PIN_61kbrow1PIN_60kbr
13、ow0PIN_58kbcol0PIN_67kbcol1PIN_65kbcol2PIN_64kbcol3PIN_63scan0PIN_7scan1PIN_8scan2PIN_9四、系統(tǒng)調(diào)試與結(jié)果 將實驗箱與微機和電源分別連接好。首先檢測試驗箱是否可以使用,經(jīng)檢測無誤后,開通電源。根據(jù)引腳的鎖定情況,將clk時鐘接128Hz時鐘輸入,對引腳配置編譯后,可將設(shè)計好的程序下載到EDA實驗箱,即可測試功能。 當對應(yīng)“數(shù)字E”按鍵的按下,在實驗箱的7段數(shù)碼管上,會顯示對應(yīng)的數(shù)字E。 實驗效果圖如下圖所示:五、主要元器件與設(shè)備 1、EDA技術(shù)試驗箱一個 2、計算機一臺 3、Quartus軟件六、課程設(shè)計體會 通過此次課程設(shè)計,讓我對EDA這門技術(shù)有了更深的體會,并更好的學(xué)會了使用Quartus軟件進行硬件設(shè)計。 此次課程設(shè)計時基于Verilog HDL語言進行的矩陣鍵盤控制接口電路設(shè)計,在課程設(shè)計時,我逐漸掌握了Verilog HDL語言的語句及語法等的使用。但在學(xué)習(xí)過程中,也遇到了很多困難,尤其是Verilog HDL語言的運用。我先上網(wǎng)找了一些資料和程序,一點點的看,慢慢摸索著學(xué)習(xí)寫語句。最后在老師和同學(xué)的幫助下,終于完成了矩陣鍵盤控制接口電路的設(shè)計。七、參考文獻1 宋烈武. EDA技術(shù)與實踐教程. 北京:電子工業(yè)出版社,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版建筑工程項目招投標與合同風(fēng)險評估與管理協(xié)議3篇
- 二零二五年度辦公室租賃合同含停車服務(wù)2篇
- 二零二五版跨區(qū)域公司間資金拆借合同范例2篇
- 二零二五年度環(huán)保設(shè)備班組工人勞務(wù)合同3篇
- 二零二五版教師臨時聘用與教育品牌建設(shè)合同3篇
- 二零二五年版農(nóng)業(yè)科技項目合同信用評價與推廣合作合同3篇
- 二零二五年度石材礦山開采權(quán)轉(zhuǎn)讓合同2篇
- 二零二五版租賃合同:租賃合同信息化管理平臺使用協(xié)議3篇
- 深圳汽車租賃合同模板2025版6篇
- 二零二五年度建筑勞務(wù)分包合同(含爭議解決)6篇
- TSGD7002-2023-壓力管道元件型式試驗規(guī)則
- 2024年度家庭醫(yī)生簽約服務(wù)培訓(xùn)課件
- 建筑工地節(jié)前停工安全檢查表
- 了不起的狐貍爸爸-全文打印
- 液相色譜質(zhì)譜質(zhì)譜儀LCMSMSSYSTEM
- 民辦非企業(yè)單位章程核準表-空白表格
- 派克與永華互換表
- 第二章流體靜力學(xué)基礎(chǔ)
- 小學(xué)高年級語文作文情景互動教學(xué)策略探究教研課題論文開題中期結(jié)題報告教學(xué)反思經(jīng)驗交流
- 春節(jié)新年紅燈籠中國風(fēng)信紙
- 注塑件生產(chǎn)通用標準
評論
0/150
提交評論