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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

最新VHDL出租车计价器.docx

1、最新VHDL出租车计价器VHDL出租车计价器该系统利用VHDL语言、PLD设计出租车计费系统,以MAX+PLUS软件作为开发平台,设计了出租车计费器系统程序并进行了程序仿真。使其实现计费以及预置和模拟汽车启动、停止、暂停等功能,并动态扫描显示车费数目。关键词: 出租车计费器;计数器;VHDL语言;MAX+PLUS;一、实验任务及要求1. 能实现计费功能,计费标准为:按行驶里程收费,起步费为10.00元,并在车行3公里后再按2元/公里,当计费器计费达到或超过一定收费(如20元)时,每公里加收50%的车费,车停止不计费。2. 实现预置功能:能预置起步费、每公里收费、车行加费里程。3. 实现模拟功能

2、:能模拟汽车启动、停止、暂停、车速等状态。4. 设计动态扫描电路:将车费显示出来,有两位小数。5. 用VHDL语言设计符合上述功能要求的出租车计费器,并用层次化设计方法设计该电路。6. 各计数器的计数状态用功能仿真的方法验证,并通过有关波形确认电路设计是否正确。7. 完成电路全部设计后,通过系统实验箱下载验证设计的正确性。 二、实验原理系统顶层框图: 车速选择 起/停开关 基本速率 Reset 扫描时钟 显示输出 显示输出计费器按里程收费,每100米开始一次计费。各模块功能如下:(1) 车速控制模块当起停键为启动状态时(高电平),模块根据车速选择和基本车速发出响应频率的脉冲驱动计费器和里程显示

3、模块进行计数;当处于停止状态时暂停发出脉冲,此时计费器和里程显示模块相应的停止计数。(2) 里程动态显示模块其包括计数车速控制模块发出的脉冲以及将计数显示动态显示出来,每来一个脉冲里程值加0.1(控制器每发一个脉冲代表运行了0.1公里)。(3) 计费动态显示模块其初值为10元,当里程超过3公里后才接受计数车速控制模块发出的脉冲的驱动,并且计数显示动态显示出来,每来一个脉冲(代表运行了0.5公里)其数值加1元,当收费超过20时数值加1.5元。三、出租车计费系统的实现 3.1系统的总体模块图: 3.2系统各功能模块的实现:(1)模块MS的实现模块MS,输入端口CK0、CK1为两个不同的时钟信号,来

4、模拟汽车的加速和匀速,JS加速按键。 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MS IS PORT(CK0:IN STD_LOGIC; CK1:IN STD_LOGIC; JS:IN STD_LOGIC; CLK_OUT:OUT STD_LOGIC);END MS;ARCHITECTURE ONE OF MS ISBEGIN PROCESS(JS, CK0,CK1) BEGIN IF JS=0 THEN CLK_OUT=CK0; ELSE CLK_OUT0); ELSIF CLKEVENT AND CLK=1 THEN IF STO=1

5、THEN STATE:=00;CQI:=CQI; ELSIF ENABLE =1 THEN CQI:=CQI+1; IF CQI30 AND CQI=80 THEN STATE:=10; ELSE STATE:=11; END IF; END IF; END IF;ST=STATE;END PROCESS;END ONE;(3)模块PULSE的实现该模块实现将时钟信号5分频功能。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY PULSE IS PORT(CLK0:IN STD_LOG

6、IC; FOUT:OUT STD_LOGIC);END PULSE;ARCHITECTURE ONE OF PULSE ISBEGIN PROCESS(CLK0) VARIABLE CNT:STD_LOGIC_VECTOR(2 DOWNTO 0); VARIABLE FULL :STD_LOGIC; BEGIN IF CLK0EVENT AND CLK0=1 THEN IF CNT=100 THEN CNT:=000 ; FULL:=1; ELSE CNT:=CNT+1; FULL:=0; END IF; END IF;FOUTQ1:=Q1;Q2:=Q2;Q3:=Q3; WHEN 01= Q1

7、:=0000;Q2:=0000;Q3:=0001; WHEN 10= IF Q21001 THEN Q2:=Q2+1; ELSE Q2:=0000; IF Q3 IF Q10101 THEN Q1:=Q1+5; ELSE Q1:=0000; END IF; IF Q1=0101 THEN IF Q21001 THEN Q2:=Q2+1; ELSE Q2:=0000; IF Q31001 THEN Q3:=Q3+1; END IF; END IF; ELSE IF Q21001 THEN Q2:=Q2+2; ELSE Q2:=0001; IF Q3NULL; END CASE;END IF;C1

8、=Q1;C2=Q2;C3=Q3;END PROCESS;END ONE;(5)模块SCAN_LED的实现该模块实现显示车费功能。BT为选位信号,SG译码信号。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SCAN_LED IS PORT(DI1:IN STD_LOGIC_VECTOR(3 DOWNTO 0); DI2:IN STD_LOGIC_VECTOR(3 DOWNTO 0); DI3:IN STD_LOGIC_VECTOR(3 DOWNTO 0); CLK2:IN STD_L

9、OGIC; SG:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); BT:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);END SCAN_LED;ARCHITECTURE ONE OF SCAN_LED IS SIGNAL CNT4 :STD_LOGIC_VECTOR(1 DOWNTO 0);SIGNAL A:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINP1:PROCESS(CLK2)VARIABLE SQ :STD_LOGIC_VECTOR(1 DOWNTO 0); BEGIN IF CLK2EVENT AND CLK2=1 THEN IF SQ=10 THEN SQ:=00; ELSE SQ:=SQ+1; END IF; END IF; CNT4BT=001;ABT=010;ABT=100;ABT=100;ANULL; END CASE;END PROCESS P2; P3:PROCESS(A) BEGIN CASE A IS WHEN 0000=SGSGSG=1

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

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