出租车计费系统毕业设计论文.docx

上传人:b****5 文档编号:12028683 上传时间:2023-04-16 格式:DOCX 页数:25 大小:178.06KB
下载 相关 举报
出租车计费系统毕业设计论文.docx_第1页
第1页 / 共25页
出租车计费系统毕业设计论文.docx_第2页
第2页 / 共25页
出租车计费系统毕业设计论文.docx_第3页
第3页 / 共25页
出租车计费系统毕业设计论文.docx_第4页
第4页 / 共25页
出租车计费系统毕业设计论文.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

出租车计费系统毕业设计论文.docx

《出租车计费系统毕业设计论文.docx》由会员分享,可在线阅读,更多相关《出租车计费系统毕业设计论文.docx(25页珍藏版)》请在冰豆网上搜索。

出租车计费系统毕业设计论文.docx

出租车计费系统毕业设计论文

优秀论文审核通过

未经允许切勿外传

目录

摘要1

Abstract2

第1章引言4

1.1设计背景4

1.2EDA发展概况5

第2章出租车计费系统的设计10

2.1出租车计费设计10

2.2基本设计思想10

第3章出租车计费系统的实现11

3.1系统的总体框图11

3.2程序流程图12

第4章系统各功能模块的实现13

4.1模块JIFEI的实现13

4.2模块X的实现15

4.3模块XXX1的实现18

4.4模块SE的实现19

4.5模块DI的实现20

第5章系统仿真22

5.1模块X的仿真结果22

5.2模块JIFEI的仿真结果22

5.3模块XXX1的仿真结果23

5.4模块SE的结果验证23

5.5模块DI的结果验证23

结束语24

致谢25

参考文献26

摘要

随着出租车行业的发展,对出租车计费器的要求也越来越高,用户不仅要求计费器性能稳定,计费准确,有防作弊功能;同时还要求其具有车票资料打印、IC卡付费和电脑串行通信功能。

不同国家和地址的计费方式存在差异,如有些地区有夜间收费及郊区收费等,而有些地区则无夜间收费和郊区收费。

本次设计采用硬件和软件相结合的方法,以单片机为核心,从圈脉冲信号的产生到营业信息的打印都做了详细的介绍,并对MAX813L看门狗、复位电路、行车里程检测电路、掉电存储电路、IC卡读写电路、分屏显示电路以及操作面板进行了详细的设计。

该系统还具有防止干扰和防死机的功能,系统的电源是专门为出租车设计的,具有相当强的稳压效果,系统采用了EEPROM存储器,可以方便且安全的记录顾客和车主的信息。

关键词:

89C51;里程检测;分屏显示;EEPROM;

Abstract

Alongwiththedevelopmentoftaxitrade,countingfeesthattherequirementofwareisalsomoreandmoreisstable,anditisaccuratetocountfees,andcheated;Atthesametimestillaskfunction.Themethodthatthisdesign,andtakesonepiecemachineasthenucleus,printtingtodoingbusinessinformationalldidthedetailedintroductionfromthecirclepulsing,Tothecontentof89C51andMAX813LGuardingtheentrancethedogandtheintroductionthatreducesthecircuittoblameforfocalpointatthesametime,thissystemstillpossessestopreventtodisturbandthefunctionguardingagainstthedeadmachine,andspecialinthetaxidesignduringpowersupplyofsystem,possessingfairlystrongsteadypressureeffect,thesystemadoptedICBlockthememory,andcanmakethingsconvenientforjusttheinformationofsaferecordcustomerandCheowner.

Keywords:

Thedogisguardedtheentrance89c51CirclepulseAnti-jamming

第1章引言

1.1设计背景

随着出租车行业的发展,对出租车计费器的要求也越来越高。

二十世纪后半期,随着集成电路和计算机技术的飞速发展,数字系统也得到了飞速发展,其实现方法经历了由分立元件、SSI、MSI到LSI、VLSI以及UVLSI的过程。

同时为了提高系统的可靠性与通用性,微处理器和专业集成电路(ASIC)逐渐取代了通用全硬件LSI电路,而ASIC以其体积小、重量轻、功耗低、速度快、成本低、保密性好而脱颖而出。

目前,业界大量可编程逻辑器件(PLD),尤其是现场可编程逻辑器件(FPLD)被大量地应用在ASIC的制作当中。

