《出租车计价器设计》.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《出租车计价器设计》.doc

综合实验 ——出租车计价器设计 前言 随着微电子技术的发展,现代电子技术的核心已日趋转向基于计算机的电子设计自动化技术,即EDA(Electronic Design Automation)技术。EDA技术就是依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardware Description Language)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现,这是电子设计技术的一个巨大进步。 本学期,学校开设了EDA和VHDL课程的学习,而学习一门编程语言,最好的方法莫过于在一个完整的系统开发过程中进行。因此,EDA综合实验就是一个最好的学习实践机会。 随着我国社会经济的全面发展,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普遍的交通工具。出租车计价器是出租车营运收费的专用智能化仪表是出租车市场规范化、 标准化以及减少司机与乘客之间发生纠纷的重要设备。一种功能完备、简单易用、计量准确的出租车计价器是加强出租车行业管理、提高服务质量的必备品。本实验就是采用VHDL硬件描述语言作为设计手段,采用自顶向下的设计思路,得到一种出租车计价系统的软件结构,通过在 Quartus II软件下进行模拟仿真,并进行相应的硬件下载调试,证明所设计的电路系统完成了出租车计价器的功能,各技术指标符合预定标准,具有一定实用性。 一、实验任务及要求 1.能实现计费功能,计费标准为:按行驶里程收费,起步费为10.00元,并在车行3公里后再按1.6元/公里,车暂停时,停车一分钟之后开始加价,每分钟增加2.5元。 2. 实现预置功能:能预置起步费、每公里收费、车行加费里程。 3. 实现模拟功能:能模拟汽车启动、停止、暂停等状态。 4. 设计动态扫描电路:将车费及暂停时间显示出来。 5. 用VHDL语言设计符合上述功能要求的出租车计费器,并用层次化设计方法设计该电路。 6. 综合仿真验证,并通过有关波形确认电路设计是否正确。 7. 完成电路全部设计后,通过GW48系统实验箱下载验证设计的正确性。 二、实验原理 图1出租车计价器流程图 图2系统结构图 接口部分定义如下: 输入:clk_240,系统时钟,频率为240Hz; Start,启动信号,当start=1时,汽车启动,开始计价; 当start=0时,清零; Stop,暂时计时信号,当stop-1时,中途暂停,开始计时;当stop=0时,再次出发; Fin,汽车车速脉冲信号,是一个与随着车速变化而变化的脉冲信号。 输出:cha2,cha1,cha0,分别为价钱的十位,个位和角位; Km1,km0,分别为行驶公里数的十位,个位; Min0,暂时分钟数输出。 接口部分源程序如下: port ( clk_240 :in std_logic; --频率为240Hz的时钟 start :in std_logic; --计价使能信号 stop:in std_logic; --等待信号 fin:in std_logic; --公里脉冲信号 cha2,cha1,cha0:out std_logic_vector(3 downto 0); --费用数据 km1,km0:out std_logic_vector(3 downto 0); --公里数据 min0: out std_logic_vector(3 downto 0)); --等待时间 计价部分原理如下: 起步价10元,3公里内10元,超出3公里部分,每公里1.6元,车暂停时,2分钟内不加价,超出2分钟部分,每分钟2.5元; 计费部分源程序如下: feipin:process(clk_240,start) begin if clk_240event and clk_240=1 then if start=0 then q_15=0;q_16=0;f_15=0;f_16=0;f_1=0;f=0; else

文档评论(0)

taxe + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档