- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计基于FPGA的出租车计价器设计
基于FPGA的出租车计价器设计
摘要
介绍了出租车计费器系统的组成及工作原理,简述了在EDA平台上用器件构成该数字系统的设计思想和实现过程。论述了计程模块计费模块译码动态扫描模块等的设计方法与技巧。
随着EDA技术的高速发展,电子系统的设计技术发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。利用它进行产品开发,不仅成本低、周期短、可靠性高,而且具有完全的知识产权。本文介绍了一个以Altera公司可编程逻辑芯片为控制核心、附加一定外围电路组成的出租车计费器系统。随着社会的不断进步,人们生活水平的不断提高,出租车逐渐成为人们日常生活不可缺少的交通工具。而计价器作为出租车的一个重要组成部分,关系着出租车司机和乘客双方利益,起着重要的作用,因而出租车计价器的发展非常迅猛。
(5)各计数器的计数状态用功能仿真的方法验证,并通过有关波形确认电路设计是否正确。
附加功能:
(1)增加了晚上计费功能和等待功能。晚上起步价为12.00元,并在车行3公里后再按4元/公里计算车费。车白天停止超过三分钟后按1元/分钟计算,晚上超过3分钟按2元/分钟计算。
(2)实现预置功能:能预置起步费、每公里收费、等待加费时间。
(3)实现模拟功能:白天、黑夜;等待、行驶状态。
(4)设计超过三公里提醒功能。
2.3本人任务
本人负责软件部分。
2.4任务书(附录一)
3.方案设计及原理框图
3.1硬件方案设计及原理框图
硬件系统组成框图
各模块的作用和组成:
(1)开关模块
该模块的作用是用于电路的输入的信号。
主要有三个开关以及三个限流电阻,电源构成。
(3)动态显示模块:
此模块由六个数码管和三个二极管所构成,17个200Ω电阻起到限制电流的作用,使得流到数码管的电流适当,防止数码管中的电流过大,而使得数码管损坏。数码管将计费、等待时间和里程动态的显示出来。
3.2软件方案设计及原理框图
3.2.1系统的顶层框图及方案设计:
信号输入:各种控制信号经输入端给控制芯片。
控制芯片:采用的有CPLD或者FPGA等。
动态显示电路:采用的是数码管来实现功能的输出。
3.2.2 FPGA内部具体框图及方案设计:
出租车的一般计费过程为:出租车载客后,启动计费器,整个系统开始运行,里程计数器从0开始计数,费用计数器从9开始计算;出租车载客中途等待,等待时间计数器从0开始计数。最后根据行驶里程或停止等待的时间的计费标准计费。出租车到达目的地停止后,停止计费器,显示总费用。
根据出租车计费器的工作过程,本系统采用分层次、分模块的方式设计,其FPGA内部具体框图如下所示。
各模块的功能:
(1)由FPGA晶振电路产生50MHz时钟信号并输入。
(2)分频器:将时钟信号进行分频。
(3)标志模块:将按钮产生的脉冲转化为一种标志信号。
(4)计程模块:在等待信号未作用时,来一个时钟脉冲信号,里程值加1。该模块还包含一个路程计费标志的小模块,输出一个路程计费的信号。
(5)等待状态模块:等待信号作用时,该模块可以记录等待的时间,并产生等待计费的信号。
(6)车费计数模块:按行驶里程收费,分为白天和黑夜。白天收费标准:起步费为12.00元,超过3公里按4元/公里,车暂停超过三分钟按2元/分钟计算。黑夜收费标准:起步费为15.00元,超过3公里按5元/公里,车暂停超过三分钟按1元/分钟计算。
(7)输出控制模块:分时输出里程、等待时间、费用三个信号,实现动态显示功能。
(8)译码模块:实现将车费计数模块、等待状态模块和里程计数模块输出的BCD码转换成七段码输出。
4.各单元模块设计,仿真结果及分析
本系统采用层次化、模块化的设计方法,设计顺序为自下向上。首先实现系统框图中的各子模块,然后由顶层模块调用各子模块来完成整个系统。
4.1分频模块:
4.1.1分频模块的框图
图3.1.1分频器的实体图
此模块的功能是对总的时钟进行分频,总的时钟是50M。计数分频器使用五个这样基本的分频器(35分频)组合而成,控制模块分频器使用三个这样基本的分频器(35分频)组合而成。
4.1.2分频模块的VHDL程序
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY PULSE IS
PORT(CLK0:IN STD_LOGIC;
FOUT:OUT STD_LOGIC);
END PULSE;
ARCHITECTURE ONE OF PULSE IS
BEGIN
PROCESS(CLK0)
VARIABLE CNT:STD_LOGIC_VECTOR(2 DOWNTO 0);
VARIABLE FULL :STD_LOGI
文档评论(0)