版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 課 程 設(shè) 計</p><p> 2011年 3 月2日</p><p><b> 課程設(shè)計任務(wù)書</b></p><p> 課程 EDA技術(shù)課程設(shè)計</p><p><b> 題目 拔河游戲機</b></p><p> 專業(yè)
2、 姓名 學(xué)號 </p><p> 主要內(nèi)容、基本要求、主要參考資料等</p><p><b> 主要內(nèi)容:</b></p><p> 電子拔河游戲機是一種能容納甲乙雙方參賽游戲電路。由一排發(fā)光二極管表示拔河的“電子繩”。由甲乙雙方通過按紐開關(guān)使發(fā)光二極管向一方的終點延伸,當(dāng)延伸到某方的
3、最后一個發(fā)光二極管時, 則該方獲勝,連續(xù)比賽多局以定勝負(fù)。</p><p><b> 基本要求:</b></p><p> 1、設(shè)計一個能進行拔河游戲的電路。</p><p> 2、電路使用9個發(fā)光二極管,開機后只有中間一個發(fā)亮,此即拔河的中心點。</p><p> 3、游戲雙方各持一個按鈕,迅速地、不斷地按動,
4、產(chǎn)生脈沖,誰按得快,亮點就向誰的方向移動,每按一次,亮點移動一次。</p><p> 4、亮點移到任一方終端二極管時,這一方就獲勝,此時雙方按鈕均無作用,輸出保持,只有復(fù)位后才使亮點恢復(fù)到中心。</p><p> 5、用數(shù)碼管顯示獲勝者的盤數(shù)。</p><p><b> 主要參考資料:</b></p><p>
5、[1] 潘松著.EDA技術(shù)實用教程(第二版). 北京:科學(xué)出版社,2005.</p><p> [2] 康華光主編.電子技術(shù)基礎(chǔ) 模擬部分. 北京:高教出版社,2006.</p><p> [3] 閻石主編.數(shù)字電子技術(shù)基礎(chǔ). 北京:高教出版社,2003.</p><p> 完成期限 2011.3.2 </p><p&g
6、t; 指導(dǎo)教師 </p><p> 專業(yè)負(fù)責(zé)人 </p><p> 2011年 3月2日</p><p><b> 一、總體設(shè)計思想</b></p><p><b> 1.基本原理</b></p><
7、;p> 電子拔河游戲機是一種能容納甲乙雙方參賽游戲電路。由一排發(fā)光二極管表示拔河的“電子繩”。由甲乙雙方通過按紐開關(guān)使發(fā)光二極管向一方的終點延伸,當(dāng)延伸到某方的最后一個發(fā)光二極管時, 則該方獲勝,連續(xù)比賽多局以定勝負(fù)。</p><p> 本電路要求使用9個發(fā)光二極管,開機后只有中間一個發(fā)亮,此即拔河的中心點。游戲雙方各持一個按鈕,迅速地、不斷地按動,產(chǎn)生脈沖,誰按得快,亮點就向誰的方向移動,每按一次,亮
8、點移動一次。亮點移到任一方終端二極管時,這一方就獲勝,此時雙方按鈕均無作用,輸出保持,只有復(fù)位后才使亮點恢復(fù)到中心。最后用數(shù)碼管顯示獲勝者的盤數(shù)。</p><p> 由設(shè)計內(nèi)容可知,首先需要一個十進制的計數(shù)器,用于對雙方按鈕的次數(shù)計數(shù),并通過譯碼器顯示在數(shù)碼管上。設(shè)計要求用50MHz的頻率,而設(shè)計用到的是1K Hz的頻率,所以要設(shè)計一個程序進行分頻。其次,顯視控制部分設(shè)計要求在發(fā)光二極管上顯示游戲狀態(tài),雙方每按
9、十次,亮點向先按十次移動一次,對脈沖進行計數(shù),每十次移一位。需接入一個清零端 ,用于復(fù)位。再次,運用VHDL程序語言進行各個模塊的程序編寫,控制電路的正常運行。最后,將以上程序組裝起來,就可得到所需要的拔河游戲機。</p><p><b> 2.設(shè)計框圖</b></p><p> 圖1. 拔河機游戲機框圖</p><p> 二、設(shè)計步驟和
10、調(diào)試過程</p><p><b> 1、總體設(shè)計電路</b></p><p> 電子拔河游戲機是一種能容納甲乙雙方參賽游戲電路。由一排發(fā)光二極管表示拔河的“電子繩”。由甲乙雙方通過按紐開關(guān)使發(fā)光二極管向一方的終點延伸,當(dāng)延伸到某方的最后一個發(fā)光二極管時, 則該方獲勝,連續(xù)比賽多局以定勝負(fù)。</p><p> 圖2.系統(tǒng)RTL圖示</
11、p><p> 2、模塊設(shè)計和相應(yīng)模塊程序</p><p> 1、文件名:bahe</p><p> LIBRARY IEEE;</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p>&
12、lt;p> ENTITY BAHE IS </p><p><b> PORT (</b></p><p> A,B,RST,CLK:IN STD_LOGIC;</p><p> SG,LED:OUT STD_LOGIC_VECTOR(8 DOWNTO 0);</p><p> BT:OUT STD_LO
13、GIC_VECTOR(7 DOWNTO 0)</p><p><b> );</b></p><p><b> END BAHE;</b></p><p> ----------------------------------</p><p> ARCHITECTURE ONE OF BAH
14、E IS</p><p> COMPONENT CNT10</p><p><b> PORT (</b></p><p> CLK,RST,EN:STD_LOGIC;</p><p> COUT:OUT STD_LOGIC;</p><p> CQ:OUT STD_LOGIC_VECT
15、OR(3 DOWNTO 0)</p><p><b> );</b></p><p> END COMPONENT;</p><p> COMPONENT SCAN </p><p><b> PORT (</b></p><p> CLK :IN STD_LOGI
16、C;</p><p> A1, A2,A3,B1,B2,B3:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> SG:OUT STD_LOGIC_VECTOR(8 DOWNTO 0);</p><p> BT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0));</p><p> E
17、ND COMPONENT;</p><p> COMPONENT LMOV</p><p><b> PORT (</b></p><p> KL ,KR:IN STD_LOGIC_VECTOR(3 DOWNTO 0) ;</p><p> LED:OUT STD_LOGIC_VECTOR(8 DOWNTO 0)
18、;</p><p> EN : OUT STD_LOGIC;</p><p> RST:IN STD_LOGIC</p><p><b> );</b></p><p> END COMPONENT;</p><p> SIGNAL E,F,CA1,CA2,CB1,CB2:STD_LOG
19、IC;</p><p> SIGNAL CQA1,CQA2,CQA3,CQB1,CQB2,CQB3:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b> BEGIN</b></p><p> U1: CNT10 PORT MAP (EN=>E,RST=>RST,CLK=>A,COUT=&g
20、t;CA1,CQ=>CQA1);</p><p> U2: CNT10 PORT MAP (EN=>E,RST=>RST,CLK=>CA1,COUT=>CA2,CQ=>CQA2);</p><p> U3: CNT10 PORT MAP (EN=>E,RST=>RST,CLK=>CA2,CQ=>CQA3);</p>
21、<p> U4: CNT10 PORT MAP (EN=>E,RST=>RST,CLK=>B,COUT=>CB1,CQ=>CQB1);</p><p> U5: CNT10 PORT MAP (EN=>E,RST=>RST,CLK=>CB1,COUT=>CB2,CQ=>CQB2);</p><p> U6: C
22、NT10 PORT MAP (EN=>E,RST=>RST,CLK=>CB2,CQ=>CQB3);</p><p> U7: SCAN PORT MAP (A1=>CQA1,A2=>CQA2,A3=>CQA3,B1=>CQB1,</p><p> B2=>CQB2,B3=>CQB3,CLK=>CLK,SG=>SG
23、,BT=>BT);</p><p> U8:LMOV PORT MAP (EN=>E,KL=>CQA2,KR=>CQB2,RST=>RST,LED=>LED);</p><p> END ARCHITECTURE ONE;</p><p> 2、文件名:scan</p><p> LIBRARY I
24、EEE; --數(shù)碼管顯示模塊</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY SCAN IS </p><p><b> PORT (</b></p>
25、<p> CLK :IN STD_LOGIC;</p><p> A1,A2,A3,B1,B2,B3:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> SG:OUT STD_LOGIC_VECTOR(8 DOWNTO 0);</p><p> BT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0
26、)</p><p><b> );</b></p><p><b> END;</b></p><p> ARCHITECTURE ONE OF SCAN IS</p><p> SIGNAL CNT4:STD_LOGIC_VECTOR(2 DOWNTO 0);</p><
27、;p> SIGNAL A :STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> SIGNAL CLK1:STD_LOGIC;</p><p><b> BEGIN </b></p><p> P1:PROCESS(CNT4)</p><p><b> BEGIN&l
28、t;/b></p><p> CASE CNT4 IS</p><p> WHEN "000"=>BT<="10000000";A<=A1;</p><p> WHEN "001"=>BT<="01000000";A<=A2;</p&
29、gt;<p> WHEN "010"=>BT<="00100000";A<=A3;</p><p> WHEN "011"=>BT<="00000100";A<=B1;</p><p> WHEN "100"=>BT<=&q
30、uot;00000010";A<=B2;</p><p> WHEN "101"=>BT<="00000001";A<=B3;</p><p> WHEN OTHERS=>BT<="00000000";</p><p> END CASE ;</p&
31、gt;<p> END PROCESS P1;</p><p> ---------------------------------</p><p> P2:PROCESS (CLK)</p><p> VARIABLE CT:INTEGER RANGE 0 TO 50000;</p><p><b> BE
32、GIN </b></p><p> IF CLK'EVENT AND CLK='1' THEN --1000HZ </p><p> IF CT<49999 THEN</p><p><b> CT:=CT+1;</b></p><p> CLK1<='0&
33、#39;;</p><p><b> ELSE </b></p><p><b> CT:=0;</b></p><p> CLK1<='1';</p><p><b> END IF;</b></p><p><b&
34、gt; END IF;</b></p><p> END PROCESS P2;</p><p> PROCESS(CLK1)</p><p><b> BEGIN </b></p><p> IF CLK1'EVENT AND CLK1='1' THEN</p>
35、<p> IF CNT4<5 THEN</p><p> CNT4<=CNT4+1;</p><p><b> ELSE </b></p><p> CNT4<="000";</p><p><b> END IF;</b></p&
36、gt;<p><b> END IF;</b></p><p> END PROCESS;</p><p> ------------------------------------</p><p> PROCESS (A)</p><p><b> BEGIN </b>&l
37、t;/p><p> CASE A IS </p><p> WHEN "0000"=>SG<="100000000";</p><p> WHEN "0001"=>SG<="111110001";</p><p> WHEN "
38、;0010"=>SG<="001001000";</p><p> WHEN "0011"=>SG<="001100000";</p><p> WHEN "0100"=>SG<="000110010";</p><p&g
39、t; WHEN "0101"=>SG<="000100100";</p><p> WHEN "0110"=>SG<="000000100";</p><p> WHEN "0111"=>SG<="111110000";</
40、p><p> WHEN "1000"=>SG<="000000000";</p><p> WHEN "1001"=>SG<="100011111";</p><p> WHEN "1010"=>SG<="0001001
41、00";</p><p> WHEN "1011"=>SG<="000011000";</p><p> WHEN "1100"=>SG<="010001100";</p><p> WHEN "1101"=>SG<
42、="001001000";</p><p> WHEN "1110"=>SG<="001000000";</p><p> WHEN "1111"=>SG<="000011111";</p><p> WHEN OTHERS=>NU
43、LL;</p><p> END CASE ;</p><p> END PROCESS;</p><p><b> END;</b></p><p> 3、文件名:cnt10</p><p> LIBRARY IEEE; --頻率計數(shù)模塊</p><p&g
44、t; USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL; </p><p> ENTITY CNT10 IS</p><p><b> PORT(</b></p><p> CLK,RST,EN:STD_LOGIC;<
45、;/p><p> COUT:OUT STD_LOGIC;</p><p> CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)</p><p><b> );</b></p><p><b> END;</b></p><p> ARCHITECTU
46、RE ONE OF CNT10 IS</p><p><b> BEGIN</b></p><p> PROCESS(CLK,RST,EN)</p><p> VARIABLE CQI:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b> BEGIN </b>
47、</p><p> IF RST='1' THEN </p><p> CQI:=(OTHERS=>'0');</p><p> ELSIF CLK'EVENT AND CLK='1' THEN </p><p> IF EN='1' THEN </p
48、><p> IF CQI<9 THEN CQI:=CQI+1;</p><p> ELSE CQI :=(OTHERS=>'0');</p><p><b> END IF ;</b></p><p><b> END IF;</b></p><p
49、><b> END IF;</b></p><p> IF CQI=9 THEN COUT<='0' ;</p><p> ELSE COUT<='1';</p><p><b> END IF;</b></p><p><b>
50、 CQ<=CQI;</b></p><p> END PROCESS;</p><p><b> END;</b></p><p> 4、文件名:imov</p><p> LIBRARY IEEE; --LED指示模塊</p><p> USE IEEE.S
51、TD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY LMOV IS </p><p><b> PORT (</b></p><p> KL ,KR:IN STD_LOGIC_VECTOR(3 DOWNTO
52、 0) ;</p><p> LED:OUT STD_LOGIC_VECTOR(8 DOWNTO 0);</p><p> EN : OUT STD_LOGIC;</p><p> RST:IN STD_LOGIC</p><p><b> );</b></p><p><b>
53、 END ;</b></p><p> ARCHITECTURE ONE OF LMOV IS</p><p><b> BEGIN </b></p><p> PROCESS(RST,KL,KR)</p><p><b> BEGIN </b></p><
54、p> IF RST='1' THEN LED<="111101111";EN<='1';</p><p> ELSIF KL-KR=1 THEN LED<="111011111";EN<='1';</p><p> ELSIF KL-KR=2 THEN LED&
55、lt;="110111111";EN<='1';</p><p> ELSIF KL-KR=3 THEN LED<="101111111";EN<='1';</p><p> ELSIF KL-KR=4 THEN LED<="011111111";EN<='
56、0';</p><p> ELSIF KR-KL=1 THEN LED<="111110111";EN<='1';</p><p> ELSIF KR-KL=2 THEN LED<="111111011";EN<='1' ;</p><p> ELSIF K
57、R-KL=3 THEN LED<="111111101";EN<='1';</p><p> ELSIF KL-KR=4 THEN LED<="111111110";EN<='0';</p><p> ELSIF KR-KL=0 THEN LED<="111101111&qu
58、ot;;EN<='1';</p><p> ELSE NULL;</p><p><b> END IF;</b></p><p> END PROCESS;</p><p><b> END;</b></p><p> 3、仿真及仿真結(jié)果分析
59、</p><p><b> 計數(shù)器仿真波形</b></p><p> LED顯示模塊仿真波形</p><p><b> 系統(tǒng)仿真波形</b></p><p><b> 4、實驗調(diào)試結(jié)果</b></p><p> 1編程下載及配置,選擇Assig
60、nments —Assignments Editor ,在Assignments Edito窗口中選擇pin標(biāo)簽頁,按下圖分配引腳。</p><p> 2 重編譯,并進行編程下載到SOPC開發(fā)板進行功能驗證。</p><p> 3 驗證,按key 1和key10,觀察led燈和數(shù)碼管的顯示變化是否符合設(shè)計要求,如果和設(shè)計不符合對程序進行更改,知道符合設(shè)計要求。</p>
61、<p><b> 三、結(jié)論及心得體會</b></p><p> 這次課程設(shè)計使我懂得了理論與實際相結(jié)合的重要性,單單理論遠(yuǎn)不能完成工作,只有把所學(xué)的理論知識與實踐結(jié)合起來,從實踐中積累經(jīng)驗才能提高自己的實際動手能力和獨立思考的能力。在實踐的過程中遇到了許多問題在老師和同學(xué)的幫助下最終解決了,并完成了設(shè)計。在以后的學(xué)習(xí)中不僅要深刻理解基礎(chǔ)知識,還要多做設(shè)計。通過這次課程設(shè)計,我也
62、越來越強烈地感到要掌握一門技術(shù),唯一的辦法也是最好的辦法就是實踐。只有通過實踐才能將書本上的知識應(yīng)用,也只有實踐才能發(fā)現(xiàn)很多問題,真正掌握知識,學(xué)以致用。雖然遇到的問題很多,但是同時得到很多有用的經(jīng)驗。</p><p><b> 參考資料</b></p><p> [1] 潘松著.EDA技術(shù)實用教程(第二版). 北京:科學(xué)出版社,2005.</p>
63、<p> [2]《電子設(shè)計自動化(EDA)技術(shù)實驗教程》</p><p> [3]《VHDL硬件描述實驗指導(dǎo)書》</p><p> [4]《VHDL數(shù)字電路設(shè)計與應(yīng)用實踐教程》</p><p> [5] 焦素敏.《EDA應(yīng)用技術(shù)》 清華大學(xué)出版社,2002</p><p> [6] 高吉祥. 電子技術(shù)基礎(chǔ)實驗與課程設(shè)計.
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- eda課程設(shè)計---拔河游戲機
- eda拔河游戲機課程設(shè)計報告
- eda拔河游戲機課程設(shè)計報告
- 拔河游戲機課程設(shè)計
- 拔河游戲機課程設(shè)計
- 拔河游戲機課程設(shè)計
- 拔河游戲機課程設(shè)計
- 簡易拔河游戲機課程設(shè)計
- 拔河游戲機課程設(shè)計 (2)
- 拔河游戲機課程設(shè)計報告
- 拔河游戲機課程設(shè)計報告
- 游戲機eda課程設(shè)計報告
- 電子拔河游戲機課程設(shè)計報告
- eda課程設(shè)計--乒乓游戲機
- 單片機拔河游戲機課程設(shè)計
- 數(shù)電課程設(shè)計---拔河游戲機的設(shè)計
- 數(shù)字電路課程設(shè)計-拔河游戲機
- 電子課程設(shè)計---拔河游戲機控制器
- eda課程設(shè)計--乒乓球游戲機
- 數(shù)字電路課程設(shè)計---電子拔河游戲機
評論
0/150
提交評論