基于FPGA和单片机的出租车计费系统的设计毕业论文_第1页
基于FPGA和单片机的出租车计费系统的设计毕业论文_第2页
基于FPGA和单片机的出租车计费系统的设计毕业论文_第3页
基于FPGA和单片机的出租车计费系统的设计毕业论文_第4页
基于FPGA和单片机的出租车计费系统的设计毕业论文_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录1选题的背景及意义 32选题的构思与设想 42.1出租车计费系统发展的现状 42.2FPGA简介 43设计方案的简介及比较 53.1基于单片机出租车计费器设计方案 53.2基于FPGA的出租车计费器的设计方案 53.3两种方案的比较 64出租车计费系统的设计 64.1整体方案设计 64.2模块的设计 74.2.1秒分频模块 74.2.2计量模块 74.2.3译码显示模块 85.顶层电路的仿真及分析 106结果分析 10参考文献 12致谢 12基于FPGA和单片机的出租车计费系统的设计摘要:随着我国市场经济的发展,交通也越来越便利,特别是计程车,以快捷、方便的特点早已盛行各个城市,成为城市交通的重要工具。计程车市场从90年代初的起步阶段到现在已经进入了高峰期。随着城市化水平的提高和人民生活水平的改善,计程车的服务也就显得越来越重要。因此计程车计价器也就应运而生了。关键词:计程车;出租车收费系1选题的背景及意义随着科学技术的进步,社会的发展,出租车以其方便快捷的特点逐渐成为人们生活中不可缺少的交通工具。如今出租车已经遍布了我国城乡,因其特殊的服务特性,能避免过多的私家车而造成道路拥挤现象,并更方便人民的出行。出租车计费器的应用方便了司乘人员计算车费,以其公平公正的特点,必定属于智能化仪表的范畴,其功能是自动计算里程和车费,并依据不同时段、不同车型设定起步价和单价。传统出租车计费器多数由单片机实现,升级繁琐,成本高。随着EDA技术的高速发展,电子系统的设计技术和工具发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。利用它进行产品开发,不仅可以解决电子系统小型化、低功耗、高可靠性等问题,还具有成本低、开发周期短、开发软件投入少的优点,也能满足对小批量、多品种的产品需求。使用EDA设计出租车计费器,其部分功能还能由软件实现,减少了硬件的压力,使得系统结构简单、调试方便且成本低廉。所以基于CPLD的出租车计费器已成首选。2选题的构思与设想2.1出租车计费系统发展的现状目前市场上使用的出租车计费器主要采用的都是利用MCU如89C51单片机实现的计费器设计,显示方式上主要采用的是固定显示内容的LED显示。传统的出租车计费器由于发展使用了十几年,在稳定性、成本、以及使用习惯上都具有一些优势,但是随着出租车价格市场化,我国加入WTO以来主导出租车行业成本的许多因素主要包括油价的波动,都对传统的出租车计费器提出了更高的要求。近一年来,各大城市都在对出租车价格进行调整,由于数量太多,很多城市的调价甚至需要一个月的时间才能完成,经常会同一时间出现几个价格,有的城市的出租车上还会出现司机人工计价的尴尬情形。这些都暴露了传统计费器在灵活性和升级换代能力的不足。2.2FPGA简介FPGA是现场可编程门阵列(FieldProgramableGateArray)的简称,FPGA是电子设计领域中最具活力和发展前途的一项技术,它的影响丝毫不亚于70年代单片机的发明和使用。基于Flash的FPGA可以提供加密、低功耗、上电工作、可重复编程的方案。目前生产FPGA的公司主要有Xilinx、Altera、Actel、Lattice、QuickLogic等生产的FPGA品种和型号繁多。尽管这些FPGA的具体结构和性能指标各有特色,但它们都有一个共同之处,即由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块,从而实现不同的设计。典型的FPGA通常包含三类基本资源:可编程逻辑功能块、可编程输入/输出块和可编程互连资源。可编程逻辑功能块是实现用户功能的基本单元,多个逻辑功能块通常规则地排成一个阵列结构,分布于整个芯片;可编程输入/输出块完成芯片内部逻辑与外部管脚之间的接口,围绕在逻辑单元阵列四周;可编程内部互连资源包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或输入/输出块连接起来,构成特定功能的电路。用户可以通过编程决定每个单元的功能以及它们的互连关系,从而实现所需的逻辑功能。不同厂家或不同型号的FPGA,在可编程逻辑块的内部结构、规模、内部互连的结构等方面经常存在较大的差异。3设计方案的简介及比较3.1基于单片机出租车计费器设计方案方案一:采用单片机为主实现自主计费。原理框图如图1。防作弊及脉冲模块防作弊及脉冲模块电源模块电源模块按键及显示模块主控模块按键及显示模块主控模块通信模块通信模块时钟及存储器时钟及存储器语音单片机语音单片机IC卡打印IC卡打印复位及看门狗RS23复位及看门狗RS23图1.基于单片机的出租车计费器设计原理框图3.2基于FPGA的出租车计费器的设计方案方案二:采用VHDL编程,基于FPGA/CPLD实现出租车计费器的设计。原理框图如图2车费输出起步价信号输入模块车费输出起步价信号输入模块显示译码输出模块控制转换器模块加法器模块里程计费模块显示译码输出模块控制转换器模块加法器模块里程计费模块里程输出等待计费模块里程输出等待计费模块等待时间输出等待计时模块等待时间输出等待计时模块图2.出租车计费器原理框图3.3两种方案的比较对比以上方案,可以看出传统的基于单片机的出租车计费器已经远远跟不上这种变化,功能升级很繁琐,需要硬件重组和软件更新同步进行,不仅成本高,每次升级还可能出现新的不稳定因素。故此次设计选用基于PFGA的出租车计费器设计方案。4出租车计费系统的设计4.1整体方案设计实现计程车的计价器功能。一方面实现基本功能时,包括在行程中满足3公里以内计起步价10元,以后以1.9元/公里计费。处于等待的状态下满足2分钟以内计2元,以后以1.5元/分计费。另一方面多功能的实现,计价器可以根据要求显示需要的内容,可以根据选择键选择显示总费用,总行程数和总乘车时间等等。1)计价范围:0~999.9元;计价分辨率:0.1元;2)计程范围:0~99公里;计价分辨率:1.9公里;3)计时范围:59分;计时分辨率:1分钟;4.2模块的设计4.2.1秒分频模块1)秒分频的对频率为100Hz的输入脉冲进行分频,得到频率为1Hz的频率。分频模块的电路符号图如下图5-2所示。从图中可以看出分频模块有两个输入信号,一个是clk时钟信号。另一个是计费器的使能信号start。图5-2分频模块电路符号图分频模块的主要源代码如下:ifstart='0'then此IF语句中得到分频器的使能信号f_1<='0';Q_1<=0;ElseifQ_1=99then此IF语句是得到频率为1Hz的频率信号1公里脉冲Q_1<=0;F_1<='1';elseQ_1<=Q_1+1;F_1<='0';endif;endif;4.2.2计量模块计量控制模块是出租车计费的主体部分,该模块主要完成等待计时功能、计价功能、计程功能,同时产生3分钟的等待计时始能控制信号en1、行程3公里外的是能控制信号en0。此模块包含3个进程模块。fenpin进程对频率为240HZ的输入脉冲进行分频,得到的频率为16HZ、10HZ和1HZ的3种计费频率信号,供main进程和jifei进程进行计费、计时、计程之用;main进程完成等待计时功能、计程功能,该模块将等待时间和行驶公里数变换成脉冲个数计算,同时产生3分钟的等待计时使能控制信号en1、行程3公里外的使能控制信号en0;jifei进程将起步价8预先固定在电路中,通过对计费脉冲个数的统计,计算出整个费用数据。生成的元件符号如图3-2所示。图(2)出租车自动计费器系统的主体FPGA电路taxi的元件符号4.2.3译码显示模块该模块经过8选1选择器将计费数据(4位BCD码)、计时数据(2位BCD码)、计程数据(2位BCD码)动态显示输出。其中计费数据jifei4~jifei1送入译码显示模块进行译码,然后送至以百元、十元、元、角为单位对应的数码管上显示,最大显示为999.9元;计时数据送入译码显示模块进行译码,最后送至一分为单位对应的数码管上显示,最大显示为59s;计程数据送入译码显示模块进行译码,最后送至以公里为单位的数码管上显示,最大显示为99公里。该模块包含8选1选择器、模8计数器、七段显示译码器3个子模块。输入信号clk为系统输入的240HZ基准时钟,输出a为3位二进制编码。生成的元件符号如图(3)所示。图(3)模8计数器se的元件符号输入信号c[2..0]为系统选择输入,a1a2a3a4为计费器数据BCD码输入,b1b2为里程数BCD码输入,t1t2为计时时间的BCD码输出,d为4位BCD码输出,dp为小数点信号。生成的元件符号如图(4)所示。图(4)选择器mux8_1的元件符号输入信号d[3..0]位BCD码输入,q[6..0]为七段译码输出(高电平有效)。生成的元件符号如图(5)所示。图(5)七段数码显示译码器di_LED的元件符号5.顶层电路的仿真及分析根据图(6)完成出租车自动计费器的顶层原理图输入。电路连好线,对其编译和仿真。正确编译后输出的仿真波形如图4-6所示。图4-6出租车自动计费器顶层电路仿真输出波形在图4-6中,STOP=0即全程无停止等待时间,因此计时显示输出为3F(00),该电路中出租车总行驶3F(0)7D(6)(即6公里),等待累计时间为3F(0)3F(0)(0分钟),总费用为06(1)5B(2)7F(8)(即12.8元),仿真结果真确。VHDL语言设计的出现从根本上改变了以往数字电路的设计模式,使电路由硬件设计转变为软件设计,使电子设计的核心转化为VHDL语言的编程设计,这样提高了设计的灵活性,降低了电路的复杂程度,修改起来也很方便。并且整个设计很大一部分由电脑辅助来完成,大大缩短了设计周期,减少了设计费用,降低了设计风险。6结果分析仿真结果正确后,就可将文件下载到芯片中。连接硬件系统后,通上电源,经QuartusⅡ中的“PROGRAMMER”菜单,调出编程器窗口。一切就绪后,按下编程器窗口中的“START”按钮,设计的内容就开始下载到CPLD芯片中。要想硬件调试能够取得成功,外围电路的设置是非常重要的。本次设计的硬件调试过程中的相关设置包括以下几个方面:时钟模块采用程序设计中最为相近的频率305HZ(相关跳线设置为JP1=1/16,JP2=1/16,JP3=1/16,JP=1/8,JP11=1/2);FIN、START、STOP均用拨码开关控制;数码管的段选及小数点只需对应连接即可;为选信号与sel[2..0]对应相连即可。打开电源,数码管有正确的数字显示。实验测试表明:该计费器实现了按预制参数自动计费(最大计费金额为999.9元)、自动计程(最大计程公里数为99公里)、自动计时(最大计时时间为59min)等功能;能够实现行程3公里内,且等待累计时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论