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

正文內(nèi)容

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

2025-04-07 09:47上一頁面

下一頁面
  

【正文】 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,商品金額計算模塊 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。單價 *商品數(shù)量即為商品總金額。如果再按一次啟動 /取消按鍵,使 start_in=0,則定時器處于等待再次啟動狀態(tài)。 9 商品種類選擇控制狀態(tài)機圖 系統(tǒng)復(fù)位后進入默認(rèn)的商品種類 1 狀態(tài),并輸出默認(rèn)狀態(tài)的控制信號 set_type1, 并 判斷定時倒計時信號 timer_down 是否有效,如果有效,則表明 放棄繼續(xù)購買, set_type1 置 0 回到系統(tǒng)默認(rèn)狀態(tài); 如果無效則判斷商品種類選擇按鍵是否按下,如果未按下,則仍處在默認(rèn)狀態(tài),如果已按下,則進入商品種類 2 狀態(tài) 及 set_type2 置 1。 ( 2) 輸出信號: timer_down_out:選擇倒計時到輸出信號。 給錢處理模塊( give_money) :處理顧客投入的金額, 它 也 是在倒計時未到,系統(tǒng)啟動并且確認(rèn)購買的條件下工作的。當(dāng)購買結(jié)束后,自動返回初始設(shè)定狀態(tài),等待再次啟動?,F(xiàn)代電子系統(tǒng)設(shè)計人員應(yīng)該把 VHDL 語言作為一種基礎(chǔ)知識來學(xué) 習(xí),并要求能夠熟練地使用 EDA的設(shè)計工具。上述設(shè)計過程除了系統(tǒng)行為和功能描述以外,其余所有的設(shè)計過程幾乎都可以用計算機來自動地完成,也就是人們所謂的電子設(shè)計自動化,這樣大大地縮短了系統(tǒng)的設(shè)計周期,以適 應(yīng)當(dāng)今品種多,批量小的電子市場的需求,提高產(chǎn)品的競爭能力。通過在該軟件平臺上進行數(shù)字電路設(shè)計和仿真的方法,闡述了 VHDL( Very High Speed Integrated Circuit Hardware Description Language)超高速集成電路硬件描述 語言的一些特點及語法結(jié)構(gòu),介紹了自動售貨機的基本原理、系統(tǒng)組成和主要功能,并分析討論了用 VHDL 語言開發(fā)自動售貨機系統(tǒng)的設(shè)計流程。最終 完成的自動售貨機系統(tǒng)具有商品選擇,投幣處理、出貨找零、異常退幣等主要功能,整個系統(tǒng)的開發(fā)體現(xiàn)了在 Quartus II 軟件平臺上用 VHDL 設(shè)計數(shù)字控制系統(tǒng)的實用性。 第二, VHDL 不依賴 于器件設(shè)計: VHDL 允許設(shè)計者生成一個設(shè)計,而并不需要首先選擇一個用來實現(xiàn)設(shè)計的器件,對于同一個設(shè)計描述,可以采用多種不同的器件結(jié)構(gòu)來實現(xiàn)其功能,若需要對設(shè)計進行資源利用和性能方面的優(yōu)化,也并不是要求設(shè)計者非常熟悉器件的結(jié)構(gòu)才行。第一種方式的缺點既所設(shè)計的整體電路規(guī)模較大,所用的器件較多,造成故障率高,導(dǎo)致計價器不夠準(zhǔn)確;而基于單片機的設(shè)計,雖然其有著開發(fā)及制作成本低,能較大程度的利用資源,但其外圍電路較多,且調(diào)試復(fù)雜,抗干擾能力差,且對設(shè)計者的要求比較高,設(shè)計者對軟硬件都必須非常熟悉,由于主要是軟件運作,容易出錯,造 成系統(tǒng)不穩(wěn)定,可能會出現(xiàn)投入錢幣卻不出售貨物的情況,導(dǎo)致計價器不夠準(zhǔn)確;而本文采用 VHDL 硬件描述語言將所有器件集成在一塊芯片上,體積大大減小的同時還提高了穩(wěn)定性,并且可應(yīng)用 EDA 軟件仿真,調(diào)試,易于進行功能擴展,外圍電路較少,采用硬件邏輯電路實現(xiàn),其最大的優(yōu)點是穩(wěn)定性好,抗干擾能力強,非常適合作為自動售貨機系統(tǒng)的控制核心,所以選擇用 VHDL 來對自動售貨機進行設(shè)計來實現(xiàn)其 控制功能 。 4 第二章 自動售貨機控制電路 總體設(shè)計 根據(jù)上述對自動 售貨機控制電路的性能要求,可以畫出自動售貨機總體 結(jié)構(gòu)框圖 和 系統(tǒng)操作流程圖 ,見下圖 。 : 系統(tǒng)操作流程圖 6 第 三 章 自動售貨機控制電路 各模塊信號分析 主分頻器用來產(chǎn)生 1 秒的時鐘供主控制器使用,本設(shè)計使用民用的石英晶體,其振蕩頻率為 。 給錢處理模塊主要是根據(jù)顧客在確認(rèn)購買商品后,計算并輸出顧客投入的總金額,其輸入和輸出信號分別如下: ( 1) 輸入信號: reset:復(fù)位信號; sysclk:系統(tǒng)時鐘輸入信號; 8 start_in:啟動與取消操作信號; timer_down:選擇倒計時到輸入信號; ok_buy:確定購買商品按鍵輸入信號; give_1yuan: 1 元紙幣輸入信號; give_5yuan: 5 元紙幣輸入信號; give_10yuan: 10 元紙幣輸入信號; ( 2) 輸出信號: money_2:顧客投入的紙幣金額輸出信號。 10 11 12 /取消控制算法狀態(tài)機圖描述 本設(shè)計的自動售貨系統(tǒng)用了一個多功能啟動 /取消按鍵,來啟動系統(tǒng)和在購買過程中隨時取消的操作,如此系統(tǒng)有 2 種工作狀態(tài):取消狀態(tài)(停止?fàn)顟B(tài))和啟動狀態(tài),系統(tǒng)復(fù)位是進入停止?fàn)顟B(tài),當(dāng) start_cancel 按鍵按下時,狀態(tài)轉(zhuǎn)移至啟動狀態(tài),并輸出啟動控制信號 start_out。 倒計時程序框圖 14 通過以上對 VHDL 代碼框圖的分析,更加容易的完成了 VHDL 代碼的編寫,后面的的幾個模塊由于程序比較簡單,只要看看 VHDL 代碼就能看出它的程序框圖的流程,所以這里就沒有在畫其他模塊的 VHDL 代碼框圖,具體分析見 VHDL 代碼。 : 系統(tǒng)在啟動狀態(tài),倒計時未到且確認(rèn)購買時,系統(tǒng)將商品的實際金額和顧 客投入的金額進行比較,當(dāng)顧客投入的金額大于商品實際金額時,系統(tǒng)找出相應(yīng)的錢數(shù)并出貨;當(dāng)小于時,系統(tǒng)退出顧客已投入的錢數(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
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1