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

正文內(nèi)容

基于vhdl地鐵售票控制系統(tǒng)設(shè)計(jì)說明書(已修改)

2025-05-21 20:03 本頁面
 

【正文】 1 長(zhǎng)沙理工大學(xué) 《通信電路 EDA》課程項(xiàng)目報(bào)告 系 別 水利計(jì)通系 專 業(yè) 通信工程 班 級(jí) 通信 1003 班 指導(dǎo)教師 單樹明 項(xiàng)目組組長(zhǎng) 陳希超 學(xué) 號(hào) 202185250327 項(xiàng)目組成員 黃詩揚(yáng) 學(xué) 號(hào) 202185250319 項(xiàng)目組成員 劉明睿 學(xué) 號(hào) 202185250332 項(xiàng)目組成員 李 明 學(xué) 號(hào) 202185250334 完成日期 2021 年 11 月 8 日 2 地鐵售票控制系統(tǒng)設(shè)計(jì) 1 引 言 :用于模仿地鐵售票的自動(dòng)售票,完成地鐵售票的核心控制功能。 :售票機(jī)有兩個(gè)進(jìn)幣孔,一個(gè)是輸入硬幣,一個(gè)是輸入紙幣,硬幣的識(shí)別范圍是 5角和 1 元的硬幣,紙幣的識(shí)別范圍是 1 元、 2 元, 5 元, 10 元。乘客可以連續(xù)多次投入錢幣。 乘客可以選擇的種類為 2 元和 4 元,乘客一次只能選擇一個(gè)出站口。購買車票時(shí),乘客先選擇出 站名,然后選擇所需的票數(shù),再進(jìn)行投幣,投入的錢幣達(dá)到所需金額時(shí),售票機(jī)自動(dòng)出票,并找出余額,本次交易結(jié)束,等待下一次的交易。在投幣期間,乘客可以按取消鍵取消 本次操作,錢幣自動(dòng)退出。 2 設(shè)計(jì)思想 ,乘客按“開始選擇”按鈕,接著選擇出站口接著選擇購票數(shù)量(根據(jù)提示,一次購票數(shù)限制在 3 張以內(nèi));然后按“開始投幣”按鈕,投入錢幣;當(dāng)投入的錢幣達(dá)到所需金額時(shí),售票機(jī)自動(dòng)出票,并找出余額??紤]到控制整個(gè)售票機(jī)的物理體積,余額將全部采用 5角硬幣的形式找出。 ,乘客都可以按“取 消”按鈕取消該次交易。選擇出站口的過程中,若按“取消”,則售票機(jī)直接回到初始狀態(tài);投幣過程中,若按“取消”,則售票機(jī)將乘客已經(jīng)投入的錢幣全部退出,再回到初始狀態(tài)。 ,根據(jù)乘坐的站數(shù)確定票價(jià)。假設(shè)乘客購票所在站到終點(diǎn)站共有 15 站。若乘坐 18 站,則票價(jià)為 2 元/張;若乘坐 916站,則票價(jià)為 4 元/張。 16 個(gè)站用長(zhǎng)度位 4的二進(jìn)制向量編碼表示,即 0001 表示乘坐 1站, 0010 表示乘坐 2 站,依次類推, 1111 表示乘坐 15 站(到終點(diǎn)站)。 a) 出票機(jī)有 2 個(gè)進(jìn)幣端口。硬幣口可識(shí)別 5 角和 1 元 2種硬 幣,擬用長(zhǎng)度 3 為 2 的一比特?zé)嵛唬?onehot)編碼方式表示,即 01 表示 5 角, 10 表示 1 元。紙幣口類似,用長(zhǎng)度為 4的一比特?zé)嵛痪幋a方式表示。乘客可以連續(xù)多次投入錢幣,并且可以以任意順序投入硬幣和紙幣。 b) 出票機(jī)設(shè)有錢幣“暫存桿”,其有 3個(gè)狀態(tài):退幣狀態(tài)、等待狀態(tài)、進(jìn)幣狀態(tài),分別用 00、 0 10 表示。退幣狀態(tài)下,“暫存桿”將乘客投入的錢幣推出;等待狀態(tài)下,投入的錢幣被“暫存桿”擋住暫存;進(jìn)幣狀態(tài)下,“暫存桿”將乘客投入的錢幣推入售票機(jī)內(nèi)部。 系統(tǒng) 流程圖: 初始狀態(tài) 按“開始選擇” 選擇出站口 按“開始投幣” 投入錢幣 錢幣足夠 找零口找零 出票口出票 按“取消” 按“取消” 退回錢幣 錢幣入庫 選擇購票數(shù) 4 程序源代碼及注釋 library ieee。 use 。 use 。 entity subway is port( clk :in std_logic。 系統(tǒng)時(shí)鐘 select_start :in std_logic。 “開始選擇”按鈕 insert_start :in std_logic。 “開始投幣”按鈕 coin :in std_logic_vector(1 downto 0)。 硬幣入口 note :in std_logic_vector(3 downto 0)。 紙幣入口 cancel :in std_logic。 “取消”按鈕 ticket_stop :in std_logic_vector(3 downto 0)。 出站口編號(hào) ticket_account :in std_logic_vector(1 downto 0)。 購票張數(shù) money_gate :out std_logic_vector(1 downto 0)。 錢幣“暫存桿” ticket_out :out std_logic_vector(4 downto 0)。 購買的車票 ticket_gate :out std_logic。 出票口 change_gate :out std_logic 找零口 )。 end subway。 architecture behave of subway is type state_type is (initialize_state,select_state,insert_state,ticket_state,change_state)。 狀態(tài)變量申明 signal state:state_type。 狀態(tài)信號(hào)申明 5 begin process(clk) variable type_temp :std_logic。 記錄是否已選擇出站口的變量 variable account_temp :std_logic。 記錄是否已選 擇購票張數(shù)的變量 variable temp_type :std_logic_vector(4 downto 0)。 記錄票種的中間變量 variable temp_account :std_logic_vector(4 downto 0)。 記錄票數(shù)的中間變量 variable price :std_logic_vector(7 downto 0)。 記錄單張票價(jià)的變量 variable number :std_logic_vector(1 downto 0)。 記錄票數(shù)的變量 variable total_price :std_logic_vector(7 downto 0)。 記錄總票價(jià)的變量 variable total_insert :std_logic_vector(7 downto 0)。 記錄投入錢幣總額的變量 variable change :std_logic_vector(7 downto 0)。 記錄 應(yīng)找零金額的變量 variable sign :std_logic。 記錄系統(tǒng)是否已經(jīng)過初始化的變量 variable temp :std_logic。 記錄 投入錢幣金額達(dá)到總票價(jià)的變量 begin if (clk39。event and clk=39。139。) then 時(shí)鐘信號(hào)上升沿觸發(fā) case state is when initialize_state= 初始狀態(tài) if(sign=39。039。) then 表示系統(tǒng)未經(jīng)過初始化 money_gate=00。 錢幣“暫存桿”退出錢幣 ticket_out=00000。 購票記錄清零 ticket_gate=39。039。 出票口關(guān)閉 change_gate=39。039。 找零口關(guān)閉 temp_type:=00000。 票種記錄清零 temp_account:=00000。 票數(shù)記錄清零 type_temp:=39。039。 account_temp:=39。039。 price:=00000000。 單張票價(jià)記錄清零 number:=00。 購票張數(shù)記錄清零 total_price:=00000000。 票價(jià)總額記錄清零 6 total_insert:=00000000。 投入錢幣總額記錄清零 change:=00000000。 應(yīng)找零金額記錄清零 sign:=39。139。 記錄已完成系統(tǒng)初始化 temp:=39。039。 。 投 入達(dá)到總票價(jià)記錄清零 else 表示系統(tǒng)已經(jīng)過初始化 money_gate=01。 錢幣“暫存桿”歸為等待狀態(tài) if (select_start=39。139。) then 按下“開始選擇”按鈕 sign:=39。039。 state=select_state。 系統(tǒng)進(jìn)入選擇狀態(tài) end if。 end if。 when select_state= 選擇狀態(tài) if(type_temp=39。039。) then 表示尚未選擇出站口 if((ticket_stop=0001)and(ticket_stop=1000))then 乘坐站數(shù)不超過 8 站 由于整個(gè)系統(tǒng)中涉及的最小金額為 5 角,為表示方便,有關(guān)金額的量統(tǒng)一以“角”為單位即 5 角為“ 5”, 1 元為“ 10”, 2 元為“ 20”, 5 元為“ 50”, 10 元為“ 100” price:=00010100。 票 價(jià)為 2 元 用 5 位邏輯矢量表示票種和數(shù)量 其中前 2 位表示票種: 10000 表示 4 元票, 01000 表示 2元票 后 3 位表示數(shù)量: 10000 表示 3 張, 01000 表示 2張, 00100 表示 1 張 二者相加即可同時(shí)表示購買的票種和張數(shù)信息 temp_type:=01000。 表示 2 元票 type_temp:=39。139。 記錄已選擇出站口 elsif((ticket_stop=1001)and(ticket_stop=1111))then 乘坐站數(shù)超過 8 站 price:=00101000。 票價(jià)為 4 元 temp_type:=10000。 表示 4 元票 type_temp:=39。139。 記錄已選擇出站口 end if。 7 end if。 if((account_temp=39。039。)and(type_temp=39。139。)) then 表示已選擇出站口但尚未選擇購票張數(shù) case ticket_account is when 11= 選擇 3 張票 temp_account:=00100。表示 3 張票 number:=11。 購票張數(shù)為 3 total_price:=price+price+price。 計(jì)算總票價(jià) account_temp:=39。139。 記錄已選擇購票張數(shù) when 10= 選擇 2 張票 temp_account:=00010。 number:=10。 total_price:=price+price。 account_temp:=39。139。 when 01= 選擇 1 張票 temp_account:=00001。 number:=01。 total_price:=price。 account_temp:=39。139。 when others= null。 end case。 end if。 if((type_temp=39。139。)and(account_temp=39。139。)) then 表示已選擇出站口且已選擇購票張數(shù) if(insert_start=39。139。) then 按下“開始投幣”按鈕 state=insert_state。 系統(tǒng)進(jìn)入投幣狀態(tài) end if。 e
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1