版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 課 程 設(shè) 計 報 告</p><p> 題 目: 自動售貨機(jī)課程設(shè)計 </p><p> 系 別: 電子信息與電氣工程系 </p><p> 專 業(yè): 通信工程 </p><p><b> 班 級: </b></p>&
2、lt;p> 學(xué) 號:___ </p><p> 姓 名: </p><p> 導(dǎo) 師: </p><p> 日期: 2016.5.30 </p><p> 成 績:
3、 </p><p><b> 一、引言</b></p><p> 本次課程設(shè)計研究自動售貨機(jī)的主要功能模塊,主要包括商品選擇模塊、余額計算模塊、退幣模塊,由于條件上的限制,對投幣模塊中的貨幣檢測未進(jìn)行處理。相應(yīng)的主要功能有選擇貨物,購買,出貨找零,顯示,延時和時控功能。通過使用VHDL語言,基于FPGA可編程芯片,并通過使用QUARTUSⅡ軟件進(jìn)行程序設(shè)計,模
4、擬仿真,功能驗證,以更好的來理解和掌握自動售貨機(jī)控制系統(tǒng)的工作原理和設(shè)計方法,以及學(xué)習(xí)和掌握基于EDA的電子產(chǎn)品設(shè)計方法,進(jìn)一步加深對VHDL語言以及QUARTUSⅡ軟件、FPGA可編程芯片的認(rèn)識與了解。</p><p><b> 二、項目要求</b></p><p> 設(shè)計一個自動售貨機(jī)控制程序,它的投幣口每次可以投入1元、2元、5元,且規(guī)定投入1元或2元后不得
5、再投入5元。當(dāng)投入總值等于或超過設(shè)定值(4元),售貨機(jī)就自動送出貨物并找回多余的錢。</p><p> 1、基本要求按照上面要求,編寫程序,實現(xiàn)售單一商品的功能。</p><p> 2、擴(kuò)展要求:在基本要求的基礎(chǔ)上,完善電路,實現(xiàn)售多個商品的功能(設(shè)定值應(yīng)該相應(yīng)增加)。</p><p><b> 三、設(shè)計方案</b></p>
6、<p> 本售貨機(jī)可銷售兩種商品,單價分別為3元和4元。投幣口每次可以投入1元、2元、5元,且規(guī)定投入1元或2元后不得再投入5元,投入總額為3元時,不能再投入2元或者5元,當(dāng)投入總值超過設(shè)定值3元或者4元的情況下,選擇商品一或者商品二,售貨機(jī)就自動送出貨物并找回多余的錢。</p><p><b> 項目代碼及其分析</b></p><p><b&
7、gt; VHDL程序代碼:</b></p><p> LIBRARY IEEE;</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> ENTITY ZDSHJ IS</p><p> PORT(CLK,RESET:IN STD_LOGIC;</p><p>
8、; DIN:IN STD_LOGIC_VECTOR(2 DOWNTO 0);</p><p> COMB_OUTPUTS,GIVE_CHANGE:OUT STD_LOGIC);</p><p> END ENTITY;</p><p> ARCHITECTURE behav OF ZDSHJ IS</p><p> TYPE FSM
9、_ST IS (S0,S1,S2,S3,S4,S5);</p><p> SIGNAL current_state,next_state:FSM_ST;</p><p><b> BEGIN</b></p><p> REG:PROCESS(CLK)BEGIN</p><p> IF RESET='1
10、39; THEN current_state<=s0;</p><p> ELSIF CLK'EVENT AND CLK='1' THEN</p><p> current_state<=next_state;</p><p><b> END IF;</b></p><p>
11、 END PROCESS REG;</p><p> COM:PROCESS( DIN,current_state)</p><p><b> BEGIN </b></p><p> CASE current_state IS</p><p> WHEN s0=>COMB_OUTPUTS<='
12、0';</p><p> GIVE_CHANGE<='0';</p><p> IF DIN="001" THEN next_state<=s1;</p><p> ELSIF DIN="010" THEN next_state<=s2;</p><p>
13、 ELSIF DIN="101" THEN next_state<=s5;</p><p> ELSE next_state<=s0;</p><p><b> END IF;</b></p><p> WHEN s1=>COMB_OUTPUTS<='0';</p>
14、<p> GIVE_CHANGE<='0';</p><p> IF DIN="001" THEN next_state<=s2;</p><p> ELSIF DIN="010" THEN next_state<=s3;</p><p> ELSE next_state
15、<=s1;</p><p><b> END IF;</b></p><p> WHEN s2=>COMB_OUTPUTS<='0';</p><p> GIVE_CHANGE<='0';</p><p> IF DIN="001" TH
16、EN next_state<=s3;</p><p> ELSIF DIN="010" THEN next_state<=s4;</p><p> ELSE next_state<=s2;</p><p><b> END IF;</b></p><p> WHEN s3=&
17、gt;COMB_OUTPUTS<='0';</p><p> GIVE_CHANGE<='0';</p><p> IF DIN="001" THEN next_state<=s4;</p><p> ELSIF DIN="010" THEN next_state<
18、=s5;</p><p> ELSE next_state<=s3;</p><p><b> END IF;</b></p><p> WHEN s4=>COMB_OUTPUTS<='1';</p><p> GIVE_CHANGE<='0';</p
19、><p> next_state<=s0;</p><p> WHEN s5=>COMB_OUTPUTS<='1';</p><p> GIVE_CHANGE<='1';</p><p> next_state<=s0;</p><p><b>
20、; END CASE;</b></p><p> END PROCESS COM;</p><p> END behav;</p><p><b> 程序分析:</b></p><p> DIN=00表示未投幣;</p><p> DIN=01表示投幣一元;</p&g
21、t;<p> DIN=10表示投幣兩元;</p><p> DIN=11表示投幣五元;</p><p> Y1為貨物控制信號:Y1=1表示出貨,Y1=0表示不出貨。</p><p> Y2為找零以及五元投幣口開閉信號:</p><p> Y2=00表示不找零并打開五元投幣口,允許投入五元;</p><
22、;p> Y2=01表示找零一元并打開五元投幣口,允許投入五元;</p><p> Y2=11表示不找零并關(guān)閉五元投幣口,不允許投入五元;</p><p> S0表示初始狀態(tài),還沒有收到投幣;</p><p> S1表示收到一元投幣的狀態(tài);</p><p> S2表示收到兩元投幣的狀態(tài);</p><p>
23、 S3表示收到三元投幣的狀態(tài)</p><p><b> 仿真波形:</b></p><p> 自動售貨機(jī)仿真波形(一)</p><p> 分析1:通過上圖波形可以看出,當(dāng)DIN=1時,即投幣1通過上圖波形可以看出,當(dāng)DIN=2時,元,前三個脈沖來臨時,即投幣金額為1元、2元、3元,狀態(tài)分別為s1,s2,s3,COMB_OUTPUTS和G
24、IVE_CHANGE都是顯示為0。當(dāng)?shù)谒膫€脈沖來臨時,即投幣金額為4元時,則COMB_OUTPUTS顯示為1,GIVE_CHANGE顯示為0,說明有商品售出,找零錢為0元。</p><p> 自動售貨機(jī)仿真波形(二)</p><p> 分析2:通過上圖波形可以看出,當(dāng)DIN=2時,即一次投幣2元時,第一次脈沖來臨時,投幣金額為2元,狀態(tài)為s2,COMB_OUTPUTS和GIVE_CHA
25、NGE都是顯示為0。當(dāng)?shù)诙€脈沖來臨時,即投幣金額為4元,則COMB_OUTPUTS顯示為1,GIVE_CHANGE顯示為0,說明有商品售出,找零錢為0元,結(jié)果正確。</p><p> 自動售貨機(jī)仿真波形(三)</p><p> 分析3:通過上圖波形可以看出,當(dāng)DIN=5時,即一次投幣5元時,第一次脈沖來臨時,投幣金額為5元,狀態(tài)為s5,COMB_OUTPUTS和GIVE_CHANGE
26、都是顯示為1,說明有商品售出,找零錢為1元,結(jié)果正確。</p><p><b> 五、實驗箱驗證</b></p><p> 選擇模式1,引腳鎖定如下:</p><p><b> 實驗箱現(xiàn)象:</b></p><p><b> 實驗現(xiàn)象(一)</b></p>
27、<p> 分析:通過上圖的實驗圖像,可以看出當(dāng)投幣1元,來四次脈沖,即大約過四到五秒,則紅燈亮,說明有商品售出,找零0元,符合實驗結(jié)果。</p><p><b> 實驗現(xiàn)象(二)</b></p><p> 分析:通過上圖的實驗圖像,可以看出當(dāng)投幣2元,來了兩次脈沖,過了大約二到三秒,則紅燈亮,說明有商品售出,找零0元,符合實驗結(jié)果。</p>
28、;<p><b> 實驗現(xiàn)象(三)</b></p><p> 分析:通過上圖的實驗圖像,可以看出當(dāng)一次投幣5元,來一次脈沖,大約過1秒,即可以看見上圖兩處紅燈亮。說明有商品售出,且找零1元。符合實驗結(jié)果。</p><p><b> 六、項目總結(jié)</b></p><p> 通過本次自動售貨機(jī)的項目設(shè)計,
29、我詳細(xì)了解到了自動售貨機(jī)的投幣、商品選擇等模塊的軟件設(shè)計與主要模塊的仿真。 做本次項目,首先要做的就是代碼,由于知識儲備尚淺,而且平時練習(xí)太少,所以以自己的能力難以完成程序,于是代碼是從網(wǎng)上搜索得到的,但是部分代碼不符合實驗要求,當(dāng)然這需要我們自己改動,通過和同學(xué)的一起努力下以及仿真驗證,才有了現(xiàn)在實驗所得的代碼。其次是引腳的鎖定,因為引腳的鎖定對實驗在試驗箱上驗證有影響,而我對引腳分配不是很清楚,最后在求助同學(xué)和老師后,解決了這個問題
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 自動售貨機(jī)課程設(shè)計
- 自動售貨機(jī)課程設(shè)計
- 自動售貨機(jī)課程設(shè)計--飲料自動售貨機(jī)控制系統(tǒng)設(shè)計
- plc自動售貨機(jī)課程設(shè)計
- 課程設(shè)計報告---自動售貨機(jī)
- plc課程設(shè)計---自動售貨機(jī)
- plc自動售貨機(jī)課程設(shè)計
- plc自動售貨機(jī)課程設(shè)計
- plc自動售貨機(jī)課程設(shè)計
- plc課程設(shè)計---自動售貨機(jī)
- plc自動售貨機(jī)課程設(shè)計
- 自動售貨機(jī)的課程設(shè)計
- plc課程設(shè)計--自動售貨機(jī)
- eda課程設(shè)計--自動售貨機(jī)
- 自動售貨機(jī)plc課程設(shè)計
- plc課程設(shè)計——自動售貨機(jī)
- 自動售貨機(jī)課程設(shè)計報告
- 自動售貨機(jī)的plc課程設(shè)計
- eda課程設(shè)計報告(自動售貨機(jī))
- plc課程設(shè)計報告-自動售貨機(jī)
評論
0/150
提交評論