北邮EDA实验报告.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北邮EDA实验报告

数字电路综合试验报告题目:简易出租车计价器班 级: 学 号: 班内序号: 学生姓名: 2013/11/12 Tuesday一.实验介绍?1.实验目的?(1)进一步掌握VHDL和Quartus?II软件的使用;?(2)理解状态机的工作原理和设计方法;?(3)掌握利用EDA工具进行自顶向下的电子系统设计方法。?2.实验所用仪器及元器件?(1)计算机;?(2)EDA开发板及相应元器件。3.实验内容设计一台出租车计价器,不同情况具有不同的收费标准。基本要求:行驶公里:用时钟2秒钟表示出租车匀速行驶1公里,在行车5公里以内,按起步价13元收费,超过5公里部分,以每公里2元收费。燃油附加费为每运次1元。途中等待:用按键控制中途等待,等待少于(包括)5秒不收费,超过5秒后每等待3秒钟加收1元。用数码管分时显示计费金额、行驶里程和等候时间。字母A表示当前处于显示计费金额状态,字母B表示当前处于显示行驶里程状态,字母C表示当前处于显示等待时间状态。用按键控制出租车空载、载客状态并用点阵显示空载、载客状态。二、系统设计1.设计思路首先考虑基本要求,我们要实现的功能主体部分都是计时器的操作,如2秒记1公里,5公里内按起步价收费、等待每3秒加收1元等。都是我们对不同计时器的操作。因此要先分频出一个1KHZ的时钟用作记秒。至此我们就把基本要求1、2构思完成。用若干按键改变选择支以及计费模式和显示数值,均为上升沿触发,完成对整个计价器的控制。然后考虑数码管以及点阵显示问题,我们需要把上一部计算出的十进制数值转化成几个2进制数来表示,从而显示到数码管上。(考虑到数码管位数限制,我们默认显示数值不会超过9999,即数值可以用4个4位2进制数来表示)。至于点阵显示则事先考虑好要实现的图像以及需要如何扫描,不再赘述。2.分块设计及总体框图a)总体框图数码管显示模块分频及逻辑控制模块数据译码模块计费计里程计时模块外部输入时钟点阵显示模块 图2.2.1出租车计费器系统结构图b)分块设计分频及逻辑控制模块:将外部输入时钟50MHz频率分成1KHz和1Hz时钟,分别用于数码管显示扫描及点阵显示扫描频率和计费计里程计时的时钟频率。用按键btn1-btn3进行控制模块的工作状态和显示效果。计费计里程计时模块:根据输入的1Hz频率时钟完成对时间的计数,转换成2s累加1公里,再由公里数算出里程费,中途停车时进行1s一次累加的时间计数,再由时间算出中途停车的费用,将两项费用相加即为总费用。数据译码模块:用于得到的数据为整形数,不便于数码管的显示,为使其更为直观利于理解和显示,将得到的数据译码成个十百千四个4位BCD码的形式。数码管显示模块:将1KHz时钟提供给数码管选通信号cat0-cat4,根据译码的BCD码和输出种类标志flag用case语句选择出显示的信号输出到相应的数码管片上。点阵显示模块:根据控制模块的控制信号选择显示空载标志或载客标志,采用逐行扫描的方式显示。YNNNYYNY小于5km?显示13元显示新价格到达?价格加1结束启动检测按键,载客?大于5s?显示新价格检测按键,中途等待?NY c)流程图三、仿真波形及波形分析计费计里程计时模块仿真波形图输入的时钟clk_1为1Hz频率(这里的仿真时钟周期不是1S),clk_1一个周期代表1s的时间,clk_1上升沿有效计数1s。输入控制信号分别为carry和stop,控制载客状态和是否中途等待,两个信号均为上升沿触发代表按键的按下和松开。初始化状态为空载状态,各项显示均为0,carry第一次有效触发表示进入载客状态,显示基础费用13元;第二次有效触发表示完成一次载客,准备付款,加上燃油附加费;第三次有效触发表示完成付款,各项记录清零重新进入空载状态。stop信号在载客时上升沿触发有效,stop第一次有效触发表示中途等待,里程不再计数,等待时间开始计时,当计时时间超过5秒后每3秒加价1元;第二次有效触发表示结束中途等待,里程继续计数,等待时间不再计数。里程(road)每两个时钟上升沿计数加1,表示2s每公里。输出费用、里程、等待时间。 数据译码模块该模块中输入的时钟信号clk为50MHz频率,也是为了尽可能快的得到显示信号拆分成个十百的形式。由波形图可以看出clk上升沿触发,当14个上升沿之后,完成14次计数周期后,输出百位bai=0,十位shi=1,个位ge=4,完成了各位的拆分,为数码管显示作准备 数码管显示模块该模块中输入的时钟信号clk_2为1KHz频率,这个频率为数码管的扫描频率。输入信号ge、shi、bai、flag用于显示,cat0显示个位,cat1显示十位,cat2显示百位,cat3不显示,cat4显示标志。初始化时cat为全0,不能选中数码管。数码管输出信号按照输入信号用case语句选择

文档评论(0)

kaiss + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档