在可编程集成电路的开发过程中,以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术最新成果的电子设计自动化(EDA)技术主要能辅助进行三方面的设计工作:

IC设计,电子电路设计以及PCB设计。

理想的可编程逻辑开发系统能符合大量的设计要求:

它能够支持不同结构的器件,在多种平台运行,提供易于使用的界面,并且有广泛的特征。

此外,一个设计系统应该能给设计师提供充分自由的设计输入方法和设计工具选择。

Altered公司开发的MAX+PLUSⅡ开发系统能充分满足可编程逻辑设计所有要求。

MAX+PLUSⅡ设计环境所提供的灵活性和高效性是无可比拟的。

其丰富的图形界面,辅之以完整的、可及时访问的在线文档,使设计人员能够轻松、愉快地掌握和使用MAX+PLUSⅡ软件。

编程器是一种专门用于对可编程器(如EPROM,EEPROM,GAL,CPLD,PAL等)进行编程的专业设备

PLD器件的逻辑功能描述一般分为原理图描述和硬件描述语言描述,原理图描述是一种直观简便的方法,它可以将现有的小规模集成电路实现的功能直接用PLD器件来实现,而不必去将现有的电路用语言来描述,但电路图描述方法无法做到简练;硬件描述语言描述是可编程器件设计的另一种描述方法,语言描述可能精确和简练地表示电路的逻辑功能,现在PLD的设计过程中广泛使用。

常用的硬件描述语言有ABEL,VHDL语言等,其中ABEL是一种简单的硬件描述语言,其支持布尔方程、真值表、状态机等逻辑描述,适用于计数器、译码器、运算电路、比较器等逻辑功能的描述;VHDL语言是一种行为描述语言,其编程结构类似于计算机中的C语言,在描述复杂逻辑设计时,非常简洁,具有很强的逻辑描述和仿真能力,是未来硬件设计语言的主流。

VHDL就是超高速集成电路硬件描述语言。

覆盖面广,描述能力强,是一个多层次的硬件描述语言。

在VHDL语言中,设计的原始描述可以非常简练,经过层层加强后,最终可成为直接付诸生产的电路或版图参数描述。

具有良好的可读性,即容易被计算机接受,也容易被读者理解。

使用期长,不会因工艺变化而使描述过时。

因为VHDL的硬件描述与工艺无关,当工艺改变时,只需修改相应程序中的属性参数即可。

支持大规模设计的分解和已有设计的再利用。

一个大规模的设计不可能由一个人独立完成,必须由多人共同承担,VHDL为设计的分解和设计的再利用提供了有力的支持。

1.2EDA发展概况

电子设计技术的核心就是EDA技术,EDA是指以计算机为工作台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD通用软件包,主要能辅助进行三方面的设计工作,即IC设计、电子电路设计和PCB设计。

EDA技术已有30年的发展历程,大致可分为三个阶段。

70年代为计算机辅助设计(CAD)阶段,人们开始用计算机辅助进行IC版图编辑、PCB布局布线,取代了手工操作。

80年代为计算机辅助工程(CAE)阶段。

与CAD相比,CAE除了有纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。

CAE的主要功能是:

原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。

90年代为电子系统设计自动化(EDA)阶段。

中国EDA市场已渐趋成熟,不过大部分设计工程师面向的是PC主板和小型ASIC领域,仅有小部分(约11%)的设计人员开发复杂的片上系统器件。

为了与台湾和美国的设计工程师形成更有力的竞争,中国的设计队伍有必要购入一些最新的EDA技术。

在信息通信领域,要优先发展高速宽带信息网、深亚微米集成电路、新型元器件、计算机及软件技术、第三代移动通信技术、信息管理、信息安全技术,积极开拓以数字技术、网络技术为基础的新一代信息产品,发展新兴产业,培育新的经济增长点。

要大力推进制造业信息化,积极开展计算机辅助设计(CAD)、计算机辅助工程(CAE)、计算机辅助工艺(CAPP)、计算机机辅助制造(CAM)、产品数据管理(PDM)、制造资源计划(MRPII)及企业资源管理(ERP)等。

有条件的企业可开展“网络制造”,便于合作设计、合作制造,参与国内和国际竞争。

开展“数控化”工程和“数字化”工程。

自动化仪表的技术发展趋势的测试技术、控制技术与计算机技术、通信技术进一步融合,形成测量、控制、通信与计算机(M3C)结构。

