- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《EDA应用实训》课程设计-出租车计价表的设计与仿真
目 录
1.绪论 1
2. 总体设计 1
2.1设计任务及要求 1
2.2设计方案及选择 2
2.2.1用VHDL语言实现计价 2
2.2.2用ABEL语言实现计价 2
2.2.3出租车计价器的实现方案 3
3程序设计 4
3.1里程模块设计 4
3.2等待时间模块 7
3.3计价模块 11
3.4总体模块连线图 12
4程序的调试与仿真分析 13
4.1测试向量的编写 13
4.2仿真波形及分析 13
5总结与体会 17
参考文献 18
1 绪论
随着经济的迅猛发展以及人民生活水平的提高,城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普通的交通工具。出租车计价器是出租车营运收费的专用智能化仪表,是使出租车市场规范化、标准化的重要设备。一种功能完备,简单易用,计量准确的出租车计价器是加强出租车行业管理,提高服务质量的必需品。本设计采用ABEL硬件描述语言作为设计手段,采用自顶向下的设计思路,得到一种出租车计价系统的软件结构,通过软件下进行仿真,证明所设计的电路系统完成了出租车计价的功能,各项指标符合设计要求。该设计虽然功能简单,智能化水平比较低,但仍具有一定的实用性。
我们知道出租车的计价器显示的价格与行驶的里程,还有路途中等待的时间见有关,而且随着里程的增加价格会有不同的档位,要自动化控制它的变化需要熟悉它的基本运行环境,掌握它工作的几大模式,等待时间模块,路程模块,计费模块等。在这个设计中,我选用的是ABEL语言设计的出租车计价器,仿真软件选用的是ISPLEVE,设计输入可采用原理图,硬件描述语言,混合输入三种方式,能对所设计的数字电子系统进行功能仿真和时序仿真。
使用ISPLEVE时,要先创建工程项目,再绘制顶层原理图,再用ABEL语言编程,接着编译仿真。
2 总体设计
2.1 设计任务及要求
设计一个TAXI的计价表,按实际行驶里程和等候时间综合计价。计价规则为:
起步价8元(含4KM),4Km,7Km]单价1.4元/Km,(7Km,∞)单价2.1元/Km; 每行驶500m价格跳一档(7Km以前每档0.7元,7Km之后,1.1元和1元交替);
2.行驶速度低于12Km/h时计算等候时间,等候时间每计满3分钟,价格跳一档(跳档规则同上);
3.计价不分昼夜模式,价格不设上限;
4.车载传感器可提供1m的行驶距离脉冲和实际速度是否达到12Km/h的信号。(视为已知信号,可直接使用)
5.分别显示等待时间,行驶路程,价格。
2.2 设计方案及选择
2.2.1 用VHDL语言实现计价
在QuartusⅡ环境中对出租车自动计费器的各个部分利用VHDL这一硬件描述语言予以设计,生成模块。主要有:运算控制模块、分频器、显示模块这三大部分组成。由顶层模块协调控制完成设计任务。我们知道VHDL是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流和行为3种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。
图2.2.3 总体框架
当速度低于12km/h时时钟脉冲和里程脉冲同时控制计价器,速度高于那么多时,由里程控制控制计价器。这样的话,我们可以将等待时间脉冲与里程脉冲相或之后的脉冲控制计价器最后一模块。
我们根据里程100m的脉冲经一5进制计数器,其进位输出端为500m脉冲,输出的低位正好判断里程小数部分是0,还是0.5,再将500米脉冲经一2进制计数器,其进位输出正好是1km的脉冲,再由一十进制计数器记录整数部分的数值,里程的整数部分和小数部分可以控制计价器的参进量。
假设时间脉冲间隔是一秒,那我们先将此脉冲经一60进制计数器,其进位端输出的就是一分钟的脉冲,再经一3进制计数器,其进位端输出脉冲正好是等待时间3分钟,倘若此时里程大于4km,则按原来里程中设定好的参进量计价,每三分钟进一档。
为了让里程和等待时间一起控制计价器,我们选用的是等待时间脉冲与每五百里程脉冲相或,在加上设定好的参进量控制计价器。
3 程序设计
3.1 里程模块设计
每一百米给一个脉冲,经一五进制计数器其进位输出端输出五百米脉冲,再由一二进制计数器可以把里程千米的整数部分和小数部分分开计数,十进制计数器记录千米的整数部分。
图3-1-1五进制计数器
MODULE COUNT5
CP,R PIN;
D2,D1,D0 PIN ISTYPE REG;
Y1 PIN ISTYPE COM;
Q=[D2,D1,D0];
EQUATIONS
Q.AR=R;
WHEN(R==1)THEN{Q:=0;Y1=0;}
Q.CLK=CP;
W
文档评论(0)