eda數(shù)字邏輯乒乓球比賽游戲機_第1頁
eda數(shù)字邏輯乒乓球比賽游戲機_第2頁
eda數(shù)字邏輯乒乓球比賽游戲機_第3頁
eda數(shù)字邏輯乒乓球比賽游戲機_第4頁
eda數(shù)字邏輯乒乓球比賽游戲機_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

/湖南涉外經(jīng)濟學院課程設計報告課程名稱:EDA技術與應用報告題目:乒乓球比賽游戲機的設計學生姓名: 所在學院:專業(yè)班級:學生學號:指導教師: 2016年12月28日課程設計任務書報告題目乒乓球比賽游戲機設計完成時間學生姓名專業(yè)班級指導教師職稱總體設計要求和技術要點1.任務及要求:設計一個由甲、乙雙方參賽,有裁判的3人乒乓球游戲機。用8個LED排成一條直線,以中點為界,兩邊各代表參賽雙方的位置,其中一只點亮的LED指示球的當前位置,點亮的LED依此從左到右,或從右到左,其移動的速度應能調(diào)節(jié)。當“球”(點亮的那只LED)運動到某方的最后一位時,參賽者應能果斷地按下位于自己一方的按鈕開關,即表示啟動球拍擊球。若擊中,則球向相反方向移動;若未擊中,則對方得1分。一方得分時,電路自動響鈴3秒,這期間發(fā)球無效,等鈴聲停止后方能繼續(xù)比賽。設置自動記分電路,甲、乙雙方各用2位數(shù)碼管進行記分顯示,每計滿21分為1局。甲、乙雙方各設一個發(fā)光二極管,表示擁有發(fā)球權,每隔5次自動交換發(fā)球權,擁有發(fā)球權的一方發(fā)球才有效。按《湖南涉外經(jīng)濟學院課程設計管理辦法》要求提交課程設計報告。工作內(nèi)容及時間進度安排第17周:周1周3:立題、論證方案設計周4周5:預答辯第18周:周1周3:仿真實驗8周4周5:驗收答辯課程設計成果1.與設計內(nèi)容對應的軟件程序2.課程設計總結報告摘要

