資源描述:
《數(shù)字電路擲骰子》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、.數(shù)字電路實(shí)驗(yàn)報(bào)告擲骰子游戲電路的設(shè)計(jì)與實(shí)現(xiàn)班級:學(xué)號:姓名:2014年11月9日..一、實(shí)驗(yàn)任務(wù)與要求1.實(shí)驗(yàn)?zāi)康蘑龠M(jìn)一步掌握VHDL語言和QuartusII的使用,并且用VHDL語言實(shí)現(xiàn)狀態(tài)機(jī)設(shè)計(jì);②熟悉數(shù)字系統(tǒng)設(shè)計(jì)方法:傳統(tǒng)的系統(tǒng)硬件設(shè)計(jì)方法、層次化結(jié)構(gòu)設(shè)計(jì)、自頂向下設(shè)計(jì)方法;③學(xué)會使用方框圖、邏輯流程圖來設(shè)計(jì)有限狀態(tài)機(jī)系統(tǒng).2.實(shí)驗(yàn)儀器(軟件與硬件)及元器件(1)QuartusII;(2)計(jì)算機(jī);(3)MAXII(EPM1270T144C5).3.實(shí)驗(yàn)內(nèi)容設(shè)計(jì)并實(shí)現(xiàn)一個擲骰子游戲電路。基本要求:1、電路
2、可供甲乙二人游戲,游戲者甲使用的按鍵為BTN0,游戲者乙使用的按鍵為BTN1。2、每按一次按鍵,代表擲一次骰子,可隨機(jī)得到1~6范圍內(nèi)的兩個數(shù)字。3、甲乙按鍵產(chǎn)生的隨機(jī)數(shù)字分別用數(shù)碼管DISP0-DISP1、DISP2-DISP3顯示,并用DISP7顯示比賽局?jǐn)?shù),比賽結(jié)束用8×8點(diǎn)陣顯示獲勝方,并伴有聲音效果。4、具體游戲規(guī)則如下:(1)第一局比賽,甲乙依次各按一次按鍵,按鍵所得兩數(shù)之和為7或11者勝;若無人取勝,則進(jìn)行第二局比賽;(2)第二局比賽,甲乙每人各按一次按鍵,按鍵所得二數(shù)之和與第一局比賽相同者獲勝,
3、若無人獲勝,則進(jìn)行第三局比賽,重復(fù)進(jìn)行步驟(2),直到出現(xiàn)勝者為止。(3)游戲局?jǐn)?shù)最多進(jìn)行六局。在第六局比賽時,若重復(fù)進(jìn)行步驟(2)仍未出現(xiàn)勝者,以按鍵所得兩數(shù)之和最大者為獲勝方。提高要求:1、增加多人游戲的功能,數(shù)碼管可分時記錄顯示每個游戲者的骰子點(diǎn)數(shù)。2、點(diǎn)陣顯示增加游戲開機(jī)動畫、結(jié)束動畫,并伴有樂曲播放。3、自擬其它功能。..二、問題分析1.背景骰子應(yīng)用十分廣泛,現(xiàn)代社會上流行有各種定位骰子、黃金骰子、感應(yīng)骰子、遙控骰子等,它是娛樂游戲的一種道具,是許多游戲必不可少的工具之一,比如麻將等。早先是用骨頭、木
4、頭等制成的立方體小方塊,六面分別刻有一、二、三、四、五、六點(diǎn),只有1,2,3,4,5,6這六個數(shù)字,有的地方叫色子。用骨頭、木頭等制成的立方骰子,在使用時通常是是把骰子搖動后擲落,以上面的數(shù)作為選取的數(shù)字。在這六個數(shù)字當(dāng)中,每擲一次,其中一個數(shù)出現(xiàn)的概率為1/6.所謂1/6的概率,就是說這六個數(shù)并不是按某個順序出現(xiàn)的,而是隨機(jī)的。如果不考慮骰子的形狀和使用方法的約束來抽象評價它的功能,那么骰子就是一種“從1~6的數(shù)字,每次只隨機(jī)地選擇1個數(shù)字的選擇裝置”。本游戲電路是模擬擲骰子,可供兩人游戲。游戲者每按鍵可以得
5、到1~6范圍的兩個數(shù)字,并按一定的規(guī)則決定勝負(fù)。2.設(shè)計(jì)分析由于按一次鍵產(chǎn)生1-6中的兩個數(shù),它們的和介于2和12之間,本實(shí)驗(yàn)中規(guī)定第一次如果和為7或者11者獲勝,若無人獲勝,需要繼續(xù)進(jìn)行,第二次按鍵后獲得的數(shù)的和需要與第一次的和進(jìn)行比較,所以需要保存第一次的和,如果相同,則獲勝;否則,按失敗處理。如果仍然沒有人獲勝,繼續(xù)比賽。3.可行性分析通過以上分析,此游戲可以借助MAXII(EPM1270T144C5)開發(fā)板實(shí)現(xiàn),用時鐘信號產(chǎn)生隨機(jī)數(shù),借助EDA開發(fā)板的強(qiáng)大的邏輯算數(shù)處理與控制能力進(jìn)行用戶的交互控制與處理
6、,同時,我們已經(jīng)掌握了電路、模電、數(shù)電等專業(yè)知識,并且能針對EDA開發(fā)板進(jìn)行熟練的VHDL編程,加之本項(xiàng)目比較簡單,不需要多少經(jīng)費(fèi),所以本電子設(shè)計(jì)具有可行性。4.用戶使用說明游戲時,游戲者交替按鍵,次序不可顛倒,不可重復(fù)按鍵,分出勝負(fù)后,數(shù)碼管顯示不在變化。若要重新開始比賽,請按復(fù)位鍵繼續(xù)。一、系統(tǒng)設(shè)計(jì)1.設(shè)計(jì)思路數(shù)字系統(tǒng)是指由若干數(shù)字電路和邏輯部件構(gòu)成的能夠處理或傳送數(shù)字信息設(shè)備。數(shù)字系統(tǒng)通??梢苑譃槿齻€部分:輸入/輸出接口、數(shù)據(jù)處理器和控制器。其中輸入/輸出接口是完成將其他物理量轉(zhuǎn)化為數(shù)字量或?qū)?shù)字量轉(zhuǎn)化為
7、其他物理量的功能部件。數(shù)據(jù)處理器按功能又可以分解成若干子處理單元,通常稱為子系統(tǒng),每個子系統(tǒng)完成一定的邏輯功能,計(jì)數(shù)器、譯碼器、運(yùn)算器等都可作為一個子系統(tǒng),控制器管理各個子系統(tǒng)的局部及整個系統(tǒng)按規(guī)定順序工作。本游戲系統(tǒng)將采用自頂向下的數(shù)字系統(tǒng)的設(shè)計(jì)方法??梢钥闯觯@種方法的關(guān)鍵在于設(shè)計(jì)控制器,其余部分只是選用不同功能模塊而已,..這就將一個復(fù)雜的數(shù)字系統(tǒng)設(shè)計(jì)簡化為一個時序機(jī)的設(shè)計(jì)。而控制器的設(shè)計(jì)關(guān)鍵在于建立邏輯流程圖,即關(guān)鍵是對系統(tǒng)初始方案的確定,這在整個設(shè)計(jì)過程中是最富有創(chuàng)造性的,以后各步只不過是按一定方法向
8、下延伸。這也就是自頂向下設(shè)計(jì)方法的優(yōu)越所在。2.頂層框圖數(shù)碼管RESETBTN骰子控制器8*8BEEP3.對外接口框圖BEEPCLK骰子控制器CATRESET供電LED8*8DISPLAYBTN1BTN04.邏輯劃分框圖..BEEPBTNRESET計(jì)數(shù)器防抖骰子控制器8*8點(diǎn)陣數(shù)碼管分頻器CLK5.狀態(tài)轉(zhuǎn)移框圖6.流程框圖..第2到5局開始只有一人與第一局相同N=1只有一人的和為7或1