




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、北華大學(xué)電子系統(tǒng)綜合實(shí)習(xí)報(bào)告學(xué) 院 : 電氣信息工程學(xué)院專業(yè)班級 :通信工程 姓名 : 閆夢迪學(xué) 號 : 指導(dǎo)老師 :董勝實(shí)習(xí)時(shí)間: 2015。11。30-12.11目錄1. 實(shí)習(xí)題目P32. 實(shí)習(xí)目的P33. 實(shí)習(xí)技術(shù)要求P34. 實(shí)現(xiàn)過程P35. 功能及代碼P56. 仿真及硬件測試P97. 實(shí)習(xí) 心得P128. 教師 評語P14一。實(shí)習(xí)題目自動(dòng)售貨機(jī)設(shè)計(jì)二。實(shí)習(xí)目的通過本課題的研究,可以掌握電子控制系統(tǒng)的基本原理與其實(shí)現(xiàn),通過對各個(gè)模塊的編程及其仿真,對QuartusII軟件的使用有所了解。每個(gè)波形模塊的VHDL實(shí)現(xiàn)加深了硬件描述語言的學(xué)習(xí).最終的頂層文件的調(diào)試,更是體現(xiàn)了綜合知識的運(yùn)用.
2、三。實(shí)習(xí)技術(shù)要求本設(shè)計(jì)要實(shí)現(xiàn)自動(dòng)售貨機(jī)的基本功能,如貨物信息存儲、商品選擇、進(jìn)程控制、硬幣處理、余額計(jì)算、顯示等功能.利用軟件QuartusII平臺,采用VHDL硬件描述語言編程的設(shè)計(jì)方法設(shè)計(jì)系統(tǒng)核心電路的硬件程序,與一般的軟件開發(fā)不同,VHDL編程更需要熟悉一些底層的硬件知識,特別是數(shù)字邏輯電路的設(shè)計(jì),因此VHDL編程的方法、思路都要更多的與硬件電路聯(lián)系起來.完成系統(tǒng)各個(gè)功能模塊的硬件程序設(shè)計(jì)后,在軟件平臺上進(jìn)行編譯和電路仿真,最后生成的目標(biāo)文件下載到實(shí)驗(yàn)臺內(nèi)的FPGA芯片以實(shí)現(xiàn)該系統(tǒng),并在實(shí)驗(yàn)臺上對設(shè)計(jì)進(jìn)行驗(yàn)證。四。實(shí)現(xiàn)過程 1)、根據(jù)設(shè)計(jì)要求實(shí)現(xiàn)過程分兩部分:a、面向客戶端模塊設(shè)計(jì) 基于
3、Quartus2軟件環(huán)境下,應(yīng)用VHEDL語言進(jìn)行程序設(shè)計(jì)。以clk輸入端口進(jìn)行商品選擇,coin1輸入端口做錢數(shù)輸入,F(xiàn)inish輸入端口做確認(rèn),進(jìn)而完成商品購買.b、面向個(gè)體端模塊設(shè)計(jì)以Get端口進(jìn)行對商品價(jià)格修改的確認(rèn),以ST端口進(jìn)行選擇要修改的商品種類,coin0作為單價(jià)輸入端口。2)、整體結(jié)構(gòu)框圖商品選擇輸入錢數(shù)設(shè)定控制器品種選擇顯示譯碼價(jià)格設(shè)定3)、程序框圖開始開始商品選擇Y返還輸入錢數(shù)YN商品選擇價(jià)格設(shè)定輸入錢數(shù)錢數(shù)>=單價(jià)?N結(jié)束重新輸入錢數(shù)? 確認(rèn)、找零 ( 商品、價(jià)格設(shè)定模塊)交易完成結(jié)束 ( 客戶端模塊程序框圖)五.功能及代碼功能:顧客商品選擇、付錢購買、找零,個(gè)體
4、商戶對商品種類及價(jià)格的修改,商品數(shù)量統(tǒng)計(jì)代碼:library ieee;use ieee。std_logic_arith.all;use ieee。std_logic_1164.all;use ieee。std_logic_unsigned。all;entity S1 isport ( clk:in std_logic; -系統(tǒng)時(shí)鐘r,set,st,get,finish: in std_logic; -設(shè)定、買、選擇、完成信號coin0,coin1: in std_logic_vector(3 downto 0); 輸入錢數(shù)act0,act1:out std_logic_vector(3 do
5、wnto 0); 顯示、開關(guān)信號y0,y1,y2,y3,y4:out std_logic_vector(6 downto 0)); 輸入錢數(shù)、商品價(jià)格、找零顯示數(shù)據(jù)end S1;architecture behav of S1 issignal item0,item1: std_logic_vector(1 downto 0); 商品種類signal Q: INTEGER RANGE 20 DOWNTO 0; -找零signal pri0,pri1,pri2,pri3: std_logic_vector(3 downto 0);signal quan0:integer:=9; signal q
6、uan1:integer:=9;signal quan2:integer:=9;signal quan3:integer:=9; 數(shù)量begin -設(shè)定部分com0:process(get,st,coin0)variable C:INTEGER RANGE 20 DOWNTO 0; begin if get='1 then if stevent and st=1 then item0=item0+1; -對商品進(jìn)行she zhi if item0="00” then act0<="1000”;pri0=coin0;C:=CONV_INTEGER(coin0);
7、-she ding shi,自動(dòng)售貨機(jī)對4種商品的操作 elsifitem0=”01"then act0="0100”;pri1=coin0;C:=CONV_INTEGER(coin0); elsif item0=”10” then act0=”0010";pri2=coin0;C:=CONV_INTEGER(coin0); elsif item0="11” then act0="0001";pri3=coin0;C:=CONV_INTEGER(coin0); end if; end if; else act0="0000&
8、quot;; end if;if r=1' C=0;end if; case C is -設(shè)定價(jià)格when 0 =y3<="1000000”; when 1 =y3<=”1111001”; when 2 =y3=”0100100"; when 3 =y3="0110000" when 4 =y3="0011001"; when 5 =y3="0010010”; when 6 =y3=”0000010"; when 7 =>y3="1111000”; when 8 =>y3&
9、lt;="0000000"; when 9 =>y3="0010000”; when others=>y3=”1111111" end case; end process com0;com1:process(coin1,clk,Q) -購買部分variable A,B,D:INTEGER RANGE 20 DOWNTO 0; begin if clkevent and clk=1 then item1=item1+1; -對商品進(jìn)行循環(huán)選擇 if item1=”00" then act1<="1000”; B:=CO
10、NV_INTEGER(pri0); 購買時(shí),自動(dòng)售貨機(jī)對4種商品的操作 elsif item1=”01” then act1=”0100”; B:=CONV_INTEGER(pri1);elsif item1="10” then act1=”0010" B:=CONV_INTEGER(pri2); elsif item1="11” then act1=”0001”; B:=CONV_INTEGER(pri3); end if; end if;A:=CONV_INTEGER(coin1); if finishevent and finish=1' then
11、if item1=”00” and coin1=pri0 then Q=AB; D:=quan0-1;quan0=quan01; elsif item1=”01" and coin1=pri1 then Q<=A-B; D:=quan1-1;quan1<=quan11; elsif item1="10” and coin1>=pri2 then Q=AB; D:=quan2-1;quan2<=quan2-1; elsif item1=”11” and coin1=pri3 then Q<=A-B; D:=quan31;quan3<=qua
12、n3-1; else Q=AB; end if; end if; if set=1' then item1="00";act1<=”0000”;Q=0;B:=0; end if; case coin1 is -設(shè)定錢數(shù) when ”0000”=y0=”1000000”; when ”0001”=y0<=”1111001”; when "0010”=y0="0100100”; when ”0011"=>y0<=”0110000" when ”0100"=y0=”0011001”; when ”0
13、101”=>y0=”0010010”; when ”0110”=y0<="0000010”; when "0111”=y0<=”1111000”; when ”1000”=y0=”0000000"; when ”1001”=>y0<=”0010000”; when others=y0="1111111”; end case; case B is -單價(jià)錢數(shù) when 0 =>y1<=”1000000”; when 1 =y1=”1111001”; when 2 =y1="0100100" wh
14、en 3 =y1=”0110000"; when 4 =y1<="0011001"; when 5 =>y1<=”0010010" when 6 =y1="0000010" when 7 =y1="1111000”; when 8 =y1<=”0000000”; when 9 =>y1<="0010000" when others=y1=”1111111”; end case; case Q is -返還錢數(shù) when 0 =y2<=”1000000"
15、when 1 =>y2=”1111001" when 2 =y2=”0100100”; when 3 =>y2<=”0110000" when 4 =y2=”0011001”; when 5 =y2=”0010010”; when 6 =y2="0000010”; when 7 =>y2=”1111000" when 8 =y2=”0000000"; when 9 =>y2="0010000”; when others=y2=”1111111"; end case; case D is 剩余數(shù)量
16、 when 0 =>y4<="1000000”; when 1 =y4=”1111001"; when 2 =y4=”0100100”; when 3 =y4<=”0110000”; when 4 =y4=”0011001”; when 5 =>y4<=”0010010"; when 6 =y4=”0000010"; when 7 =y4<=”1111000" when 8 =y4=”0000000"; when 9 =>y4="0010000”; when others=>y
17、4<=”1111111"; end case; end process com1;end behav;六。仿真及硬件測試1)、引腳鎖定2)、RTL電路圖3)、時(shí)序仿真4)、硬件測試1。get=1 設(shè)定內(nèi)部價(jià)格2。隱藏內(nèi)部設(shè)定價(jià)格3。輸入8元 單價(jià)3元 找零5元 顯示剩余數(shù)量8個(gè)7。實(shí)習(xí)心得在這次實(shí)驗(yàn)中,通過老師的介紹和我們自己的學(xué)習(xí),我們學(xué)會了VHDL程序的基本語法和操作,熟悉了程序的基本結(jié)構(gòu)和設(shè)計(jì),學(xué)會了quartus軟件的操作和系統(tǒng)的功能仿真。我們小組的組員進(jìn)行了合理的分工和良好的溝通,這對程序的實(shí)驗(yàn)十分重要。在這次的程序設(shè)計(jì)中,通過實(shí)驗(yàn)我們完成了程序,達(dá)到了學(xué)習(xí)的目的.經(jīng)過這次對自動(dòng)售貨機(jī)系統(tǒng)的設(shè)計(jì),讓我對EDA設(shè)計(jì)有了更一步的認(rèn)識,同時(shí)也對EDA這門課程有了更深入的了解.這次設(shè)計(jì)讓我了解了關(guān)于自動(dòng)售貨機(jī)的原理與設(shè)計(jì)理念,要設(shè)計(jì)一個(gè)電路先進(jìn)行軟件模擬仿真再進(jìn)行實(shí)際的硬件電路測試。當(dāng)然這個(gè)設(shè)計(jì)存在許多的不足,比如在預(yù)覽商品時(shí)只能順序?yàn)g覽,而不能隨機(jī)點(diǎn)擊瀏覽,這也是為了排除程序的糅雜。并且每次賣完一種商品都得復(fù)位,不能進(jìn)行連續(xù)的購買,而且在購買時(shí)遇到的情況考慮不周到。這次設(shè)計(jì)提高了我們的邏輯思維能力,使我們在程序的改寫和運(yùn)用上有了很大的進(jìn)步.加深了我們對VHDL硬件語言的認(rèn)識,進(jìn)一步增進(jìn)了對一些常見器件的了解
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電網(wǎng)公司與新能源汽車充電樁運(yùn)營商戰(zhàn)略合作框架協(xié)議
- 生物醫(yī)藥企業(yè)轉(zhuǎn)讓定價(jià)稅務(wù)審計(jì)與市場準(zhǔn)入研究合作協(xié)議
- 網(wǎng)絡(luò)文學(xué)創(chuàng)作平臺虛擬作品賬號轉(zhuǎn)讓協(xié)議
- 懸疑推理小說改編為手機(jī)游戲獨(dú)家授權(quán)合同
- 抖音平臺內(nèi)容侵權(quán)仲裁條款合同
- 醫(yī)療培訓(xùn)項(xiàng)目進(jìn)度調(diào)整補(bǔ)充合同
- 網(wǎng)絡(luò)版權(quán)運(yùn)營合作協(xié)議補(bǔ)充條款
- 抖音火花達(dá)人解約賠償協(xié)議及商業(yè)權(quán)益分配及調(diào)整
- 婚前技術(shù)入股權(quán)益分割及財(cái)產(chǎn)分配協(xié)議
- 橡膠原料市場風(fēng)險(xiǎn)對沖補(bǔ)充協(xié)議
- 無違法犯罪記錄證明申請表(個(gè)人)
- 衡水介紹-衡水簡介PPT(經(jīng)典版)
- 性激素六項(xiàng)的解讀 課件
- 模具設(shè)計(jì)與制造畢業(yè)設(shè)計(jì)
- 河南省銘瑋昊化工科技有限公司年產(chǎn)1000噸溴硝醇、100噸磺酰胺、200噸叔丁酯項(xiàng)目環(huán)境影響報(bào)告書
- 大學(xué)計(jì)算機(jī)基礎(chǔ)實(shí)驗(yàn)教程(高守平第2版)
- 2023年福建三明市初中畢業(yè)班數(shù)學(xué)質(zhì)量檢測卷(附答案)
- 金蝶固定資產(chǎn)管理系統(tǒng)
- LY/T 2457-2015西南樺培育技術(shù)規(guī)程
- GB/T 40998-2021變性淀粉中羥丙基含量的測定分光光度法
- GB/T 25840-2010規(guī)定電氣設(shè)備部件(特別是接線端子)允許溫升的導(dǎo)則
評論
0/150
提交評論