乒乓球運動是一項受大眾非常喜愛的運動,它是一項集健身性,競技性和娛樂性為一體的運動。乒乓球是一項非常受大眾喜歡的運動,幾十年來,乒乓球運動在中國迅速興起,很重要的原因就是對客觀條件要求不高,隨時隨處就能玩起來。乒乓球運動越來越多地被作為增強智力、提高工作效率以及保健、醫(yī)療和康復的極佳手段而引起各方面的重視。如今,人們生活太忙碌,很多的人只能通過網(wǎng)絡來玩乒乓球游戲,而乒乓球游戲機正好解決了人們的困擾。它簡單易行,只要簡簡單單幾個手指的操作就能達到同樣娛樂跟鍛煉的效果。關鍵字:數(shù)顯;頻率;分頻;計數(shù)器;狀態(tài)機;目錄一、總體設計思想……………………11.基本原理…………2二、設計步驟與調(diào)試過程……………21.總體設計電路…………22.模塊設計與模塊程序…………33.仿真結果分析………12三、結論與心得………………………13四、參考文獻……………………13一、總體設計思想1.基本原理用8個(或更多個)LED排成一條直線,以中點為界,兩邊各代表參賽雙方的位置,其中一只點亮的LED指示球的當前位置,點亮的LED依此從左到右,或從右到左,其移動的速度應能調(diào)節(jié)。當“球”(點亮的那只LED)運動到某方的最后一位時,參賽者應能果斷地按下位于自己一方的按鈕開關,即表示啟動球拍擊球。若擊中,則球向相反方向移動;若未擊中,則對方得1分。一方得分時,電路自動響鈴3秒,這期間發(fā)球無效,等鈴聲停止后方能繼續(xù)比賽。設置自動記分電路,甲、乙雙方各用2位數(shù)碼管進行記分顯示,每計滿21分為1局。甲、乙雙方各設一個發(fā)光二極管,表示擁有發(fā)球權,每隔5次自動交換發(fā)球權,擁有發(fā)球權的一方發(fā)球才有效。2.設計框圖1.1設計流程圖二、設計步驟和調(diào)試過程1、總體設計電路用8個發(fā)光二極管代表乒乓球臺,在游戲機的兩側設置兩個開關,一個是發(fā)球開關,一個是擊球開關,甲方按動發(fā)球開關時,靠近甲方的第一盞燈亮,然后發(fā)光二極管由甲向乙依次點亮,代表乒乓球在移動。當球過網(wǎng)后,乙方就可擊球。若乙方提前擊球或沒擊中球,則判乙方失分,甲方自動加分,重新發(fā)球比賽繼續(xù)進行到一方記分到21分,該局結束,記分牌清零,可以開始新的一局比賽。使用VHDL進行電路系統(tǒng)設計,利用PLD來實現(xiàn)控制器的硬件電路1.2乒乓游戲機的電路框圖2、模塊設計和相應模塊程序系統(tǒng)各功能模塊的實現(xiàn)1、模塊SEL的實現(xiàn)libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityselisport(clk:instd_logic;sell:outstd_logic_vector(2downto0));endsel;architecturesel_arcofselisbeginprocess(clk)variabletmp:std_logic_vector(2downto0);beginif(clk'eventandclk='1')thenif(tmp="000")thentmp:="001";elsiftmp="001"thentmp:="100";elsiftmp="100"thentmp:="101";elsiftmp="101"thentmp:="000";endif;endif;sell<=tmp;endprocess;endsel_arc;2、模塊CORNA的實現(xiàn)LIBRARYIEEE;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycomaisport(clr,af,aj,bf,bj,clk:instd_logic;shift:outstd_logic_vector(7downto0);ah,al,bh,bl:outstd_logic_vector(3downto0));endcoma;architecturecom_arcofcomaissignalamark,bmark:integer;beginprocess(clr,clk)variablea,b:std_logic;variableshe:std_logic_vector(7downto0);beginifclr='0'thena:='0';b:='0';she:="00000000";amark<=0;bmark<=0;elsifclk'eventandclk='1'thenifa='0'andb='0'andaf='0'thena:='1';she:="10000000";elsifa='0'andb='0'andbf='0'thenb:='1';she:="00000001";elsifa='1'andb='0'thenifshe>8thenifbj='0'thenamark<=amark+1;a:='0';b:='0';she:="00000000";elseshe:='0'&she(7downto1);endif;elsifshe=0thenamark<=amark+1;a:='0';b:='0';elseifbj='0'thena:='0';b:='1';elseshe:='0'&she(7downto1);endif;endif;elsifa='0'andb='1'thenifshe<16andshe/=0thenifaj='0'thenbmark<=bmark+1;a:='0';b:='0';she:="00000000";elseshe:=she(6downto0)&'0';endif;elsifshe=0thenbmark<=bmark+1;amark<=0;bmark<=0;elsifclk'eventandclk='1'thenifa='0'andb='0'andaf='0'thena:='1';she:="10000000";elsifa='0'andb='0'andbf='0'thenb:='1';she:="00000001";elsifa='1'andb='0'thenifshe>8thenifbj='0'thenamark<=amark+1;a:='0';b:='0';she:="00000000";elseshe:='0'&she(7downto1);endif;elsifshe=0thenamark<=amark+1;a:='0';b:='0';elseifbj='0'thena:='0';b:='1';elseshe:='0'&she(7downto1);endif;endif;elsifa='0'andb='1'thenifshe<16andshe/=0thenifaj='0'thenbmark<=bmark+1;a:='0';b:='0';she:="00000000";elseshe:=she(6downto0)&'0';endif;elsifshe=0thenbmark<=bmark+1;endif;endif;endif;al<=ala;bl<=bla;ah<=aha;bh<=bha;endif;endprocess;endcom_arc;3、模塊CH41A的實現(xiàn)libraryieee;useieee.std_logic_1164.all;entitych41aisport(sel:instd_logic_vector(2downto0);d0,d1,d2,d3:instd_logic_vector(3downto0);q:outstd_logic_vector(3downto0));endch41a;architecturech41_arcofch41aisbeginprocess(sel)begincaseseliswhen"100"=>q<=d0;when"101"=>q<=d1;when"000"=>q<=d2;whenothers=>q<=d3;endcase;endprocess;endch41_arc;4、模塊DISPA的實現(xiàn)libraryieee;useieee.std_logic_1164.all;entitydispaisport(d:instd_logic_vector(3downto0);q:outstd_logic_vector(6downto0));enddispa;architecturedispa_arcofdispaisbeginprocess(d)begincasediswhen"0000"=>q<="0111111";when"0001"=>q<="0000110";when"0010"=>q<="1011011";when"0011"=>q<="1001111";when"0100"=>q<="1100110";when"0101"=>q<="1101101";when"0110"=>q<="1111101";when"0111"=>q<="0100111";when"1000"=>q<="1111111";whenothers=>q<="1101111";endcase;endprocess;enddispa_arc;3、仿真及仿真結果分析在這個仿真圖中,看到serve數(shù)組為1,代表乙發(fā)球。I從8開始依次遞減計數(shù),控制發(fā)光管亮暗light信號也隨著i的數(shù)值變化,見圖1.2所示。由light端口輸出的高電平驅(qū)動芯片以外的發(fā)光二極管使之點亮,這樣就可以通過發(fā)光二極管模擬乒乓球的運動軌跡。可以看到,在甲該擊球的時候沒有擊球,也就是hit1在state狀態(tài)6的時候沒有高電平‘1’輸入,則乙得分,count2由0變1,score22的值隨之變化。從最后一行state值的變化,可以清楚分析

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論