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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

出租车计费系统的设计好Word格式文档下载.docx

1、计数器D完成计数到20(完成车费的起步价)。计数器E完成模拟实现车行驶100 m的功能。(2)当超出起步价时就自动在起步价的基础上每增加一个100m脉冲就增加相应的费用,而当总里程达到或超过一定的数值时,能按新的收费标准进行收费。(3)译码/动态扫描电路模块将路程与费用的数值译码后用动态扫描的方式驱动6只数码管,即所连接的数码管共用一个数据端,由片选信号依次选择输出,轮流显示。(4)数码管显示将千米数和计费金额均用3位LED数码管显示(2位整数,1位小数)。7.具体模块设计:7.1车速控制模块当启停键为启动状态(高电平时),模块根据车速选择和基本车速发出响应频率的脉冲驱动计费器和里程显示模块进

2、行计数;当处于暂停状态,暂停发出脉冲,此时里程计数模块和计费模块相应地停止计数。当处于停止状态时,停止发出脉冲,此时计费器和里程显示模块数清零。如图所示。程序代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SPEED IS PORT( CLK,RESET,START,STOP: IN STD_LOGIC; SPEEDUP : IN STD_LOGIC_VECTOR(4 DOWNTO 0); CLKOUT : OUT STD_LOGIC );END SPEED;ARCHITECT

3、URE A OF SPEED IS SIGNAL COUNT1 :STD_LOGIC_VECTOR(1 DOWNTO 0); SIGNAL TEMPCLK,CLKS:STD_LOGIC; SIGNAL KINSIDE :STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN KINSIDE=00000-SPEEDUP; CLKS_LABEL: PROCESS(RESET,CLK) VARIABLE COUNT2: STD_LOGIC_VECTOR(4 DOWNTO 0); IF STOP=1 THEN TEMPCLK =0; ELSIF RESET = and stop= TH

4、EN COUNT2: ELSIF CLKEVENT AND CLK= AND STOP= IF START= IF COUNT2=KINSIDE THEN COUNT2: END IF; IF NOT (SPEEDUP=) THEN COUNT2:= COUNT2+1; IF COUNT2=00001= NOT TEMPCLK; END PROCESS CLKS_LABEL; CLKOUT = TEMPCLK;END A;仿真结果:启动后(包括暂停)复位后停止后7.2里程计数模块由车速控制模块发出的脉冲作为计数脉冲,行驶里程大于3KM时,本模块中信号变为1,并将计数动态显示出来,每来一个脉冲,

