全球旧事资料 分类
客投入的钱币推出;等待状态下,投入的钱币被“暂存杆”挡住暂存;进币状态下,“暂存杆”将乘客投入的钱币推入售票机内部。
系统流程图:
初始状态
按“开始选择”
选择出站口按“取消”选择购票数
按“开始投币”
投入钱币
按“取消”
退回钱币
钱币足够
钱币入库
出票口出票
找零口找零
3
f基于VHDL的地铁售票控制系统设计
程序源代码及注释
libraryieeeuseieeestd_logic_1164alluseieeestd_logic_u
sig
edall
e
titysubwayisportclki
std_logici
std_logici
std_logic系统时钟“开始选择”按钮“开始投币”按钮硬币入口纸币入口“取消”按钮出站口编号购票张数钱币“暂存杆”购买的车票出票口找零口
select_starti
sert_start
coi
i
std_logic_vector1dow
to0
otei
std_logic_vector3dow
to0ca
celi
std_logici
std_logic_vector3dow
to0
ticket_stop
ticket_accou
ti
std_logic_vector1dow
to0mo
ey_gateticket_outticket_gateoutstd_logic_vector1dow
to0outstd_logic_vector4dow
to0outstd_logic
cha
ge_gateoutstd_logice
dsubway
architecturebehaveofsubwayis
typestate_typeisi
itialize_stateselect_statei
sert_stateticket_statecha
ge_state状态变量申明sig
alstatestate_type状态信号申明
4
f基于VHDL的地铁售票控制系统设计begi
processclkvariabletype_tempstd_logicvariableaccou
t_tempstd_logic记录是否已选择出站口的变量记录是否已选择购票张数的变量记录票种的中间变量
variabletemp_typestd_logic_vector4dow
to0
variabletemp_accou
tstd_logic_vector4dow
to0记录票数的中间变量variablepricestd_logic_vector7dow
to0variable
umberstd_logic_vector1dow
to0记录单张票价的变量记录票数的变量记录总票价的变量
variabletotal_pricestd_logic_vector7dow
to0
variabletotal_i
sertstd_logic_vector7dow
to0记录投入钱币总额的变量variablecha
gestd_logic_vector7dow
to0记录应找零金额的变量
variablesig
std_logicvariabletempstd_logic
记录系统是否已经过初始化的变量记录投入钱币金额达到总票价的变量
begi
ifclkeve
ta
dclk1the
casestateiswhe
i
itialize_stateifsig
0the
初始状态表示系统未经过初始化钱币“暂存杆”退出钱币购票记录清零出票口关闭找零口关闭票种记录清零票数记录清零时钟信号上升沿触发
mo
ey_gate
好听全球资料 返回顶部