ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:531.78KB ,
资源ID:16134678      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16134678.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(b地铁自动售票系统VHDLWord文档下载推荐.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

b地铁自动售票系统VHDLWord文档下载推荐.docx

1、票,并找出余额,本次交易结束,等待下一次的交易。在投币期间,乘客可以按取消键取消本次操作,钱币自动退出。二 课题分析1 买车票时,乘客按“开始选择”按钮,接着选择出站口接着 选择购票数量(根据提示,一次购票数限制在3张以内);然后按“开始投币”按钮,投入钱币;当投入的钱币达到所需金额时,售票机自动出票,并找出余额。考虑到控制整个售票机的物理体积,余额将全部采用5角硬币的形式找出。2 选择出站口或投币过程中,乘客都可以按“取消”按钮取消该次交易。选择出站口的过程中,若按“取消”,则售票机直接回到初始状态;投币过程中,若按“取消”,则售票机将乘客已经投入的钱币全部退出,再回到初始状态。3 客一次只

2、能选择一个出站口,根据乘坐的站数确定票价。假设乘客购票所在站到终点站共有15站。若乘坐1-8站,则票价为2元张;若乘坐9-16站,则票价为4元张。16个站用长度位4的二进制向量编码表示,即0001表示乘坐1站,0010表示乘坐2站,依次类推,1111表示乘坐15站(到终点站)。4 票机有2个进币端口。硬币口可识别5角和1元2种硬币,拟用长度为2的一比特热位(one-hot)编码方式表示,即01表示5角,10表示1元。纸币口类似,用长度为4的一比特热位编码方式表示。乘客可以连续多次投入钱币,并且可以以任意顺序投入硬币和纸币。5 票机设有钱币“暂存杆”,其有3个状态:退币状态、等待状态、进币状态,

3、分别用00、01、10表示。退币状态下,“暂存杆”将乘客投入的钱币推出;等待状态下,投入的钱币被“暂存杆”挡住暂存;进币状态下,“暂存杆”将乘客投入的钱币推入售票机内部。三、系统流程图:四系统状态图五、程序源代码及注释library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity subway isport( clk :in std_logic; -系统时钟 select_start : -“开始选择”按钮 insert_start : -“开始投币”按钮 coin :in std_logic_ve

4、ctor(1 downto 0); -硬币入口 note :in std_logic_vector(3 downto 0); -纸币入口 cancel : -“取消”按钮 ticket_stop : -出站口编号 ticket_account : -购票张数 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 -找

5、零口);end subway;architecture behave of subway is type state_type is (initialize_state,select_state,insert_state,ticket_state,change_state); -状态变量申明 signal state:state_type; -状态信号申明 begin process(clk) variable type_temp :std_logic; -记录是否已选择出站口的变量 variable account_temp : -记录是否已选择购票张数的变量 variable temp_t

6、ype :std_logic_vector(4 downto 0); -记录票种的中间变量 variable temp_account : -记录票数的中间变量 variable price :std_logic_vector(7 downto 0); -记录单张票价的变量 variable number :std_logic_vector(1 downto 0); -记录票数的变量 variable total_price : -记录总票价的变量 variable total_insert :- 记录投入钱币总额的变量 variable change : -记录应找零金额的变量 variab

7、le sign : -记录系统是否已经过初始化的变量 variable temp : -记录投入钱币金额达到总票价的变量 begin if (clkevent and clk=1) then -时钟信号上升沿触发 case state is when initialize_state= -初始状态 if(sign=0) then -表示系统未经过初始化 money_gate=00; -钱币“暂存杆”退出钱币 ticket_out00000 -购票记录清零 ticket_gate= -出票口关闭 change_gate -找零口关闭 temp_type: -票种记录清零 temp_account

8、: -票数记录清零 type_temp: account_temp: price:00000000 -单张票价记录清零 number: -购票张数记录清零 total_price: -票价总额记录清零 total_insert: -投入钱币总额记录清零 change: -应找零金额记录清零 sign: -记录已完成系统初始化 temp: ; -投入达到总票价记录清零 else -表示系统已经过初始化 money_gate01 -钱币“暂存杆”归为等待状态 if (select_start=) then -按下“开始选择”按钮 sign: state -选择状态 if(type_temp=) then -表示尚未选择出站口 if(ticket_stop0001)and(ticket_stop10011111 -乘坐站数超过8站00101000 -票价为4元10000 -表示4元票 end if; if(account_temp=)and(type_temp=) then -表示已选择出站口但尚未选择购票张数 case ticket_account is when 11= -选择3张票 temp_account:00100-表示3张票 number: -购票张数为3 total_price:=price+price+pr

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1