5、里程值加0.1(每收到一个脉冲代表运行了0.1公里)。程序中要将计数值从十六进制转换成十进制,即在十六进制的数上加7或6,同时产生了相应的进位信号。USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY jicheng IS PORT (CLK,RESET,STOP: COUNT1:OUT STD_LOGIC_VECTOR (3 DOWNTO 0); COUNT3:OUT STD_LOGIC_VECTOR (3 DOWNTO 0);END jicheng;ARCHITECTURE AA OF jicheng ISBEGIN PROCESS(CLK,RESET,STOP) VAR

6、IABLE MM: STD_LOGIC_VECTOR (11 DOWNTO 0); IF RESET = MM:000000000000 ELSIF CLK= THEN MM: IF MM(3 DOWNTO 0)=1001=MM+7; ELSE MM:=MM+1; IF MM(7 DOWNTO 4)=1010=MM+01100000 COUNT1 =MM(3 DOWNTO 0); COUNT2 =MM(7 DOWNTO 4); COUNT3 =MM(11 DOWNTO 8); END PROCESS; END AA;开始计程个位开始计数十位开始计数7.3计费模块计费模块启动reset信号,根据

7、输入的clk信号变化,调节费用的计数,用c1、c2、c3显示费用。其初值为6,当里程数超过2km后,才接受计数车速控制模块发出的脉冲的驱动,并且将计数显示动态显示出来,每一个脉冲其数值加0.12,当里程超过15km时数值加0.18。当启动键为启动状态(高电平时),模块根据车速选择和基本车速发出响应频率的脉冲驱动计费器和里程显示模块进行计数;当处于停止状态时,暂停发出脉冲,此时计费器和里程显示模块相应的停止计数,全部归零。ENTITY jifei IS PORT(CLK,RESET,stop:IN STD_LOGIC; JUDGE2:IN STD_LOGIC_VECTOR(3 DOWNTO 0)

8、; JUDGE3:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUNT4:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END jifei;ARCHITECTURE AA OF jifei ISSIGNAL EN :SIGNAL MONEY :STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL MCOUNT :STD_LOGIC_VECTOR(15 DOWNTO 0);MONEY00011000 WHEN (MCOUNT(15)=) OR (MCOUNT(14)=) OR (MCOUNT(13)=) ELSE 00010010E

9、N WHEN JUDGE3=0000 AND JUDGE2(3 DOWNTO 1)=000 ELSE PROCESS(clk,reset) VARIABLE mm: std_logic_vector(15 downto 0); if stop=and clk= THEN mm:0000000000000000 elsIF reset=THEN mm:0000011000000000 -复位,计费显示为起步费6.00 ELSIF clkevent and clk= IF en=mm+money; -里程超过2公里 IF (mm(1)=or(mm(3 downto 1)=)or(mm(3 down

10、to 2)=11)THEN=mm+6;END IF; -十六进制转换成十进制 IF mm(7)=and (not(mm(6 downto 5)=00=mm+ IF mm(11)=and(not(mm(10 downto 9)=011000000000 END IF; count1=mm(3 downto 0); count2=mm(7 downto 4); count3=mm(11 downto 8); count4=mm(15 downto 12); mcount=mm; END aa;起步后开始计费行驶2公里后行驶15公里后7.4 动态扫描模块动态扫描电路将计数器A、B、C的计费状态用数码

11、管显示出来,所连接的数码管共用一个数据端,由片选信号依次选择输出,轮流显示。该模块经过6选1选择器将计费数据(3位BCD码)、计程数据(3位BCD码)动态选择输出。其中计费数据送入显示译码模块进行译码,最后送至十元、元、角为单位对应的数码管上显示;计程数据送入显示译码模块进行译码,最后送至以公里为单位的数码管上显示。如图所示:片选:ENTITY pianxuan IS PORT(CLK: A: OUT STD_LOGIC_VECTOR(2 DOWNTO 0);END pianxuan;ARCHITECTURE RT1 OF pianxuan IS PROCESS(CLK) VARIABLE B

12、:STD_LOGIC_VECTOR(2 DOWNTO 0); IF(CLK)THEN IF(B=101 B: ELSE=B+1; AD=A1; DPNULL; END CASE;END RT1;译码:ENTITY yima IS PORT(D: Q:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END yima;ARCHITECTURE RT1 OF yima IS PROCESS(D) CASE D ISQ011111100010000110001010110110011100111101001100110010111011010110111110101110100111

13、100011111111101111译码举例7.5 顶层模块将以上各模块的原理图对应的端口连接,如图所示。启动后暂停换挡行驶超过2公里后心得体会:通过本次对于出租车计费系统的设计,我们进一步掌握了VHDL这一语言,熟悉了Quartus2操作环境,更进一步地熟悉了有关数字电路的知识和具体应用。并能根据仿真结果来分析设计存在的问题及缺陷,从而能进行程序的调试和完善。总的来说,通过本次设计更进一步的增加了动手能力,对出租车计费系统的原理也有了更透彻的理解。虽然出租车计费系统已经初步实现其功能,但还存在一定的缺陷和不足,我们也还有很多该努力的地方!以后的日子里,我们要更加努力学习,争取学有所用,把所学的知识用于实践,对社会做一些有益的事情!附:

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

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