在ASIC和PLD设计方面,向超高速、高密度、低功耗、低电压方向发展。

外设技术与EDA工程相结合的市场前景看好,如组合超大屏幕的相关连接,多屏幕技术也有所发展。

中国自1995年以来加速开发半导体产业,先后建立了几所设计中心,推动系列设计活动以应对亚太地区其它EDA市场的竞争。

在EDA软件开发方面,目前主要集中在美国。

但各国也正在努力开发相应的工具。

日本、韩国都有ASIC设计工具,但不对外开放。

中国华大集成电路设计中心,也提供IC设计软件,但性能不是很强。

相信在不久的将来会有更多更好的设计工具有各地开花并结果。

据最新统计显示,中国和印度正在成为电子设计自动化领域发展最快的两个市场,年复合增长率分别达到了50%和30%。

EDA技术发展迅猛,完全可以用日新月异来描述。

EDA技术的应用广泛,现在已涉及到各行各业。

EDA水平不断提高,设计工具趋于完美的地步。

EDA市场日趋成熟,但我国的研发水平还很有限,需迎头赶上。

可编程逻辑器件自70年代以来,经历了PAL、GALGPLD、FPGA几个发展阶段,其中CPLDFPGA高密度可编程逻辑器件,目前集成度已高达200万门片,它将各模块ASC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易地转换掩模ASIC实现,因此开发风险也大为降低。

硬件描述语言(HDL)是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的逻辑功能、电路结构和连接形式,与传统的门级描述方式相比,它更适合大规模系统的设计。

例如一个32位的加法器,利用图形输入软件需要输人500至1000个门,而利用VHDL语言只需要书写一行“A=B+C”即可。

而且VHDL语言可读性强,易于修改和发现错误。

早期的硬件描述语言,如ABEL、HDL、AHDL,由不同的EDA厂商开发,互不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。

为了克服以上不足,1985年美国国防部正式推出了高速集成电路硬件描述语言VHDL,1987年IEEE采纳VHDL为硬件描述语言标准(IEEESTD-1076)。

VHDL是一种全方位的硬件描述语言,包括系统行为级。

寄存器传输级和逻辑门多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件俄语言的功能,整个自顶向下或由下向上的电路设计过程都可以用VHDL来完成。

VHDL还具有以下优点:

(1)VHDL的宽范围描述能力使它成为高层进设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。

VHDL可以用简洁明确的代码描述来进行复杂控制逻辑设计,灵活且方便,而且也便于设计结果的交流、保存和重用。

(3)VHDL的设计不依赖于特定的器件,方便了工艺的转换。

(4)VHDL是一个标准语言,为众多的EDA厂商支持,因此移植性好。

传统的硬件电路设计方法是采用自下而上的设计方法,即根据系统对硬件的要求,详细编制技术规格书,并画出系统控制流图;然后根据技术规格书和系统控制流图,对系统的功能进行细化,合理地划分功能模块,并画出系统的功能框图;接着就进行各功能模块的细化和电路设计;各功能模块电路设计、调试完成后,将各功能模块的硬件电路连接起来再进行系统的调试,最后完成整个系统的硬件设计。

采用传统方法设计数字系统,特别是当电路系统非常庞大时,设计者必须具备较好的设计经验,而且繁杂多样的原理图的阅读和修改也给设计者带来诸多的不便。

为了提高开发的效率,增加已有开发成果的可继承性以及缩短开发周期,各ASIC研制和生产厂家相继开发了具有自己特色的电路硬件描述语言(HardwareDescriptionLanguage,简称HDL)。

但这些硬件描述语言差异很大,各自只能在自己的特定设计环境中使用,这给设计者之间的相互交流带来了极大的困难。

因此,开发一种强大的、标准化的硬件描述语言作为可相互交流的设计环境已势在必行。

于是,美国于1981年提出了一种新的、标准化的HDL,称之为VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescriptionLanguage,简称VHDL。

这是一种用形式化方法来描述数字电路和设计数字逻辑系统的语言。

设计者可以利用这种语言来描述自己的设计思想,然后利用电子设计自动化工具进行仿真,再自动综合到门电路,最后用PLD实现其功能。

覆盖面广,描述能力强,是一个多层次的硬件描述语言。

