欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    EDA实训-出租车计费(共11页).doc

    • 资源ID:12171028       资源大小:899.50KB        全文页数:11页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EDA实训-出租车计费(共11页).doc

    精选优质文档-倾情为你奉上 EDA技术及应用实训报告姓 名 满眼皆是繁华 指导教师: 2013 年 7 月 8 日实训题目:出租车计费器的设计 1 系统设计1.1 设计要求1.1.1 设计任务 设计并制作一台出租车计费器。1.1.2 性能指标要求 用EDA实训仪的I/O设备和PLD芯片实现出租车计费器的设计。 出租车起步开始计程和计费,计程系统按实际公里数计程,计费系统首先显示起步价(如7.0),车行驶2km以内,只收起步价7元。 出租车行驶超过2km后,按增加的每公里1.6元在7.0元的基础上增加。 出租车行驶超过10km后(或超过20元路费),每公里加收50的车费,即车费变为每公里2.4元。 出租车达到目的地后,(用一个按钮)计程和计费数据清零,为下一次计费开始。1.2 设计思路及设计框图1.2.1设计思路出租车计费器的整体结构包括:分频模块,计数模块,计费模块。另外我还加了扩展功能:选择模块,计时模块。不计价时,可以切换到显示时分秒。这个功能需要选择模块和计时模块共同来实现。通过分频模块产生一个脉冲信号模拟汽车的启动与停止,然后通过计数模块,计算出一共所行驶的路程,最后通过记价模块,将所行驶的路程计算出相对应的价钱。计费显示起步价7元,2km之内为起步价,以后每1km在起步价7元的基础上增加1.6元;超过10km以后,每1km增加2.4元。通过数学公式计算出费用,这就是费用计算模块。结合生活中的出租车计费器,分别有3km以内,10km以内以及超过10Km以后的计费标准。我设计用拨码开关来实现清零与车速的转换,并通过数码管来显示路程与车费。车轮每转一圈就是一个脉冲,因此,脉冲频率的快慢就是车速的快慢,这就是车速的计算;把车轮每转一圈 4米的话,每来一个脉冲路程就加4米,这就是路程的计算;当路程的百位向千位进位时就产生一个脉冲也就是路程又走了1公里。于是便实现了车行驶3km以内,只收起步价7元。行驶超过3km后,按每公里1.6元在7.0元的基础上增加。行驶超过10km后(或超过20元路费),每公里加收50的车费,即车费变为每公里2.4元。1.2.2总体设计框图2 各个模块程序的设计2.1分频模块这个模块是设计不同车速的,通过d1与d2的值来设置四个不同的车速,其中00是最慢,01是中速,10是最快,11是停止。这样更贴切生活。2.2计费器模块分为输出路程和时间的模块,由分频,路程,车费,模块组成。车速的计算:车轮每转一圈就是一个脉冲,因此,脉冲频率的快慢就是车速的快慢。路程的计算:如果车轮每转一圈,每来一个脉冲路程就加4米。计费器模块如下图所示:2.2.1车费模块这个模块就是实现题目要求的,在2km内收起步价7块,大于2km小于10km的时候每公里收1.6块,大于10公里以后每公里收2.4块,通过if循环嵌套来实现。2.2.2路程模块这个模块是用来计算具体路程,并通过数码管体现出租车所行走的路程。2.3计时模块不计价时,可以切换到显示时间,显示时分秒,也可人为校准。方便在车上看时间。用控制端高低电平控制选择。计时模块路下图所示:2.4选择模块计费器和显示时分秒的切换选择,由输入端c控制。3 调试过程写程序的过程中遇到了很多问题,编译的时候出现了很多错误,通过询问老师跟同学,再参考一些同学的程序后,解决了逐个问题,逐渐完善了自己的程序。管脚锁定:4 功能测试4.1 测试仪器与设备 EDA实训箱, Quartus II软件,数据连接线。4.2 性能指标测试 S14为1时开始计费,S0和S1可以调节路程跳动的速度,可切换3种不同的速度;K7按键校准车费;当S0 S1都为1时,停止计费,也表示车停止走动。S15用来切换计费器和显示时间的功能,拨为0时,是计费器功能;拨为1时,是显示时间功能。按键K7 K6 K5可以调节路程的设置,S14为0时是清零功能。K2 K1 K0为时分秒的校准。5 实训心得体会这次EDA实训将EDA知识运用到实际中,我从中受益匪浅。我选择的实训题目是出租车计费器,刚开始看题目,有点摸不着头脑,查找资料,于是根据每一个要求,再根据老师上课讲的内容,有了个总体的思路。通过这样实训,提高了动手能力,如何运用数码管显示十进制数,在将EDA课堂知识运用到实训中时,对课堂知识也有了更好的理解,在过程中遇到不懂的地方,通过请教老师和同学也明白了自己的不足之处,并将在以后的学习中进一步完善自己。波形仿真时,一直有问题。后来发现是因为自己操作不对,在proessing那儿要设置,我记得上课老师又给我们讲过,可能是我记得不牢。通过这次实训,我运行软件Quartus II熟练多了较以前来说。下次做实训的时候要考虑周到,不清楚的时候要及时翻书,并回忆老师上课讲的内容和重点。更在这一点上明白了,我们必须善于发现问题改正问题,同时要有一颗持之以恒的心。用理论知识运用到实际中,大大提高了我们的学习兴趣,同时要感谢老师们的悉心教导。6 参考文献 1 谢自美电子线路设计·实验·测试(第二版)武汉:华中科技大学出版社,20002 江国强,EDA技术与应用(第2版),电子工业出版社,2008附录附录1:仿真波形图(部分模块)路程仿真计费器仿真时间仿真附录2:程序清单分频器module fpq(clk,d1,d2,nclk);input clk,d1,d2;output nclk;reg nclk;reg24:0 num;always(posedge clk) begin case(d1,d2) 0:begin num=num+1; if(num>=) begin nclk=1;num=0;end else nclk=0; end 1:begin num=num+1; if(num>=) begin nclk=1;num=0;end else nclk=0; end 2:begin num=num+1; if(num>=) begin nclk=1;num=0;end else nclk=0; end 3:begin num=num+1; if(num>=0) begin nclk=1;num=0;end else nclk=0; end endcase end endmodule路程计算module lc(nclk,clrn,q,d);input nclk,clrn;output reg15:0 q;output reg d;reg11:0 i;reg3:0 k;always (negedge nclk or negedge clrn)beginif(clrn=0) begin q=0;i=0; endelse begin i=i+1;k=i*4;if(k>9)begin q3:0=q3:0+1;k=0;if(q3:0>9)begin q3:0=0;q7:4=q7:4+1;if(q7:4>9) beginq7:4=0;q11:8=q11:8+1;d=1;if(q11:8>9)begin q11:8=0;q15:12=q15:12+1;endendendendelse d=0;endendendmodule车费计算module cf(d,clrn,q,j);input d,j;input clrn;output reg15:0 q;reg c;always (posedge dj)begin if(clrn) begin c=0;q=0;endelse c=c+1;if(c<=2) q7:4=7;else if(c<=10) begin q3:0=q3:0+6;q7:4=q7:4+1;if(q3:0>9)begin q3:0=q3:0-10;q7:4=q7:4+1;endif(q7:4>9)begin q7:4=q7:4-10;q11:8=q11:8+1; endendelse if(c>10) begin q3:0=q3:0+4;q7:4=q7:4+2;if(q3:0>9)begin q3:0=q3:0-10;q7:4=q7:4+1;endif(q7:4>9)begin q7:4=q7:4-10;q11:8=q11:8+1;if(q11:8>9)begin q11:8=q11:8-10;q15:12=q15:12+1;end endendif(c>14) c=11;endendmodule60进制计数器module cnt60(clrn,clk,j,q,cout);input clrn,clk,j;output reg 7:0 q;output reg cout;always (posedge clkj or negedge clrn)begin if (clrn) q=0;else begin if (q='h59) q=0;else q=q+1;if(q3:0='ha) begin q3:0=0;q7:4=q7:4+1;endif (q='h59) cout=1;else cout=0;endendendmodule24进制计数器module cnt24(clrn,clk,j,q,cout);input clrn,clk,j;output reg 7:0 q,cout;always (posedge clkj or negedge clrn)begin if (clrn) q=0;else begin if (q='h23) q=0;else q=q+1;if(q3:0='ha) begin q3:0=0;q7:4=q7:4+1;endif (q='h23) cout=1;else cout=0;endendendmodule 分频1秒module fenpin1s(clk,cout);input clk;reg 24:0 q;output reg cout;always (posedge clk)begin if(q=-1) q=0;else q=q+1;if(q=-1) cout=1;else cout=0;end endmodule 总时间 module zsj(qm,qf,qs,day,q);input7:0 qm,qf,qs,day;output reg 31:0 q;always beginq31:0=day,qs,qf,qm;endendmodule选择切换功能module xuanze(q1,q2,q3,q,c,clk);input c,clk;input15:0 q1,q2;input31:0 q3;output reg31:0 q;always (posedge clk)begincase(c)0:begin q31:16=q115:0;q15:0=q215:0;end1:begin q23:0=q323:0;q31:24=0;end endcaseendendmodule专心-专注-专业

    注意事项

    本文(EDA实训-出租车计费(共11页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开