freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的自動(dòng)售貨機(jī)控制系統(tǒng)設(shè)計(jì)畢業(yè)論文(存儲(chǔ)版)

  

【正文】 USE 。 END IF。139。 ELSIF(type3_in=39。 AND quan2_in=39。)THEN money_sum_tmpe:=1*3。139。039。)THEN IF(ok_buy_rising=39。 OR timer_down_rising=39。 ARCHITECTURE rtl OF money_count IS SIGNAL ok_buy_rising,ok_buy_dlayed:STD_LOGIC。 4,商品金額計(jì)算模塊 LIBRARY IEEE。 END IF。139。)THEN state=nextstate。)THEN state=idle。 END IF。 ELSE clrdown=39。)THEN nextstate=idle。039。039。 clk_rising=clk AND (NOT clk_dlayed)。 ARCHITECTURE rtl OF timer_count IS TYPE stateTYPE IS(idle,incount)。 END ARCHITECTURE rtl。139。039。)THEN quan3_out=39。139。 IF(set_quan1=39。END IF。039。)THEN state1=nextstate1。 main_control_update:PROCESS(reset,sysclk,timer_down_rising)IS BEGIN IF(reset=39。139。139。039。039。139。)THEN nextstate2=s_quan2。139。 ELSIF(quantitysel_rising=39。039。 END IF。039。039。139。)THEN nextstate1=s_type1。139。 timer_down_rising=timer_down AND (NOT timer_down_dlayed)。 SIGNAL state3,nextstate3:state3TYPE。 19 type1_out,type2_out,type3_out,start_out:OUT STD_LOGIC。 END PROCESS。 clk3=div3(3)。 div_10:PROCESS(clk2)IS BEGIN IF(clk239。EVENT AND clk1=39。 BEGIN div_256:PROCESS(sysclk)IS BEGIN IF(sysclk39。 ENTITY sysclk_div IS PORT(sysclk:IN STD_LOGIC。單價(jià) *商品數(shù)量即為商品總金額。如果再按一次啟動(dòng) /取消按鍵,使 start_in=0,則定時(shí)器處于等待再次啟動(dòng)狀態(tài)。 9 商品種類(lèi)選擇控制狀態(tài)機(jī)圖 系統(tǒng)復(fù)位后進(jìn)入默認(rèn)的商品種類(lèi) 1 狀態(tài),并輸出默認(rèn)狀態(tài)的控制信號(hào) set_type1, 并 判斷定時(shí)倒計(jì)時(shí)信號(hào) timer_down 是否有效,如果有效,則表明 放棄繼續(xù)購(gòu)買(mǎi), set_type1 置 0 回到系統(tǒng)默認(rèn)狀態(tài); 如果無(wú)效則判斷商品種類(lèi)選擇按鍵是否按下,如果未按下,則仍處在默認(rèn)狀態(tài),如果已按下,則進(jìn)入商品種類(lèi) 2 狀態(tài) 及 set_type2 置 1。 ( 2) 輸出信號(hào): timer_down_out:選擇倒計(jì)時(shí)到輸出信號(hào)。 給錢(qián)處理模塊( give_money) :處理顧客投入的金額, 它 也 是在倒計(jì)時(shí)未到,系統(tǒng)啟動(dòng)并且確認(rèn)購(gòu)買(mǎi)的條件下工作的。當(dāng)購(gòu)買(mǎi)結(jié)束后,自動(dòng)返回初始設(shè)定狀態(tài),等待再次啟動(dòng)?,F(xiàn)代電子系統(tǒng)設(shè)計(jì)人員應(yīng)該把 VHDL 語(yǔ)言作為一種基礎(chǔ)知識(shí)來(lái)學(xué) 習(xí),并要求能夠熟練地使用 EDA的設(shè)計(jì)工具。上述設(shè)計(jì)過(guò)程除了系統(tǒng)行為和功能描述以外,其余所有的設(shè)計(jì)過(guò)程幾乎都可以用計(jì)算機(jī)來(lái)自動(dòng)地完成,也就是人們所謂的電子設(shè)計(jì)自動(dòng)化,這樣大大地縮短了系統(tǒng)的設(shè)計(jì)周期,以適 應(yīng)當(dāng)今品種多,批量小的電子市場(chǎng)的需求,提高產(chǎn)品的競(jìng)爭(zhēng)能力。通過(guò)在該軟件平臺(tái)上進(jìn)行數(shù)字電路設(shè)計(jì)和仿真的方法,闡述了 VHDL( Very High Speed Integrated Circuit Hardware Description Language)超高速集成電路硬件描述 語(yǔ)言的一些特點(diǎn)及語(yǔ)法結(jié)構(gòu),介紹了自動(dòng)售貨機(jī)的基本原理、系統(tǒng)組成和主要功能,并分析討論了用 VHDL 語(yǔ)言開(kāi)發(fā)自動(dòng)售貨機(jī)系統(tǒng)的設(shè)計(jì)流程。最終 完成的自動(dòng)售貨機(jī)系統(tǒng)具有商品選擇,投幣處理、出貨找零、異常退幣等主要功能,整個(gè)系統(tǒng)的開(kāi)發(fā)體現(xiàn)了在 Quartus II 軟件平臺(tái)上用 VHDL 設(shè)計(jì)數(shù)字控制系統(tǒng)的實(shí)用性。 第二, VHDL 不依賴(lài) 于器件設(shè)計(jì): VHDL 允許設(shè)計(jì)者生成一個(gè)設(shè)計(jì),而并不需要首先選擇一個(gè)用來(lái)實(shí)現(xiàn)設(shè)計(jì)的器件,對(duì)于同一個(gè)設(shè)計(jì)描述,可以采用多種不同的器件結(jié)構(gòu)來(lái)實(shí)現(xiàn)其功能,若需要對(duì)設(shè)計(jì)進(jìn)行資源利用和性能方面的優(yōu)化,也并不是要求設(shè)計(jì)者非常熟悉器件的結(jié)構(gòu)才行。第一種方式的缺點(diǎn)既所設(shè)計(jì)的整體電路規(guī)模較大,所用的器件較多,造成故障率高,導(dǎo)致計(jì)價(jià)器不夠準(zhǔn)確;而基于單片機(jī)的設(shè)計(jì),雖然其有著開(kāi)發(fā)及制作成本低,能較大程度的利用資源,但其外圍電路較多,且調(diào)試復(fù)雜,抗干擾能力差,且對(duì)設(shè)計(jì)者的要求比較高,設(shè)計(jì)者對(duì)軟硬件都必須非常熟悉,由于主要是軟件運(yùn)作,容易出錯(cuò),造 成系統(tǒng)不穩(wěn)定,可能會(huì)出現(xiàn)投入錢(qián)幣卻不出售貨物的情況,導(dǎo)致計(jì)價(jià)器不夠準(zhǔn)確;而本文采用 VHDL 硬件描述語(yǔ)言將所有器件集成在一塊芯片上,體積大大減小的同時(shí)還提高了穩(wěn)定性,并且可應(yīng)用 EDA 軟件仿真,調(diào)試,易于進(jìn)行功能擴(kuò)展,外圍電路較少,采用硬件邏輯電路實(shí)現(xiàn),其最大的優(yōu)點(diǎn)是穩(wěn)定性好,抗干擾能力強(qiáng),非常適合作為自動(dòng)售貨機(jī)系統(tǒng)的控制核心,所以選擇用 VHDL 來(lái)對(duì)自動(dòng)售貨機(jī)進(jìn)行設(shè)計(jì)來(lái)實(shí)現(xiàn)其 控制功能 。 4 第二章 自動(dòng)售貨機(jī)控制電路 總體設(shè)計(jì) 根據(jù)上述對(duì)自動(dòng) 售貨機(jī)控制電路的性能要求,可以畫(huà)出自動(dòng)售貨機(jī)總體 結(jié)構(gòu)框圖 和 系統(tǒng)操作流程圖 ,見(jiàn)下圖 。 : 系統(tǒng)操作流程圖 6 第 三 章 自動(dòng)售貨機(jī)控制電路 各模塊信號(hào)分析 主分頻器用來(lái)產(chǎn)生 1 秒的時(shí)鐘供主控制器使用,本設(shè)計(jì)使用民用的石英晶體,其振蕩頻率為 。 給錢(qián)處理模塊主要是根據(jù)顧客在確認(rèn)購(gòu)買(mǎi)商品后,計(jì)算并輸出顧客投入的總金額,其輸入和輸出信號(hào)分別如下: ( 1) 輸入信號(hào): reset:復(fù)位信號(hào); sysclk:系統(tǒng)時(shí)鐘輸入信號(hào); 8 start_in:?jiǎn)?dòng)與取消操作信號(hào); timer_down:選擇倒計(jì)時(shí)到輸入信號(hào); ok_buy:確定購(gòu)買(mǎi)商品按鍵輸入信號(hào); give_1yuan: 1 元紙幣輸入信號(hào); give_5yuan: 5 元紙幣輸入信號(hào); give_10yuan: 10 元紙幣輸入信號(hào); ( 2) 輸出信號(hào): money_2:顧客投入的紙幣金額輸出信號(hào)。 10 11 12 /取消控制算法狀態(tài)機(jī)圖描述 本設(shè)計(jì)的自動(dòng)售貨系統(tǒng)用了一個(gè)多功能啟動(dòng) /取消按鍵,來(lái)啟動(dòng)系統(tǒng)和在購(gòu)買(mǎi)過(guò)程中隨時(shí)取消的操作,如此系統(tǒng)有 2 種工作狀態(tài):取消狀態(tài)(停止?fàn)顟B(tài))和啟動(dòng)狀態(tài),系統(tǒng)復(fù)位是進(jìn)入停止?fàn)顟B(tài),當(dāng) start_cancel 按鍵按下時(shí),狀態(tài)轉(zhuǎn)移至啟動(dòng)狀態(tài),并輸出啟動(dòng)控制信號(hào) start_out。 倒計(jì)時(shí)程序框圖 14 通過(guò)以上對(duì) VHDL 代碼框圖的分析,更加容易的完成了 VHDL 代碼的編寫(xiě),后面的的幾個(gè)模塊由于程序比較簡(jiǎn)單,只要看看 VHDL 代碼就能看出它的程序框圖的流程,所以這里就沒(méi)有在畫(huà)其他模塊的 VHDL 代碼框圖,具體分析見(jiàn) VHDL 代碼。 : 系統(tǒng)在啟動(dòng)狀態(tài),倒計(jì)時(shí)未到且確認(rèn)購(gòu)買(mǎi)時(shí),系統(tǒng)將商品的實(shí)際金額和顧 客投入的金額進(jìn)行比較,當(dāng)顧客投入的金額大于商品實(shí)際金額時(shí),系統(tǒng)找出相應(yīng)的錢(qián)數(shù)并出貨;當(dāng)小于時(shí),系統(tǒng)退出顧客已投入的錢(qián)數(shù)。 ARCHITECTURE rtl OF sysclk_div IS SIGNAL div1:STD_LOGIC_VECTOR(7 DOWNTO 0)。)THEN div1=div1+1。 ELSE div2=div2+1。)THEN IF(div3=1001)THEN div3=0000。139。 LIBRARY IEEE。 ARCHITECTURE rtl OF main_control IS TYPE state1TYPE IS(s_type1,s_type2,s_type3)。 SIGNAL timer_down_rising,timer_down_dlayed:STD_LOGIC。set_type2=39。)THEN set_type1=39。nextstate1=s_type2。nextstate1=s_type1。 WHEN s_type3=set_type3=39。039。 quantity_ctr:PROCESS(quantitysel_rising,state2,timer_down)IS BEGIN set_quan1=39。 IF(timer_down=39。 ELSE set_quan1=39。)THEN set_quan2=39。nextstate2=s_quan3。nextstate2=s_quan1。 END CASE。)THEN nextstate3=s_start。139。139。state2=s_quan1。 IF(set_type1=39。139。)THEN type3_out=39。139。ELSE quan2_out=39。039。)THEN start_out=39。 quantity_sel_dlayed=quantity_sel。 USE 。 SIGNAL timer_down,ok_buy_rising,ok_buy_dlayed:STD_LOGIC。clrdown=39。count_clr=39。 END IF。 AND start_in=39。139。 END PROCESS。count_u=0000。)THEN timer_down=39。139。 clk_dlayed=clk。 USE 。 timer_down_rising=timer_down AND (NOT timer_down_dlayed)。uu:=39。039。139。)THEN money_sum_tmpe:=1*2。 AND quan1_in=39。 ELSIF(type2_in=39。139。139。 END IF。 ENTITY give_money IS PORT(reset,sysclk,start_in,ok_buy:IN STD_LOGIC。 give_money:PROCESS(reset,sysclk,timer_down_rising,ok_buy_rising)IS VARIABLE money:INTEGER。039。)THEN money:=0。)THEN money:=1。 END IF。 USE 。 ARCHITECTURE rtl OF change_deliver IS SIGNAL ok_buy_rising,ok_buy_dlayed:STD_LOGIC。 bb=CONV_INTEGER(money_2)。cc=0。)THEN IF(ok_buy_rising=39。139。 END IF。 USE 。 END ENTITY。 COMPONENT timer_count IS PORT(reset,sysclk,clk,start_in,ok_buy:IN STD_LOGIC。 give_1yuan,give_5yuan,give_10yuan,timer_down:IN STD_LOGIC。 SIGNAL v1,v2,v3,v4,v5,v6,v7,v8,v9,v10:STD_LOGIC。 END ARCHITECTURE rtl。 u3:timer_count PORT MAP(reset,sysclk,v2,v7,ok_buy,v3)。 money_1,money_2:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 type1_in,type2_in,type3_in,quan1_in,quan2_in,quan3_in:IN STD_LOGIC。 COMPONENT main_control IS PORT(reset,sysclk,start_cancel,type_sel,quantity_sel,timer_down:IN STD_LOGIC。 29 type_sel,quantity_sel:IN STD_LOGIC。 END IF。139。)THEN deliver=39。change=0000。139。 timer_down_rising=timer_down AND (NOT timer_down_dlayed)。 money_1,money_2:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 money_2=CONV_STD_LOGIC_VECTOR(money,4)。 27
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1