【正文】
在進行系統(tǒng)檢查時能對創(chuàng)新性進行說明,并在報告中有相應(yīng)的論述。305回答問題在進行課程設(shè)計程序系統(tǒng)檢查時,能正確回答指導(dǎo)教師所提出的問題。103課程設(shè)計質(zhì)量按期圓滿的完成了規(guī)定的任務(wù),方案設(shè)計合理,思考問題全面,系統(tǒng)功能完善。參考文獻[1] 李國麗,:中國科技大學出版社,2000[2] 潘松,:科學出版社,2002[3] 盧杰,:科學出版社,2001[4] 潘松,黃繼業(yè) EDA技術(shù)實用教程[M] 科學出版社 2006年[5] 何賓 EDA 原理及應(yīng)用 清華大學出版社 2009年[6] 孫富明,電子技術(shù)應(yīng)用,2002年1月,第1期 東北石油大學課程設(shè)計成績評價表課程名稱硬件課程設(shè)計題目名稱矩陣鍵盤控制接口電路設(shè)計學生姓名學號指導(dǎo)教師姓名職稱序號評價項目指 標(優(yōu)秀)滿分評分1選題難度選題難度較高,或者對原題目進行了相當程度的改進。以后我會利用更多時間來學習EDA技術(shù)。我先上網(wǎng)找了一些資料和程序,一點點的看,慢慢摸索著學習寫語句。 此次課程設(shè)計時基于VHDL語言進行的矩陣鍵盤控制接口電路設(shè)計,在課程設(shè)計時,我逐漸掌握了VHDL語言的語句及語法等的使用。對應(yīng)“數(shù)字5”按鍵的按下,在試驗儀的兩只7段數(shù)碼管上,會依次顯示兩位數(shù)(05),適當選取SELOUT[2..0]的掃描速度,就可以根據(jù)人的視覺暫留現(xiàn)象,看到連續(xù)的兩位數(shù)字:(05)。對引腳配置編譯后,可將設(shè)計好的程序下載到實驗箱的FLEX10K \ EPF10K10LC844芯片中,即可測試功能。根據(jù)引腳的鎖定情況,將CLK20時鐘接20MHZ時鐘輸入,KEY[3..0]分別接實驗儀器的鍵盤輸出KIN[3..0],SELOUT[2..0]分別接實驗儀器的掃描輸入SEL[2..0],SEGOUT[7..0]分別接7段顯示器輸入DP~A。頂層實體電路生成元件:圖36 頂層實體電路生成元件 仿真結(jié)果彈跳消除電路設(shè)計實體仿真波形圖: 圖37 彈跳消除電路設(shè)計實體仿真波形圖頂層設(shè)計實體仿真波形圖:圖38 頂層設(shè)計實體仿真波形圖 硬件驗證結(jié)果將實驗箱與微機和電源分別連接好。 end block seven_segment。End Block REG_MULTIPLEXER。139。039。END PROCESS。 end if。)THEN if(key_code=11111111) then KEY_CODE1=KEY_CODE1。EVENT AND CLK2=39。)。 then KEY_CODE1=(others=39。BEGINPROCESS(CLK2,clr)begin if clr=39。END BLOCK key_decoder。END IF。WHEN OTHERS=ZOUT=11111111。WHEN0111110=ZOUT=00011110。WHEN0111100=ZOUT=00011101。WHEN0111010=ZOUT=00011011。WHEN0111000=ZOUT=00011000。WHEN1011110=ZOUT=00010110。WHEN1011100=ZOUT=00001110。WHEN1011010=ZOUT=00001100。WHEN1011000=ZOUT=00010100。WHEN1101110=ZOUT=00001010。WHEN1101100=ZOUT=00001000。WHEN1101010=ZOUT=00010010。WHEN1101000=ZOUT=00000110。WHEN1110110=ZOUT=00000100。WHEN1110100=ZOUT=00010000。WHEN1110010=ZOUT=00000010。 thencase z isWHEN1110000=ZOUT=00000000。event and clk1=39。)。 then zout=(others=39。 用十進制數(shù)顯示 process(clk1,clr) beginif clr=39。seltmp。 signal zout:std_logic_vector(7 downto 0)。end block debounuing。 u3:debouncing port map(key=key_in(2), dly_out=c(2),clr=clr,clk=clk)。debounuing:block 例化語句 begin u1:debouncing port map(key=key_in(0), dly_out=c(0),clr=clr,clk=clk)。 seltmp=q(7 downto 5)。 clk1=q(2)。end process。 then q=q+1。event and clk4=39。)。 then q=(others=39。 begin process(clk4,clr) begin if clr=39。 end block fenpin。 end if。 else clk4=39。 process(m) begin if m=105 then clk4=39。 end if。 else m=m+1。139。 begin process(clk20) begin if clk2039。 key_in=not key。 selout=seltmp。 signal seg:std_logic_vector(7 downto 0)。 signal c:std_logic_vector(3 downto 0)。 signal seltmp:std_logic_vector(2 downto 0)。end ponent。 clk,clr:in std_logic。end keys_test。 key:in std_logic_vector(3 downto 0)。 selout:out std_logic_vector(2 downto 0)。 use 。 use 。