在VHDL语言中,设计的原始描述可以非常简练,经过层层加强后,最终可成为直接付诸生产的电路或版图参数描述。

具有良好的可读性,即容易被计算机接受,也容易被读者理解。

使用期长,不会因工艺变化而使描述过时。

因为VHDL的硬件描述与工艺无关,当工艺改变时,只需修改相应程序中的属性参数即可。

支持大规模设计的分解和已有设计的再利用。

一个大规模的设计不可能由一个人独立完成,必须由多人共同承担,VHDL为设计的分解和设计的再利用提供了有力的支持。

当电路系统采用VHDL语言设计其硬件时,与传统的电路设计方法相比较,具有如下的特点:

即从系统总体要求出发,自上而下地逐步将设计的内容细化,最后完成系统硬件的整体设计。

在设计的过程中,对系统自上而下分成三个层次进行设计:

第一层次是行为描述。

所谓行为描述,实质上就是对整个系统的数学模型的描述。

一般来说,对系统进行行为描述的目的是试图在系统设计的初始阶段,通过对系统行为描述的仿真来发现设计中存在的问题。

在行为描述阶段,并不真正考虑其实际的操作和算法用何种方法来实现,而是考虑系统的结构及其工作的过程是否能到达系统设计的要求。

第二层次是RTL方式描述。

这一层次称为寄存器传输描述(又称数据流描述)。

如前所述,用行为方式描述的系统结构的程序,其抽象程度高,是很难直接映射到具体逻辑元件结构的。

要想得到硬件的具体实现,必须将行为方式描述的VHDL语言程序改写为RTL方式描述的VHDL语言程序。

也就是说,系统采用RTL方式描述,才能导出系统的逻辑表达式,才能进行逻辑综合。

第三层次是逻辑综合。

即利用逻辑综合工具,将RTL方式描述的程序转换成用基本逻辑元件表示的文件(门级网络表)。

此时,如果需要,可将逻辑综合的结果以逻辑原理图的方式输出。

此后可对综合的结果在门电路级上进行仿真,并检查其时序关系。

应用逻辑综合工具产生的门网络表,将其转换成PLD的编程码,即可利用PLD实现硬件电路的设计。

由自上而下的设计过程可知,从总体行为设计开始到最终的逻辑综合,每一步都要进行仿真检查,这样有利于尽早发现设计中存在的问题,从而可以大大缩短系统的设计周期。

由于目前众多制造PLD芯片的厂家,其工具软件均支持VHDL语言的编程。

所以利用VHDL语言设计数字系统时,可以根据硬件电路的设计需要,自行利用PLD设计自用的ASIC芯片,而无须受通用元器件的限制。

EDA技术的每一次进步,都引起了设计层次上的一次飞跃,从设计层次上分,70年代为物理级设计(CAD),80年代为电路级设计(CAE),90年代进入到系统级设计(EDA)。

物理级设计主要指IC版图设计,一般由半导体厂家完成,对电子工程师没有太大的意义,因此本文重点介绍电路级设计和系统级设计。

仿真通过后,根据原理图产生的电气连接网络表进行PCB板的自动布局布线。

在制作PCB板之前还可以进行PCB后分析,其中包括热分析、噪声及窜扰分析、电磁兼容分析、可靠性分析等,并可将分析后的结果参数反标回电路图,进行第二次仿真,也称为后仿真。

后仿真主要是检验PCB板在实际工作环境中的可行性。

由此可见,电路级的EDA技术使电子工程师在实际的电子系统产生前,就可以全面地了解系统的功能特性和物理特性,从而将开发风险消灭在设计阶段,缩短了开发时间,降低了开发成本。

系统级设计进人90年代以来,电子信息类产品的开发明显呈现两个特点:

一是产品复杂程度提高;二是产品上市时限紧迫。

然而,电路级设计本质上是基于门级描述的单层次设计,设计的所有工作(包括设计忙人、仿真和分析、设计修改等)都是在基本逻辑门这一层次上进行的,显然这种设计方法不能适应新的形势,一种高层次的电子设计方法,也即系统级设计方法,应运而生。

高层次设计是一种“概念驱动式”设计,设计人员无须通过原理图描述电路,而是针对设计目标进行功能描述。

由于摆脱了电路细节的束缚,设计人员可以把精力集中于创造性的方案与概念的构思上,而且这些概念构思以高层次描述的形式输人计算机,EDA系统就能以规则驱动的方式自动完成整个设计。

