




已阅读5页,还剩87页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科毕业设计(论文)基于VHDL的出租车计价器燕 山 大 学2012年6月本科毕业设计(论文)基于VHDL的出租车计价器学 院:信息科学与工程学院 专 业: 学生 姓名: 学 号: 指导 教师: 答辩 日期:2012.6.25 燕山大学毕业设计(论文)任务书学院:信息科学与工程学院 系级教学单位:光电子系 学号学生姓名专 业班 级题目题目名称基于VHDL的出租车计价器题目性质1.理工类:工程设计 ();工程技术实验研究型( );理论研究型( );计算机软件型( );综合型( )2.管理类( );3.外语类( );4.艺术类( )题目类型1.毕业设计( ) 2.论文( )题目来源科研课题( ) 生产实际( )自选题目( ) 主要内容1基本计费功能;2白天/夜晚计费功能切换;3带数据输出功能,便于和微型打印机通信;4停车计费。基本要求1基本计费功能:1.2元/公里,以半公里提前计费;2白天/夜晚22:005:00 :起步费5元/2公里,5.8元/2公里3带数据输出功能,便于和微型打印机通信;4具有停车计费功能,每停5分钟算0.5km;5总里程超过12km,每公里加0.8元,即2元/公里;6独立撰写不少于2万字的论文;7英文翻译3000字左右。参考资料1CPLD数字电路设计,清华大学出版社2CPLD/FPGA应用开发技术,人民邮电出版社周 次第1 4 周第58周第912周第1316周第1718周应完成的内容阅读资料,研究算法总体设计编写代码测试与调试程序撰写论文修改论文准备答辩指导教师:职称:讲师 2012年1月23日系级教学单位审批: 年 月 日摘要出租车计价器在最初使用时的基本功能是根据行驶里程计价,要求精度高,可靠性好但是随之科学技术的发展,传统的出租车计价器已经不能满足人们多方面的使用要求,因此加强对出租车计价器的多功能设计,具有重要的现实意义。本设计中首先通过VHDL硬件描述语言对出租车计价器的各个功能进行编程,然后通过MAX+PLUSII软件开发平台进行编程和软件仿真,最后用EDA试验箱进行硬件仿真,模拟出租车计价器的各个功能。本设计中采用VHDL硬件描述语言进行编程来实现出租车计价器的各个功能要求。通过MAX+PLUSII软件开发平台进行编程和软件仿真,然后通过EDA试验箱进行硬件仿真来完成整个设计过程。本文中给出了计费系统的整体组成框图和各系统模块的详细设计过程,并对各个模块的实现过程以及相互之间的逻辑关系,软件仿真波形图进行了详细的解说,最后通过EDA试验箱硬件仿真来演示所设计的出租车计价器的各个相关功能,所得结果达到了设计要求。关键词:出租车计价器;VHDL语言;MAX+PLUS IIAbstractIn the initial utilization,the basic function of taxi taximeter is to calculate the expense by mileage,the requirements mainly focus on the higher precision and better reliability. Now there are lots of additional functions needed by the people as the science rapid developing. So developing the multifunctional taximeter has important meanings.This article proposed a new plan of the taximeter, the VHDL( hardware descriptive language in comprehensive application) is used in the plan completing the logic synthesis and logic optimization, the next designing the development platform is by MAX+PLUS II software, meanwhile,testing and verifying the function achievement through the program emulation modeThe whole structural charts and the detail design process of each systemic module are in the article and each module realization process as well as the logistic relationship between software simulation waveform, carried out in a detailed explanation. Finally the application of EDA experiment box hardware simulation to demonstrate the taximeter each relevant function, the results meet the design requirements.Keywords:The rental car costs the system;the VHDL language:MAX+PLUSII:目 录摘要IAbstractII第1章 绪论11.1 课题背景11.2 VHDL及开发系统概述31.2.1 VHDL语言简介及其结构特点31.2.2 MAX+PLUS II开发系统概述61.3 本章小结8第2章 设计思路和各部分的实现92.1 出租车计价器的特点和功能92.2 基本设计思路和工作原理92.3 分频部分的实现112.4 时间部分的实现122.5 里程计数部分152.6 计费部分172.7 译码显示部分222.8 本章小结28第3章 EDA试验箱硬件仿真结果293.1 EDA试验箱简介293.2 EDA试验箱仿真结果303.3 本章小结33结论35参考文献37致谢39附录1 开题报告41附录2 文献综述45附录3 中期报告51附录4 英文翻译57附录5 程序代码69第1章 绪论1.1 课题背景VHDL全名Very-High-Speed Integrated Circuit HardwareDescription Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。自IEEE-1076(简称87版)之后,各EDA公司相继推出自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,简称93版。VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。 随着我国国民经济生产总值的增加以及人民生活水平的提高,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普通的交通工具。出租车计价器是出租车营运收费的专用智能化仪表,是使出租车市场规范化、标准化的重要设备。一种功能完备,简单易用,计量准确的出租车计价器是加强出租车行业管理,提高服务质量的必需品。大多出租车计价器是采用C语言通过单片机来实现的,不便与硬件连接且功能稳定性差。本次设计采用采用具有多层次的电路设计描述功能的VHDL 语言进行程序的编写。通过可编程逻辑器件CPLD/FPGA来实现的,比单片机功能更稳定,且程序简洁,易于修改和更新。采用CPLD芯片为核心,用较少的硬件和适当的软件相互配合设计出租车计价器,通过软件编程来完成计价器更多的附加功能,具有一定的应用价值。由于科技的发展,芯片中的数据可保持10年不变,且芯片体积小、容量大,因此这种方式具有十分重要的现实意义和广阔的市场前景。中国EDA市场已渐趋成熟,不过大部分设计工程师面向的是PC主板和小型ASIC领域,仅有小部分(约11%)的设计人员开发复杂的片上系统器件。为了与台湾和美国的设计工程师形成更有力的竞争,中国的设计队伍有必要购入一些最新的EDA技术。在信息通信领域,要优先发展高速宽带信息网、深亚微米集成电路、新型元器件、计算机及软件技术、第三代移动通信技术、信息管理、信息安全技术,积极开拓以数字技术、网络技术为基础的新一代信息产品,发展新兴产业,培育新的经济增长点。要大力推进制造业信息化,积极开展计算机辅助设计(CAD)、计算机辅助工程(CAE)、计算机辅助工艺(CAPP)、计算机机辅助制造(CAM)、产品数据管理(PDM)、制造资源计划(MRPII)及企业资源管理(ERP)等。有条件的企业可开展“网络制造”,便于合作设计、合作制造,参与国内和国际竞争。开展“数控化工程”和“数字化”工程。自动化仪表的技术发展趋势的测试技术、控制技术与计算机技术、通信技术进一步融合,形成测量、控制、通信与计算机(M3C)结构。在ASIC和PLD设计方面,向超高速、高密度、低功耗、低电压方向发展。外设技术与EDA工程相结合的市场前景看好,如组合超大屏幕的相关连接,多屏幕技术也有所发展。中国自1995年以来加速开发半导体产业,先后建立了几所设计中心,推动系列设计活动以应对亚太地区其它EDA市场的竞争。在EDA软件开发方面,目前主要集中在美国。但各国也正在努力开发相应的工具。日本、韩国都有ASIC设计工具,但不对外开放3。中国华大集成电路设计中心,也提供IC设计软件,但性能不是很强。相信在不久的将来会有更多更好的设计工具有各地开花并结果。据最新统计显示,中国和印度正在成为电子设计自动化领域发展最快的两个市场,年复合增长率分别达到了50%和30%。EDA技术发展迅猛,完全可以用日新月异来描述。EDA技术的应用广泛,现在已涉及到各行各业。EDA水平不断提高,设计工具趋于完美的地步。EDA市场日趋成熟,但我国的研发水平还很有限,需迎头赶上。可编程逻辑器件自70年代以来经历了PAL,GALCPLD,FPGA几个发展阶段,其中CPLD/FPGA高密度可编程逻辑器件,目前集成度已高达200万门片,它将各模块ASC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快速度上市,而当市场扩大时,他可以很容易的转换掩膜ASIC实现,因此开发风险也大为降低。1.2 VHDL及开发系统概述1.2.1 VHDL语言简介及其结构特点 VHDL是Very high speed integrated circuit Hardware Description Language的缩写,意思是非常高速集成电路的硬件描述语言,是HDL的一种。这是一项诞生与由美国国防部所支持的研究计划,目的是为了把电子电路的设计意义以文字或文件的方式保存下来,以便他人能轻易地了解电路的设计意义。由于VHDL电路描述语言所能涵盖的范围很广,从ASIC的设计到PCB系统的设计,VHDL电路描述语言都能派上用场,所以VHDL语言毫无疑问地成为硬件设计工程师的必备工具。1 VHDL语言的特点VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多方面具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似与一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计或称设计实体(可以是一个元件、一个电路模块或一个系统)分成外部(即端口)和内部(即设计实体的内部功能和算法完成部分)。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其它的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。1)更强的行为描述能力与其它的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模集成电路的重要保证。2)丰富的仿真语言和库函数VHDL丰富的仿真语言和库函数,使得在大规模集成电路设计的早期就能查验出设计系统的功能可行性,可随时对设计进行功能仿真、时序仿真,使设计者在设计初期就可以对整个工程设计的可行性作出决策,从而缩短了设计周期,减少了研发成本。3)再利用功能VHDL语句的行为描述能力和程序结构决定了它具有支持大规模集成电路设计的分解和对已有设计的再利用功能。重复利用他人的IP(Intelligence Property core)模块和软核(soft core)是VHDL的特色。设计不必各个都从头再来,只要在更高的层次上把IP模块利用起来,能达到事半功倍的效果。4)逻辑综合和优化对于VHDL完成的一个确定的设计,可以利用EDA工具(如MAX+PLUSII)进行逻辑综合和优化,并自动把VHDL描述设计转换成门级网表。这种设计方式突破了传统门级设计中的瓶颈,极大地减少了电路设计的时间和错误发生率,降低了开发成本,缩短了设计周期。5)描述的独立性VHDL对设计的描述具有相对的独立性设计者可以不懂硬件的结构,也不必关心最终设计的目标器件是什么而进行独立的设计。因为VHDL的硬件描述与具体的工艺和硬件结构无关,VHDL设计程序的硬件实现目标器件有广阔的选择范围。6)修改灵活由于VHDL具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的前提下,只需改变类属参数或函数,就能改变设计的规模和结构。2 VHDL语言的描述风格在VHDL结构体中,可以用不同的描述方式或说是建模方法来表达,通常可归纳为行为描述、寄存器传输(RTL)描述和结构描述。行为描述行为描述只表示输入与输出闯转换的行为,不包含任何结构信息。行为描述主要指顺序语句描述,既通常是指古有进程的非结构化的逻辑描述。RTL描述也称为数据流描述,是以规定设计中的各种寄存器形式为特征,然后在寄存器之间插入组合逻辑。RTL描述是建立在用并行信号赋值语句(进程)基础上的,RTL描述能比较直观地表达底层逻辑行为。它既含有逻辑单元的结构信息,又隐含表示某种行为,RTL描述主要是指非结构化的并行语句描述。结构描述结构描述是基于元件例化或生成语句的应用,表示元件问的互连,其风格最接近实际的硬件结构。3 VHDL基本程序结构一个相对完整的VHDL设计由以下几个部分组成:库、程序包,实体,结构体,配置。其各自作用如图1-1所示:图1-1VHDL基本程序结构以上四个部分并不是每一个VHDL程序都必须具备的,其中只有一个实体和一个与之对应的结构体是必须的。1 实体实体(ENTITY)是VHDL设计中最基本的一个组成部分,VHDL表达的所有设计均与实体有关。实体类似与原理图中的一个部件符号,它并不描述设计的具体功能,只定义了该设计所需的全部输入输出信号。实体的语法格式如下:ENTITY 实体名 IS GENERIC(类属表);-类属参数声明 PROT(端口表);-端口声明END ENTITY 实体名; 2 结构体所有能被仿真的实体都有结(ARCHITECTURE)描述即结构体描述实体的结构或行为。在结构体描述中可采用行为描述、结构描述或数据流描述三种不同的描述方式,或称为建模方法,从不同的侧面描述结构体的行为方式。在实际应用中,为了兼顾整个设计的功能、资源、性能几方面的因素,通常混合使用这三种描述方式。结构体的语法格式如下:ARCHITECTURE 结构体名 OF 实体名 IS 声明语句BEGIN 功能描述语句END ARCHITECTURE 结构体名8; 1.2.2 MAX+PLUS II开发系统概述1 Max+plusII 简介Max+plusII (Multiple array matrix and programmable logic user system)是Altera 公司提供的FPGA/CPLD开发集成环境,Altera是世界上最大可编程逻辑器件的供应商之一。Max+plusII 界面友好,使用便捷,被誉为业界最易用易学的EDA软件。在Max+plusII上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与结构无关的设计环境,是设计者能方便地进行设计输入、快速处理和器件编程。它所提供的灵活性和高效性是无可比拟的。它具有丰富的图形界面,辅之以完整的、即时访问的在线文档,使设计者能够轻松的使用Max+plusII软件包设计数字集成电路。2 MAX+PLUS II的特点1)开放的界面MAX+PLUS II软件可以与其它工业标准的设计输入、综合与校验工具相连接。目前MAX+PLUS II支持与Candence、Exemplarlogic、Synopsys、Synplicity Viewlogic等其它公司所提供的EDA工具接口。2)与结构无关MAX+PLUS II系统的核心compiler支持Altera公司的FLEXl0K、FLEX8000、FLEX6000、MAX9000、MAX5000等可编程器件,提供了真正与结构无关的可编程设计环境。MAX+PLUS II的Compiler还提供了强大的逻辑综合与优化功能,使用户比较容易地将起设计集成到器件中。3)完全集成化MAX+PLUS II软件的设计输入、处理与校验功能全部集成在统一的开发环境下,这样可以加快动念调试、缩短设计周期。4)丰富的设计库MAX+PLUSII提供了丰富的库单元,其中包括74系列的全部器件和多种特殊的逻辑宏功能以及参数化的兆功能供设计者调用,大大减轻了设计者的工作量,缩短了设计周期。5)模块化工具设计者可以从各种设计输入、处理和校验选项中进行选择从而使设计环境用户化,必要时,还可以根据需要添加瓤功能。由于MAX+PLUSII支持多种器件,设计者不必学习新的工具就可支持新的结构。6)支持多种硬件描述语言MAX+PLUS II软件支持多种硬件描述语言设计输入选项,包括VHDL、VerilogHDL和AHDL语言。1.3 主要内容本文在第一章主要介绍了此次毕业设计的背景及硬件描述语言VHDL和EDA开发系统MAX+PLUSII的特点。第二章主要讲述了本次设计出租车计价器的设计思路和各部分的功能实现过程。第三章主要展示了程序在硬件仿真时的结果。第2章 设计思路和各部分的实现2.1 出租车计价器的特点和功能出租车计价器是一种专用的计量器,它被安装在出租车上来计量乘客在乘车过程中生成的各种费用,因此,它具有在不同情况下的计费功能,本次设计的出租车计价器具有如下功能和特点:1 基本计费功能:1.2元/公里,以半公里提前计费;2 白天/夜晚22:005:00 :起步费5元/2公里,5.8元/2公里3 带数据输出功能,便于和微型打印机通信;4 具有停车计费功能,每停5分钟算0.5km;5 总里程超过12km,每公里加0.8元,即2元/公里;6 时间显示功能,以供出租车平时使用;7 LED数码管显示功能,可以将总费用,总公里数,停车时间,显示出来;2.2 基本设计思路和工作原理出租车计价器是接受外部里程脉冲信号,然后根据里程脉冲逐一累加计费,最后输出显示。它主要由五个部分组成;时间部分、分频部分、计费部分、里程计数部分以及译码显示部分。具体的系统结构框图如图2-1所示:图2-1系统结构框图其中:1 时间部分,为永久计时,可做为出租车上的电子表使用,同时它会输出白天黑夜转换信号,以及五分钟计时信号。2 分频部分,将全局时钟转化为时间所用的时钟脉冲。3 里程计数部分,将接收到的里程脉冲进行计数,并输出总里程数,以及大于12公里信号。4 计费部分则接受里程脉冲,以及时间部分的五分钟计时信号,然后通过逻辑关系,计算出总的费用,再进行输出。5 译码显示部分则将前面所的出来的各种需要显示的数据,译码为可以供数码管显示的二进制数。如图2-2所示,为顶层模块图 图2-2顶层模块图由图中可以看出: 时间部分:time1模块; 计费部分:jifei模块; 分频部分:FP模块; 里程计数部分:s-counter模块;译码显示部分:saomiao模块、XUAN模块、XUAN1模块、yimaxianshi1模块、fenwei模块、qiehuan模块;2.3 分频部分的实现 图2-3 分频模块图 分频部分主要由一个分频电路组成。通过计数器功能,它将全局时钟1.465khz的clk分成5hz的clk_5hz时钟脉冲,以供给时间部分使用。部分相关代码如下:process(clk)begin if rising_edge(clk) then a=a+1; if a=292 then a=0; elsif a146 then clk_5hz=1; else clk_5hz=0; end if; end if;end process;其中a为0到292的整数当a146时,clk_5hz输出高电平,否则输出低电平.因此,clk_5hz 的周期为,频率为5hz.波形仿真图如下图2-4所示:图2-4 分频模块波形仿真图由图中可以看出,clk全局脉冲,成功的被分成了5hz的时钟脉冲。2.4 时间部分的实现图2-5 时间模块图时间部分主要由TIME1模块组成,主体是一个数字电子钟,分别有时、分、秒的输出以及白天黑夜信号D/N、五分钟计时time_5m信号的输出,5分钟计时显示输出功能;同时它具有调时、调分的的功能,在出租车上也可以作为日常时间电子表使用。1 电子钟功能电子钟功能采用两个60进制计数器,以及24进制计数器来实现。具体相关代码如下所示: if(S=59)then S=0; if(M=59) then M=0; if(H=23)then H=0; else H=H+1; end if; else M=M+1; end if; else S=S+1; end if;当S=59时,就会归零,同时M加1,当M=59时,就会归零,同时H加1,当H=23时,就会归零。从而实现数字电子钟的计数功能。2 调时,调分功能当调时使能端EN高电平有效时,进入调时状态,这时,程序对调小时按键ADJUSTH、调分按键ADJUSTM敏感,当它们其中一个被按下后,开始对clock上升沿敏感,并使相应的的H或M加1.相关程序如下所示:if rising_edge(clock) then if en=1 then if adjustH=1 THEN if H=23 then H=0; else H=H+1; end if; elsif adjustM=1 then if M=59 then M=0; else M=5 and H=21 then D=1; else D=5和H=21之间为白天,D输出高电平,其他时间为黑夜即H 在22:00到5:00之间。波形仿真图如图2-7所示:图2-7 时间模块D信号波形仿真图4 五分钟计时信号time_5m五分钟计时信号为一个300进制计数器,当感应到暂停按键pause时,开始计数,计300个数后输出一个高电平脉冲。相关程序如下所示: if rising_edge(clock) then if pause=1 then if timecount1=4 then timecount1=0; if a=299 then a:=0;time_5m=1; else a:=a+1;time_5m=0; end if; else timecount1=timecount1+1; end if; else a:=0;timecount1=0;time_5m=0; end if; end if;程序的驱动脉冲为5hz的clock脉冲,因此使用了一个5进制的计数器,转化为1hz,后使用,每当timecount1计5个数后,a加1,当a=299时,a归零,共需300秒,为5分钟,这是time_5m输出一个高电平脉冲。从而实现5分钟计时脉冲的输出。 波形仿真图如图2-8所示:图2-8 时间模块五分钟计时脉冲仿真图5 五分钟计时显示功能五分钟计时显示功能,为在停车计费期间,显示出的停车时间,它是与5分钟计时信号同步的,都是感应暂停按键pause来开始启动的。也是用一个300进制计数器来实现。相关程序如下所示: if pause=1 then if jishicount=299 then jishicount=0; if jishi=99 then jishi=0; else jishi=jishi+1; end if; else jishicount=jishicount+1; end if; else jishicount=0;jishi=0;程序的驱动脉冲也是5hz的clock脉冲,即周期为0.2s, 所以采用300进制计数,当计数jishicount=299时,jishi加1,为1分钟。 波形仿真图如图2-9所示:图2-9 时间模块计时显示波形仿真图2.5 里程计数部分 里程计数部分主要由一个里程计数模块s_counter组成.用来接收半公里脉冲,并进行累加计数,从而输出12公里信号,以及输出显示总的里程数。 1 输出12公里信号功能通过对半公里信号脉冲进行累加计数,用一个24进制计数器来完成。相关程序如下所示:process(y,start)begin if rising_edge(y) then if start=1 then x=00010111)then s=1; end if; else x=00000000;s=0; end if; end if; end process;其中当开始按键start=1时,y=sclk,sclk为半公里脉冲,当到达y的上升沿时,x加1,当x=23时,即计数达到24时,12公里信号s被置为高电平,从而达到输出12公里信号的功能。波形仿真图如图2-10所示:图2-10 12公里信号波形仿真图2 总里程数输出显示功能里程计数输出功能是对输入的半公里脉冲进行二进制计数,再逐一累加输出显示,可以显示出,在出租车计费期间所行驶的路程,以供乘客和司机查阅,使计费更加明朗化,避免司机和乘客之间产生纠纷。相关程序如下所示: if start=1 then if l=0 then l:=1; if w1=1001 then w1=0000; if w2=1001 then w2=0000; else w2=w2+1; end if; else w1=w1+1; end if; else l:=l-1; end if; else w1=0000;w2=4 then if d1=0100 then d1=0000; if d2=1001 then d2=0000; if d3=1001 then d3=0000; if d4=1001 then d4=0000; else d4=d4+1; end if; else d3=d3+1; end if; else d2=d2+1; end if; elsif d1=0110 then d1=0010; if d2=1001 then d2=0000; if d3=1001 then d3=0000; if d4=1001 then d4=0000; else d4=d4+1; end if; else d3=d3+1; end if; else d2=d2+1; end if; elsif d1=1000 then d1=0100; if d2=1001 then d2=0000; if d3=1001 then d3=0000; if d4=1001 then d4=0000; else d4=d4+1; end if; else d3=d3+1; end if; else d2=d2+1; end if; else d1=d1+0110; end if; end if;程序中,d1、d2、d3、d4分别为费用显示中的,角、元、十、百,当d1=4时,感应到半公里脉冲,d1置为0,同时d2加1;当d1=6时,感应到半公里脉冲,d1置为2,同时d2加1;当d1=8时,感应到半公里脉冲,d1置为4,同时d2加1;从而,在半公里脉冲信号的驱动下,计费金额不断累加。程序中,counter为半公里脉冲计数变量,当counter=4的时候为两公里,因为要实现半公里提前计费,因此当counter=4时,开始在初始计费上累加计费。同时,在白天黑夜信号D的控制下,计费器会进行白天黑夜不同情况下的初始计费;当D为高电平时,为白天计费,d1被预置0,d2被预置5;当D为低电平时,为黑夜计费,d1被预置8,d2被预置5;相关程序如下所示: if counter4 then if D=1 then d2=0101; else d2=0101;d1=1000; end if; end if;白天计费波形仿真图如图2-13所示:图2-13 白天计费波形仿真图黑夜计费波形仿真图如图2-14所示:图2-14 黑夜计费波形仿真图2 大于12公里计费功能功能要求:当计费里程达到12公里后,计费模式将要改变,由原来的每公里1.2元,变为每公里两元,即半公里1元。因此,只需接收里程计数部分发出的12公里信号,然后将计费模式跳转到大于12公里计费模式,即没感
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 老年人感染防护知识培训课件
- 大数据技术在智能运维及风险预警中的应用
- 靖边到定边多少公里
- 热点主题作文 压轴练-2025年中考语文复习
- 2025年1月国开电大法学本科《国际法》期末纸质考试试题及答案
- 老刀修面培训知识总结
- 配电网扩展知识培训课件
- 老人康复知识培训课件
- 市场调查与分析:大数据融合的视角(数字教材版)课件全套 第1-12章-大数据时代的市场调查概述-市场调查报告撰写
- 老人养老护理培训课件
- 劳动与技术小学开学第一课
- 新诊断心房颤动的护理查房
- 生产策划管理办法
- 职业健康粉尘防护培训
- 妇科疾病中医外治课件
- 制定工装模具管理办法
- 关于湿疹的课件
- 陕西物业资质管理办法
- 2025年巴彦淖尔市磴口县社区工作者招聘考试试题【答案】
- 《爱的五种能力》
- 石膏固定病人护理常规
评论
0/150
提交评论