已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 简易地铁自动售票系统 设计方案 设计制作一个简易地铁自动售票系统。 基本要求: a) 地铁票价统一为每张两元,只能投入币值为五元的人民币进行购票。 b) 能够开机自检,检验显示器件正常。 c) 通过按键开关 d) 设置适当的声音提示或显示提示表示取票和找零。 e) 一次购票成功后系统能够恰当地转入下一次购票等待状态。 f) 系统能够复位。 提高要求: 将投币种类增加为 1元、 5元和 10元三种。 二、 系统设计 2、 设计思路 a) 购买车票时,乘客按“开始购票”按钮开始购票; 接着,选择车票的种类,即单价,分 2元、 4 元、 6元; 选择购票数量,一次购票数限制在 3张以内,选择 1张、 2张、 3张; 然后,进入投币阶段,投入钱币,投入的钱币设计为 1元、 5元、 10元币种; 当投入的钱币达到所需金额时,系统进入出票以及找零状态,售票机自动出票,并自动找出余额; 然后,再次点击“开始购票”进行另一次购票。 b) 选择出站口或投币过程中,乘客都可以按“取消”按钮取消该次交易。选择出站口的过程中,若按“取消”按钮,则售票机直接进入到找零状态;投币过程中,若按“取消”,则售票机将乘客已经投入的钱币全部退出, 即进入找零状态,。 c) 客人一次只能选择一个车票种类。 3 种票类型用 3 位二进制向量编码表示,即 001 表示选择 2 元车票, 010 表示选择 2 元车票, 100 选择 2 元车票。实验之前设计的是 3种票类型用 2 位二进制码表示,因为考虑到仿真及下载到实验板模拟的方便,遂将之改为 3位,使之每一个类型用一个按键控制。 d) 票机的进币口可识别三种纸币,仿照 c)中模式,拟用长度为 3 的二进制表示。乘客 2 可以连续多次投入钱币,并且可以以任意顺序投入。纸币最多可以投入 27元。 e) 用 5位二进制数表示 5个状态,分别是 状态 程序标示 代表状态 00001 待选择票种状态 00010 待选择购票数量状态 00100 待放入钱币状态 01000 票状态 10000 零状态 3、 系统总体框图 图 1 图 2 3 图 3 图 4 4 图 5 5 图 6 4、 分模块设计 6 经过分析 , 本地铁自动售票系统的设计需要实现以下几项主要功能 : 票种选择 , 票数选择 , 投币处理 , 出票及余额找零 . 本系统可以采用模块化设计和有限状态机的设计方案来实现。 采用模块化设计方法即从整个系统的功能出发 , 将系统的整体逐步分解为若干个子系统和模块,然后用 后形成顶层文件,在 境下进行编译与仿真,检查所编程序是否运行正确。如果出现错误,需要进行修改,直到完全通过为止。 采用模块化设计的优点在于:对设计的描述从上到下逐步由粗略到详细,符合常规的逻辑思维习惯。 便于由多个设计者同时进行设计 从而加速整个项目的开发进度;每个子模块都能够灵活使用综合和实现工具独立进行优化,从而达到更好的优化结果;调试、更改某个子模块时,不会影 响其他模块的实现结果,保证了整个设计的稳定性与可靠性。 有限状态机( 称 指 输出向量 不仅依赖于当前输入向量 ,也依赖于过去输入向量序列的电路 存器 逻辑 (时序逻辑 )和组合 逻辑组 成 . 有限状态机 是数字逻辑电路以及数字系统的重要组成部分,尤其应用于数字 系统核心部件的设计,以实现高效率高可靠性的逻辑控制。 一般有限状态机的 : 说明部分: 主要是设计者使用 : S ( 主控时序逻辑部分: 任务是负责状态机运转和在外部时钟驱动下实现内部状态转换的进程。时序进程的实质是一组触发器,因此,该进程中往往也包括一些清零或置位的输入控制信号,如 主控组合逻辑部分: 7 任务是根据状态机外部输入的状态控制信号(包括来自外部的和状态机内部的非进程的信号)和当前的状态值 及对外部或对内部其他进程输出控制信号的内容。 辅助逻辑部分: 辅助逻辑部分主要是用于配合状态机的主控组合逻辑和主控时序逻辑进行工作,以完善和提高系统的性能。 无论与基于 是与可完成相似功能的 态机都有其难以逾越的优越性,它主要表现在以下几方面: 由于状态机的结构模式相对简单,设计方案相对固定,特别是可以定义符号化枚举类型的状态,这一切都为 且,性能良好的综合器都具备许多可控或不可控的专 门用于优化状态机的功能。 状态机容易构成性能良好的同步时序逻辑模块,这对于对付大规模逻辑电路设计中令人深感棘手的竞争冒险现象无疑是一个上佳的选择,加之综合器对状态机的特有的优化功能,使的状态机解决方案的优越性更为突出。 状态机的 构清晰,易读易懂,易排错和修改。 在高速运算和控制方面,状态机更有其巨大的优势。由于在 个状态机可以由多个进程构成,一个结构体中可以包含多个状态机,而一个单独的状态机(或多个并行运行的状态机)以顺序方式的所能完成的运算和控制方面的工作与一个 就运行速度而言,状态机状态变换周期只有一个时钟周期,而且,由于在每一状态中,状态机可以完成许多并行的运算和控制操作,所以,一个完整的控制程序,即使由多个并行的状态机构成,其状态数也是十分有限的。因此有理由认为,由状态机构成的硬件系统比 工作速度要高出两个数量级。 就可靠性而言,状态机的优势也是十分明显的。首先是由于状态机的设计中能使用各种无懈可击的容错技术;其次是当状态机进入非法状态并从中跳出所耗的时间十分短暂,通常只有2个时钟周期,约数十个 不足以对系统的运行构成损害 . 应用 计状态机的具体步骤如下: ( 1)根据系统要求确定状态数量、状态转移的条件和各状态输出信号的赋值,并画出状态转移图; 8 ( 2)按照状态转移图编写状态机的 计程序; ( 3)利用 具对状态机的功能进行仿真验证。 经过综合比较 ,决定采用状态机来实现本系统的设计 ,这样不仅思路很清楚而且可读性也非常强 . 利用状态机实现售票功能。 需要首先把整个系统的所有状态都给罗列出来,然后实现每个状态的内容 ,最后再利用一些变量将各个状态连接起来 ,实现整个系统的基本功能 . 于按键动作的时刻和按下的时间长短是随机的。并且存在由开关簧片反弹导致的电平抖动,抖动的时间一般小于 20此必须为每个按键开关设置一个消抖和同步电路,此电路可有多种形式。按一次键,只产生一个脉冲,脉冲宽度为防抖动时钟的脉宽 。在投币的时候,由于要多次投币,多次按键,使之在按键的时候,每按一次,程序只会执行一次。防抖动时钟的频率为 100下来得为其设置一个分频系数为 500 00的是把实验板 5000防抖电路正常工作。 的是把实验板 505000个数码管工作频率到 2000 三、 仿真波形及波形分析 a). 系统复位 9 图 7 系统复位, 1;系统进入第一个状态 0001,系统所有数据清零, 待选择票种状态, 6个数码管显示 000000; b). 选择车票种类 图 8 10 选择车票种类, 100“代表买单价为 6元的车票,系统进入第二个状态 0010,待选择购票数量状态, 6个数码管显示 600000; c). 选择车票数量 图 9 11 选择车票数量, 100“代表购票 3张,系统进入第三个状态 0100, 待放入钱币状态, 1代表钱币不足, 6个数码管显示 630000; d). 投入钱币 图 10 12 投入钱币, 010” 代表投入 5元,钱币不足,系统依旧停留在第三个状态0100, 1代表钱币不足, 6个数码管显示 630500,等待放入钱币; e). 第二次投入钱币 图 11 13 第二次投入钱币, 100” 代表投入 10元,但钱币依旧不足( 6*3=185+10=15),判断 0代表钱币已足,系统进入第四个状态, 1000, 票状态; g). 系统自动出票 系统自动出票, 1显示在 3个周期代表出票 3张,系统进入第五个状态, 0000, 零状态。 h). 系统自动找零 系统自动找零, = 1 持续两个周期代表检测 ,依次找出 2张 1元的纸币,找零结束 ,6个数码管显示 632032, 10000” 代表状态停留在找零阶段。 15 i)图 13 之后, 1,代表再次购票,进入第一个状态 0001, 系统数据清零 ,待选择票种状态, 6个数码管显示 000000; j). 取消操作 图 14 16 在 c), d), e)之后,如果想取消交易, 1 ,系统进入找零状态,如,在 d)之后取消,自动找零, = 1代表检测到 ,找出一张 5元的纸币,找零结束,6 个数码管显示 630505; k). 整个购票过程结束。 四、 源程序 : 17 : of : : : : : 2012 is in 统复位信号 in in 统时钟 in 消操作键 in ); 票种类 in ); 购票数 in ); 币不足报警信号 票 ); 额找出 );统状态指示 SG: ); BT: ) ); 18 in 频模块 in 抖模块 in in T ; 义系统转换状态 (等待选择票种状态 , 等待选择购票数量状态 , 等待放入钱币状态 , 出票状态 , 找零状态 ) ; A: ; ); ); ); ); ); ); ); ); 19 ); ); u1: u2: u4:),); u5:),); u6:),); 线译码器 = if 1 计数器 5 is 11011 = is 1001 = is 11 = m: ; 票单价 7; 票总额 ,投币总额 ,找零总额 ; 购票数 零结束标志 23 1) - 1) 择出票种 3 种车票类型 000 = 0; 2; 4; 24 6; m/=0 = 票种结束 ,进入选票数状态 = 选票种 ,停留在选票种状态 = 择票数 表选择 1张车票 = 1*算票价 1; 表选择 2张车票 = 2*2; 表选择 3张车票 = 3*3; 多购 3张票 if =0 = 票结束 ,进入投币状态 = 选票 ,停留在选票状态 = 行投币 票 = = = 额找出 ,按从大到小原则退钱 (10元 ,5 元 ,1元 ) )- 5元 )- 1元 他任何情况 ,均回到选站状态 = if 1 = 0=15),判断 代表钱币已足, 6个数码管显示 632000。系统进入第四个状态, 1000, 票状态; g) 系统自动出票,数码管 ,出票一张, ,判断票没有出完,再出一张, 示数字 2,判断票没有出完,再出一张, 。判断票已出完, 6个数码管显示 632030,系统进入第五个状态, 0000, 零状态。 图 20 40 h) 系统自动找零,数码管 ,找零 1元, 表找零 1元( 元),数码管 ,判断 =,不为零, 再找出一元, 表找零 1元,数码管 示 2,找零结束, 6个数码管显示 632032。 图 21 i) 之后,按下 表再次购票, ,进入第一个状态 0001,系统数据清零 , 待选择票种状态, 6个数码管显示 000000; 41 图 22 j) 在 c), d), e)之后,如果想取消交易,拨下拨码开关 时, ,系统进入找零状态,如,在 d)之后取消,自动找零, 表找零出 5元, ,代表找出零钱 5元, 6个数码管显示 630505; 42 图 23 k) 整个购票过程结束。 六、元器件清单及资源利用情况 a) 实验板标注名称 管脚 程序中名称 作用 备注 2 制数码管中 9 制数码管中 43 8 制数码管中 7 制数码管中 5 制数码管中 3 制数码管中 2 制数码管中 实验板标注名称 管脚 程序中名称 作用 备注 b): 实验板标注名称 管脚 程序中名称 作用 备注 3 待选择票种状态 4 待选择购票数 44 量状态 5 待放入钱币状态 6 票状态 7 零状态 8 1元指示灯 9 5元指示灯 0 币不足提醒指示灯 c) 实验板标注名称 管脚 程序中名称 作用 备注 25 入票数 1张 27 入票数 2张 29 入票数 3张 33 消键 34 统复位键 d) 实验板标注名称 管脚 程序中名称 作用 备注 24 择单价 2 元的票种 45 23 择单价 4 元的票种 22 择单价 6 元的票种 21 入 1 元纸币一张 1 入 5 元纸币一张 1 入 10 元纸币一张 9 始购票 e) 46 七、故障及问题分析 1、数码管显示 我首先做的是在软件上实现自动购票的过程,所以刚开始的时候并没有加数码管显示程序。当把软件过程实现之后,开始添加数码管显示。可这时候发现不是那么容易,基本所有的程序都要改一遍。基本上实现数码管显示的时间和刚开始实现软件过程所花的时间是一样的。不过,到现在也不能确定,如果刚开始就软硬结合会是怎样。有待以后的试验中去尝试吧。 2、按键防抖 在选择车票单价和车票数量时,由于程序原因,不会按一次键就跳几个数字,使之在数码管上不能一步一步显示数字。而在投币阶段,因为会多次投币。之前没有加防抖的时候,比如购票 3张 单价 6元的票,一共需要 18元,当投入键按下 10元的时候,会连续跳 2下直接到 20元,如果按下 5元的键,就会一下跳 4次到 20元。我打算的设计方案是按一下投一次,数码管显示相应的金额。 最后发现要加防抖,工作频率大约是 100右,分完频后还是不好使。找了同学都没法解决问题,最后只能找了老师,老师调试了几次之后,改动了防抖程序中的 ND 为 47 实现了我所想 要的功能,当时真的是特别的高兴,随着这个疑难杂症的解决,我的程序也就到了尾声了。 之前尝试过将频率分的特别低,这样按键反应就会慢,可是,有时候把握不好时间,还是会一次跳几个,有时候还会不跳。这毕竟不是好方法,不可取。 八、总结与结论 总结: 四 周的 数字电路 设计 实验 课程结束了,在此次课程设计中,我收获了许多,不仅在知识学习方面,而且在动手能力方面、团结合作能力等方面都有了一定的成就。 首先,在知识学习方面,虽然我们 在上学期数电实验时候 接触过 一门语言,但是我们都还不是很 能熟练的运用它 ,只知道它由实体、结构体组成,其余的就不是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年苏科版九年级生物下册阶段测试试卷含答案
- 2025年华师大版七年级物理上册阶段测试试卷含答案
- 2025年浙教新版一年级语文上册阶段测试试卷含答案
- 二零二五版农业投入品质量安全监管服务合同4篇
- 临时商铺租赁合同样本版B版
- 2025年立柱广告牌租赁合同(含品牌推广服务)4篇
- 2024版建筑工程招投标咨询服务合同
- 2025年度体育器材打蜡保养服务合同模板4篇
- 二零二五年度出租房屋消防安全责任委托管理合同3篇
- 2025版农户农产品收购贷款合同示范文本4篇
- 副总经理招聘面试题与参考回答(某大型国企)2024年
- PDCA循环提高护士培训率
- 2024-2030年中国智慧水务行业应用需求分析发展规划研究报告
- 《狮子王》电影赏析
- 河北省保定市定州市2025届高二数学第一学期期末监测试题含解析
- 中医护理人文
- 2024-2030年中国路亚用品市场销售模式与竞争前景分析报告
- 货物运输安全培训课件
- 前端年终述职报告
- 2024小说推文行业白皮书
- 市人民医院关于开展“改善就医感受提升患者体验主题活动”2023-2025年实施方案及资料汇编
评论
0/150
提交评论