这样,新的概念就能迅速有效地成为产品,大大缩短了,产品的研制周期。

不仅如此,高层次设计只是定义系统的行为特性,可以不涉及实现工艺,因此还可以在厂家综合库的支持下,利用综合优化工。

第2章出租车计费系统的设计

2.1出租车计费设计

实际中出租车的计费工作原理一般分成3个阶段:

(1)车起步开始计费。

首先显示起步价(本次设计起步费为7.00元),车在行驶3km以内,只收起步价7.00元。

(2)车行驶超过3km后,按每公里2.2元计费(在7.00元基础上每行驶1km车费加2.2元),车费依次累加。

(3)行驶路程达到或超过9km后(车费达到20元),每公里加收50%的车费,车费变成按每公里3.3元开始计费。

车暂时停止(行驶中遇红灯或中途暂时停车)不计费,车费保持不变。

若停止则车费清零,等待下一次计费的开始。

2.2基本设计思想

(1)根据出租车计费原理,将出租车计费部分由5个计数器来完成分别为counterA,counterB,counterC,counterD,counterE。

①计数器A完成车费百位。

②计数器B完成车费十位和个位。

③计数器C完成车费角和分。

④计数器D完成计数到30(完成车费的起步价)。

⑤计数器E完成模拟实现车行驶100m的功能。

(2)行驶过程中车费附加50%的功能:

由比较器实现。

(3)车费的显示:

由动态扫描电路来完成。

用专用模块来实现,完成数据的输入即动态数据的显示。

(4)通过分析可以设计出系统的顶层框图如图2.1所示:

第3章出租车计费系统的实现

3.1系统的总体框图

3.2程序流程图

图3.2程序流程图

第4章系统各功能模块的实现

4.1模块JIFEI的实现

模块JIFEI见图4.1。

输入端口START、STOP、PAUSE、JS分别为汽车起动、停止、暂停、加速按键。

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

entityjifeiis

port(clk,start,stop,pause,js:

instd_logic;

chefei,luc:

outintegerrange0to8000);

endjifei;

architecturertlofjifeiis

begin

process(clk,start,stop,pause,js)

variablea,b:

std_logic;

variableaa:

integerrange0to100;

variablechf,lc:

integerrange0to8000;

variablenum:

integerrange0to9;

begin

if(clk'eventandclk='1')then

if(stop='0')then

chf:

=0;

num:

=0;

b:

='1';

aa:

=0;

lc:

=0;

elsif(start='0')then

b:

='0';

chf:

=700;

lc:

=0;

elsif(start='1'andjs='1'andpause='1')then

if(b='0')then

num:

=num+1;

endif;

if(num=9)then

lc:

=lc+5;

num:

=0;

aa:

=aa+5;

endif;

elsif(start='1'andjs='0'andpause='1')then

lc:

=lc+1;

aa:

=aa+1;

endif;

if(aa>=100)then

a:

='1';

aa:

=0;

else

a:

='0';

endif;

if(lc<300)then

null;

elsif(chf<2000anda='1')then

chf:

=chf+220;

elsif(chf>=2000anda='1')then

chf:

=chf+330;

endif;

endif;

chefei<=chf;

luc<=lc;

endprocess;

endrtl;

4.2模块X的实现

模块X见图4.2。

该模块把车费和路程转化为4位十进制数,daclk的频率要比clk快得多

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

entityxis

port(daclk:

instd_logic;

ascore,bscore:

inintegerrange0to8000;

age,ashi,abai,aqian,bge,bshi,bbai,dqian:

outstd_logic_vector(3downto0));

endx;

architecturertlofxis

begin

process(daclk,ascore)

variablecomb1:

integerrange0to8000;

variablecomb1a,comb1b,comb1c,comb1d:

std_logic_vector(3downto0);

begin

if(daclk'eventanddaclk='1')then

if(comb1

if(comb1a=9andcomb1b=9andcomb1c=9)then

comb1a:

="0000";

comb1b:

="0000";

comb1c:

="0000";

comb1d:

=comb1d+1;

comb1:

=comb1+1;

elsif(comb1a=9andcomb1b=9)then

comb1a:

="0000";

comb1b:

="0000";

comb1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 学科竞赛

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

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