您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > 根据FPGA技术出租车计费器的设计(EDA技术)
_EDA课程设计题目:基于FPGA的出租车计费器的设计学院:通信与电子工程学院班级:电子101班_学号:2010131019姓名:何经国指导老师:周喜权日期:2013年12月20日_摘要本文以Altera公司的DE2开发板为中心,QuartusⅡ软件作为开发平台,使用VerilogHDL语言编程,设计了一个出租车计费的计费器模型。在程序描述的过程中,用了行为描述方式和结构描述方式二种描述方式对计费器进行描述。该计费器能动态扫描电路,将车费和路显示出来,各有两位小数。整个自动控制系统由三个主要电路构成:里程和车费计算、译码和动态显示。最后给出了仿真的波形,并硬件实现。关键词:出租车计费VerilogHDLQuartusⅡ_目录摘要...............................................................................................................I第1章概述...................................................................................................11.1设计目的.........................................................................................11.2设计背景.........................................................................................11.3设计意义.........................................................................................2第2章工作原理............................................................................................3第3章设计过程............................................................................................53.1设计方案.........................................................................................53.1.1计算里程和车费模块..............................................................53.1.2七段显示译码器模块..............................................................8_3.1.3动态显示模块........................................................................93.1.4设计出租车计费器电路........................................................123.2硬件实现.......................................................................................143.2.1引脚锁定.............................................................................143.2.2编程下载.............................................................................15第4章仿真过程..........................................................................................164.1建立工程.......................................................................................164.2建立VerilogHDL文件..................................................................174.3建立波形文件................................................................................184.4仿真结果.......................................................................................19结论................................................................................................................23参考文献........................................................................................................24_第1章概述1.1设计目的通过基于EDA技术出租车计费器的设计,理解可编程逻辑器件的设计原理及工作流程,学习EDA软件QuartusⅡ功能与使用方法,了解VerilogHDL语言逻辑编程设计基本过程。1.2设计背景随着我国经济社会的全面发展,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普通的交通工具。出租车计价器是出租车营运收费的专用智能化仪表,是使出租车市场规范化、标准化的重要设备。一种功能完备,简单易用,计量准确的出租车计价器是加强出租车行业管理,提高服务质量的必需品。本设计采用VHDL硬件描述语言作为设计手段,采用自顶向下的设计思路,得到一种出租车计价系统的软件结构,通过QuartusⅡ软件下进行仿真,证明所设计的电路系统完成了出租车计价的功能,各项指标符合设计要求。该设计虽然功能简单,智能化水平比较低,但仍具有一定的实用性。该设计是在VHDL的基础上对出租车计价器进行设计来实现其基本功能的,与以往的基于单片机的数模混合电路相比,FPGA具有稳定性好,抗干扰能力强等优点,且非常适合做为出租车计价器的控制核心,所以选择用VHDL来对计价器进行设计来实现其功能。_1.3设计意义汽车计价器是乘客与司机双方的交易准则,它是出租车行业发展的重要标志,是出租车中最重要的工具。它关系着交易双方的利益。具有良好性能的计价器无论是对广大出租车司机朋友还是乘客来说都是很必要的。因此,汽车计价器的研究也是具有一定意义的。随着生活水平的提高,人们已不再满足于衣食住的享受,出行的舒适已受到越来越多人的关注。于是,出租车行业以低价高质的服务给人们带来了出行的享受。但是总存在着买卖纠纷困扰着行业的发展。而在出租车行业中解决这一矛盾的最好方法就是改良计价器。用更加精良的计价器来为乘客提供更加方便快捷的服务。多年来国内普遍使用的计价器只具备单一的脊梁功能。最早的计价器全部使用机械齿轮结构,只能简单的计程功能,可以说,早期的计价器就是个里程表。随着科学技的发展,产生了第二代计价器。它采用手摇计算机与机械结构相结合的方式实现了半机械半电子化。此时它在计程的同时还完成计价的工作。大规模集成电路的发展又产生了第三代计价器,也就是全电子化的计价器。它的功能也在不断完善。出租车计价器是一种专用的计量仪器,它安装在出租车上,能够连续累加,并只是出行中任意时刻乘客应付费用。随着电子技术的发展以及对计价器的不断改进和完善,便产生了能够自主计费,以及现在的能够打一发票和语音提示、按时间自主变动单价等功能。_第2章工作原理本文设计了一个出租车计费器的模型,其接口信号如图2-1所示。_图2-1出租车计费器模型方框图车的状态由传感器传回来当作控制信号,用控制信号来控制计算里程和车费模块,然后分别将里程和车费送到译码模块译码,输出的数据一起送到动态扫描模块,由片选信号控制哪部分译码模块输出的数据用数码管显示。当车启动后,计算里程和车费模块就开始计数,起步价为7.00元,并在车行3Km后按2.20元/Km计费,当计费器达到或超过20元时,每公里回收50%的车费,车停止和暂停时不计费;然后将里程和车费送到译码模块译码和动态显示模块动态显示,最后显示在七段数码管上,动态显示的时间间隔为5秒钟。_第3章设计过程3.1设计方案3.1.1计算里程和车费模块本模块主要是计算里程和车费。按行驶里程计费,起步价为7.00元,并在车行3Km后按2.20元/Km计费,当计费器达到或超过20元时,每公里回收50%的车费,车停止和暂停时不计费。在本模块中,一个脉冲代表是里程要加100米。计算里程和车费的模块的功能结构框图如图3-1所示。stopstartclkpausechefei[15..0]lucheng[15..0]taxicountinst图3-1计算里程和车费模块的功能结构框图根据模块实现的功能设计VerilogHDL源代码如下:moduletaxicount(stop,start,clk,pause,chefei,lucheng);inputstop,start,clk,pause;_outputreg[19:0]chefei,lucheng;reg[3:0]qijia,danjia;reg[12:0]ygl;regyglflag;always@(posedgeclk)beginif(stop==0)begindanjia=0;qijia=0;ygl=0;lucheng=0;endelseif(start==0)beginchefei=700;lucheng=0;endelseif(start&pause)beginlucheng=lucheng+100;ygl=ygl+100;_endif(ygl1000)yglflag=0;elsebeginyglflag=1;ygl=0;endif(lucheng3000)beginif(chefei2000)beginif(yglflag)chefei=chefei+220;endelseif(chefei2000)beginif(yglflag)chefei=chefei+330;endendend_endmodule3.1.2七段显示译码器模块本模块主要是将4位二进制数转换为十六进制表示。七段显示译码器模块的功能结构框图如图3-3所示:a[3..0]hex[6..0]ymq8421inst图3-3七段显示译码器的功能结构框图根据模块实现的功能设计VerilogHDL源代码如下:moduleymq8421(a,hex);input[3:0]a;outputreg[6:0]hex;always@(a)begincase(a)0:hex='b1000000;1:hex='b1111001;2:hex='b0100100;3:hex='b0110000;4:hex='b0011001;5:hex='b0010010;6:hex='b0000010;_7:hex='b1111000;8:hex='b0000000;9:hex='b0010000;10:hex='b0001000;11:hex='b0000011;12:hex='b1000110;13:hex='b0100001;14:hex='b00
本文标题:根据FPGA技术出租车计费器的设计(EDA技术)
链接地址:https://www.777doc.com/doc-7153308 .html