毕业论文_基于cpld的出租车计价器的设计_第1页
毕业论文_基于cpld的出租车计价器的设计_第2页
毕业论文_基于cpld的出租车计价器的设计_第3页
毕业论文_基于cpld的出租车计价器的设计_第4页
毕业论文_基于cpld的出租车计价器的设计_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

基于CPLD的出租车自动计价系统的设计作者姓名李刚刚专业名称信息工程指导教师大学讲师摘要随着电子行业的迅猛发展,计价器在各个领域中的使用越来越频繁,用户对计价器的要求也越来越高。以出租车多功能计价器为例,用户不仅要求计价器性能稳定,计费准确;不同国家和地区的收费方式存在差异,即使在同一地区,不同车型的出租车其收费方式也有差别,而且出租车还面临几年一次的调价或调整收费方式等问题。传统的基于单片机设计的出租车多功能计价器已远远跟不上这种变化,功能升级很繁琐,需要硬件重组和软件更新同步进行,成本高,并且每次升级都可能产生新的不稳定因素;而本设计是基于复杂可编程逻辑器件CPLD的出租车自动计价系统,采用超高速集成电路硬件描述语言VHDL和逻辑综合为基础的自顶向下的电路设计方法,在硬件电路不加改变的前提下,功能升级十分方便,从使用情况看,该设计稳定性好、可靠性高,市场前景良好,而且开发成本低,周期短,极大的满足了用户的变化要求。关键词硬件设计CPLD超高速集成电路硬件描述语言仿真ABSTRACTALONGWITHTHEFASTFIERCEDEVELOPMENTOFTHEELECTRONICSPROFESSION,CHARGETHEMACHINEINEACHREALMOFUSAGEISMOREANDMOREMULTIFARIOUS,THEREQUESTOFCUSTOMERTOTHECHARGEMACHINEISALSOMOREANDMOREHIGHTOTAKEMULTIFUNCTIONCHARGEMACHINEOFTHERENTCARASANEXAMPLE,THECUSTOMERNOTONLYREQUESTTOCHARGETHEMACHINEFUNCTIONSTABILITY,CHARGEACCURATETHEFORRENTCAROFDIFFERENTFROMTHECHARGESMETHODEXISTENCEDIFFERENCEOFTHEREGION,EVENINSAMEREGION,CARINDIFFERENTNATIONTYPEITCHARGESTHEWAYBUTALSOHAVETHEDIFFERENCE,ANDRENTTHECARTOSTILLFACESATIMEFEEHIKESOFSEVERALYEARSORADJUSTTOCHARGETHEWAYETCPROBLEMTRADITIONALACCORDINGTOAMACHINEDESIGNOFMULTIFUNCTIONCHARGEMACHINEOFFORRENTCARHASALREADYCANNEDNOTKEEPUPWITHTHISKINDOFVARIETYFARANDFAR,THEFUNCTIONUPGRADEISVERYTEDIOUS,NEEDINGTHEHARDWAREREORGANIZATIONTOCARRYONWITHTHESOFTWARERENEWALSYNCHRONOUSLY,THECOSTISHIGH,ANDUPGRADEEACHTIMEMAYPRODUCETHELATELYUNSTEADYFACTORBUTACCORDINGTOPROGRAMMABLELOGICARRAYCPLDOFTHESPOTOFMULTIFUNCTIONCHARGEMACHINEOFFORRENTCAR,THEADOPTIONHARDWAREDESCRIPTIONLANGUAGETHEVHDLANDLOGICISCOMPREHENSIVEFORBASALFROMTHECRESTGETDOWNOFTHEELECTRICCIRCUITDESIGNMETHOD,DOESNOTCHANGEINTHEHARDWAREELECTRICCIRCUITUNDERTHEPREMISE,THEFUNCTIONUPGRADEEXTREMELYCONVENIENTLY,LOOKINGFROMTHESERVICECONDITION,THISDESIGNSTABILITYGOOD,THERELIABILITYISHIGH,THEMARKETPROSPECTISGOOD,MOREOVERTHEDEVELOPMENTCOSTISLOW,THECYCLEISSHORT,ENORMOUSHASSATISFIEDTHECHANGEREQUESTOFCUSTOMERKEYWORDSHARDWAREDESIGN,COMPLEXPROGRAMMABLELOGICDEVICE,EXTREMELYHIGHSOONTHEINTEGRATEDCIRCUITHARDWAREDESCRIPTIONLANGUAGE,SIMULATION目录摘要IABSTRACTII1前言111课题研究背景112本文所做的工作32相关技术介绍421CPLD简介4211CPLD的基本结构4212CPLD的特点422XILINX公司可编程逻辑器件介绍5221XC9500系列器件结构简述5222可编程CPLD芯片XC9572产品规格说明823VHDL语言简介10231VHDL语言的优点10232使用VHDL语言的可行性1224XILINXFOUNDATIONF15系统简介123出租车自动计价系统的设计1331系统基本设计思想及实现的功能及要求13311系统基本设计思想13312系统实现的功能及要求1332系统硬件设计14321外围电路介绍1433系统软件设计18331电子钟程序设计18332计价部分程序设计1934程序仿真图25结论29致谢30参考文献31附录A(系统程序)321前言11课题研究背景当今社会是数字集成电路广泛应用的社会。数字集成电路由早期的电子管、晶体管、小中规模集成电路、发展到超大规模集成电路VLSIC,几万门以上以及许多具有特定功能的专用集成电路ASIC(APPLICATIONSPECIFICINTEGRATEDCIRCUIT)。在现代复杂的数字逻辑系统中,专用集成电路的应用越来越广泛,曾经广泛使用的由基本逻辑门和触发器构成的中小规模集成电路所占的比例越来越少。专用集成电路ASIC是面向用户定义用途或特定功能的大规模,超大规模集成电路。专用集成电路的英文是APPLICATIONSPECIFICINTEGRATEDCIRCUIT,SIC是其英文缩写。ASIC有数字的、模拟的、数字和模拟混合的。按制造方式区分,有全定制ASIC、有半定制ASIC、可编程ASIC三种。其中可编程ASIC可做到用户在现场对其编程来实现各种特定的逻辑功能。正是可编程ASIC独特的器件性能和应用方式使拥护可“自制”大规模数字集成电路的理想成为现实。现在,使用可编程ASIC和相应的EDA开发系统,用户可以借助计算机实现各种实际的数字电路或电子系统的设计、功能模拟、时间模拟以及系统调试。因此,可编程ASIC的问世及广泛应用促进了电子系统设计方法的重大变革这一说法毫不过分。从20世纪70年代INTEL公司第一个推出4004MPU起到80年代初,是MPU技术飞速发展的时期。MPU技术的快速渗透刺激了MPU外围LSI器件的发展。当时由MPU、MPU的外围LSI器件,通用IC这三大积木块搭起来可以标准地实现一个复杂的电子系统。到了20世纪80年代中期MPU由8位、16位发展到32位,速度和集成度越来越高,再加上电子产品的少少批量多品种化趋势,高速低功耗及小型化的要求,原来的电子系统中MPU的外围LSI和通用IC适应不了这一技术上的变化。20世纪80年代中期以来可编程ASIC以其现场可编程,高速,高集成度的优势充当了电子系统中的新的积木块。由MPU、存储器和可编程ASIC这三个可编程的积木块组成现代电子系统已形成趋势或潮流。是否采用可编程ASIC来实现电子产品的设计已成为衡量电子产品是否先进的标准之一。可以说可编程ASIC技术是现代电子系统设计的新潮流,对于一个现代电子系统设计师来说,学习应用可编程ASIC技术势在必行。虽然ASIC的成本很低,但设计周期长,投入费用高。可编程逻辑器件(PLD,PROGRAMMABLELOGICDEVICE)自问世以来,经历了从低密度的PROM、PLA、PAL、GAL到高密度的现场可编程门阵列(FPGA,FIELDPROGRAMMABLEGATEARRAY)和复杂可编程逻辑器件CPLD(COMPLEXPROGRAMMABLELOGICDEVICE)的发展过程。大规模可编程逻辑器件的出现打破了中小规模通用型集成电路和大规模专用集成电路垄断的天下,它们既继承了专用集成电路的高集成度、高可靠性的优点,又克服了专用集成电路设计周期长、投资大和灵活性差的缺点;它们也可以解决使电子系统小型化、低功耗、高可靠性等问题。利用它们进行产品开发,不仅设计制造成本低、设计开发周期短、开发工具先进、可靠性高,而且具有完全的知识产权,给设计人员带来了诸多方便。FPGA/CPLD因此被广泛应用于电子产品的原型设计和电子产品生产一般在1万件以下之中。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均应用FPGA和CPLD器件。FPGA与CPLD都是可编程逻辑器件,它们是在PAL、GAL等逻辑器件的基础之上发展起来的,它们在高密度、高速度、低功耗等方面发展很快,同以往的PLA、PAL、GAL等相比较,FPGA/CPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。在这十几年的发展过程中,以FPGA/CPLD为代表的数字系统现场集成技术取得了惊人的发展,单一芯片的门数从几百门增加到数百万门,现场可编程逻辑器件从最初的1200个可利用门,发展到90年代的25万个可利用门。目前,国际上著名半导体器件公司有XILINX,LATTICE,ALTERA等,研发出若干新型的大规模可编程逻辑器件。CPLD有XILINX公司的XC9500系列,LATTICE公司的ISPLSI/PLSI1000系列和MACH5系列,ALTERA公司的MAX7000系列和MAX9000系列等。XILINX公司的XC5000/4000系列,ACTEL公司的ACT系列,TI公司的TPC系列,ALTERA公司的FLEX系列等是FPGA的代表产品。厂商又陆续推出了数百万门的单片FPGA芯片,将现场可编程器件的集成度提高到一个新的水平。随着可编程逻辑器件及EDA技术的高速发展,电子系统向集成化、小型化、大规模和高速度的方向发展,电子系统的设计技术和工具也发生了深刻的变化。计算机技术的普及加速了电子设计自动化技术的进程,EDA开发系统的自动化和智能化程度也日臻完善。由美国国防部提出的VHDL(VERYHIGHSPEEDINTEGRATEDCIRCUITHARDWAREDESCRIPTIONLANGUAGE)即超高速集成电路硬件描述语言,是为了要解决项目间的信息交换困难和设计维护困难,同时也为解决当时的超高速集成电路(VHSIC,VERYHIGHSPEEDINTEGRATEDCIRCUIT)计划而提出的一种硬件描述语言,采用高层次的、自顶向下的设计方法来描述硬件,非常适合当前需要。它改变了传统的数字系统的描述方法和设计方法,使得软件实现硬件化、硬件设计软件化、用户自制大规模和超大规模集成电路等都成为了现实。美国国防部1987年12月IEEE接受VHDL为标准的HDL,这就是今天的IEEESTD10761987和IEEESTD10761993。FOUNDATIONSERIES可编程器件开发系统是XILINX公司设计的EDA工具,具有很强的开发和设计功能,是电子设计不可缺少的工具,他可以接受多种方式的输入原理图输入、文本输入(硬件描述语言)、第三方EDA工具提供的接口等。系统的仿真器具有很强灵活性,可以控制对单器件或多器件的仿真。12本文所做的工作出门坐出租车已成为现在很多人的选择,不仅随叫随到而且快捷方便,那么公平合理准确的计费就成为人们最关注的问题。本文主要内容是利用CPLD可编程逻辑器件设计并实现一个适合实际的出租车计价系统,采用VHDL语言进行编程,编程环境为XILINX公司的可编程器件的开发系统(XILINXFOUNDATION),源程序文件经编译后下载到可编程逻辑器件XC9572芯片内部后,可应用于实际的出租车计价系统中。2相关技术介绍21CPLD简介复杂可编程逻辑器件CPLD与现场可编程门阵列FPGA都是在PLA、PAL、GAL等逻辑器件的基础上发展起来的。与以往的PLA、PAL、GAL等相比较,FPGA/CPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。这样的FPGA/CPLD实际上就是一个子系统部件。这种芯片受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。211CPLD的基本结构CPLD的集成度在千门/片以上,其基本结构是由与阵列、或阵列、输入缓冲电路、输出宏单元组成。其与阵列比PAL大得多,但并非靠简单的增大阵列的输入、输出端口达到。阵列占用芯片的面积随其输入端数的增加而急剧增加,而芯片面积的增大不仅使芯片的成本增大,还使信号在阵列中传输延迟加大而影响其运行速度。所以CPLD通常是由多个类似PAL功能块组成,具有很大的固定于芯片上的布线资源,通过位于中心的互连矩阵连接在一起。互连阵列要将来自I/O的信号和逻辑块的输出布线到器件内任何逻辑块的输入。一般互连矩阵有两种形式基于阵列的互连和基于多路开关的互连。基于阵列的互连是纵横开关的实现方式,它允许任何输入到互连矩阵中的信号布线到任何逻辑块,是完全可布通的。基于多路开关的互连是对逻辑块的每个输入有一个多路转换器,输入到互连矩阵的信号被连接到每个逻辑块的大量多路开关的输入端,这些多路转换器的选择是可编程的,只允许其一个输入通过它进入逻辑块。所以布通率与多路转换器的输入宽度有关,宽度愈大,所占面积增加,性能降低。与FPGA相比,CPLD不采用分段互连方式,因而具有较大的时间可预测性,产品可以给出引腿到引腿的最大延迟时间;此外,CPLD具有很宽的输入结构,适合于实现高级的有限状态机;具有ISP性能的CPLD,可以直接在系统内对其进行编程,因而类似于具有ISP性能的SRAM查找表类型的FPGA。212CPLD的特点20世纪80年代中期,ALTERA和XILINX分别推出了类似于PAL结构的扩展型CPLD和与标准门阵列类似的FPGA,它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。这两种器件兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程也很灵活,具有以下特点1目前的CPLD主要是基于E2PROM或FLASH存储器编程,编程次数达1万次。其优点是在系统断电后,编程信息不丢失。CPLD又可分为在编程器上编程和在系统编程ISPCPLD两种。ISP器件的优点是不需要编程器,可先将器件装焊于印制板,再经过编程电缆进行编程,编程、调试和维护都很方便。2CPLD是将多个可编程阵列逻辑PAL器件集成到一个芯片,具有类似PAL的结构。一般情况下CPLD器件中至少包含三种结构可编程逻辑功能块FB可编程I/O单元可编程内部连线。3在速度上CPLD优于FPGA。由于FPGA是门级编程,且CLB之间是采用分布式互连而CPLD是逻辑块级编程,且其逻辑块互连是集总式的。因此,CPLD比FPGA有较高的速度和较大的时间可预测性,产品可以给出引腿到引腿的最大延迟时间。4FPGA/CPLD软件包中有各种输入工具和仿真工具,以及版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、优化、仿真,直至最后芯片的制作。5电路设计人员使用FPGA/CPLD进行电路设计时,软件易学易用。22XILINX公司可编程逻辑器件介绍目前生产CPLD和FPGA的公司主要有ALTERA、XILINX、LATTICE以及AMD公司。本次设计所使用的可编程逻辑器件是由XILINX公司生产的CPLD器件XC9572。以下就对XILINX公司生产的XC9500系列以及本次所采用的XC9572进行介绍。221XC9500系列器件结构简述XC9500系列器件采用ISP技术。每个XC9500系列器件是一个由多个功能块FB和I/O块IOB组成,可用开关矩阵FASTCONNECT完全互连的子系统,IOB提供器件输入和输出的缓冲,每个FB提供具有36个输入和18个输出的可编程逻辑的容量。FASTCONNECT开关矩阵连接所有FB的输出和输入信号到FB的输入端,对于每个FB,1218个输出取决于封装的引腿数和有关的输出使能信号直接驱动I/B。图21所示的是XC9500系列器件的结构。它采用了基于FLASH的035M技术,可以提供10000次以上编程/擦除周期。XC9500系列器件分为以下三种系列1XC9500XV系列器件25VISP;引脚至引脚延时35NS,FSYS200MHZ;多种电压的I/O接口,可以支持的电压为33V/25V/18V。2XC9500XL系列器件33VISP;引脚至引脚延时4NS,FSYS196MHZ;多种电压的I/O接口,可以支持的电压为50V/33V/25V。3XC9500系列器件50VISP;引脚至引脚延时5NS,FSYS126MHZ;多种电压的I/O接口,可以支持的电压为50V/33V。以下介绍一下XC9500系列的基本结构。1XC9500功能块FB每个功能块由18个独立的宏单元组成,能够实现组合逻辑和时序逻辑功能。FB能接收全局时钟,输出使能和复位/置位信号。FB生成18个输出以驱动FASTCONNECT,这18个输出与其对应的输出使能信号也可以驱动I/OB。功能块的结构框图如图21所示图21功能块FB的结构框图2宏单元MACROCELL通常宏单元由可编程的逻辑阵列、乘积项分配器、可编程寄存器、数据选择器以及一些相应的简单的门电路构成。一般来说,XC9500系列的每一个宏单元可以单独配置成组合逻辑功能或者时序逻辑功能,这主要取决于宏单元中的寄存器是否被旁路。图22说明了FB中宏单元的内部结构图22FB中宏单元的内部结构3开关矩阵SWITCHMATRIX开关矩阵也是CPLD内部可编程的重要资源,其连接信号到FB的输入。所有UOB的输出和所有FB的输出都驱动FASTCONNECT开关矩阵。这些信号的任一个都可以通过编程选择以统一的延时驱动每个FB。如图23所示。4I/O模块IOB在XC9500系列CPLD的内部结构中,I/O块的功能是用来为CPLD的输入和输出提供相应的缓冲,即用来为内部逻辑电路和器件的用户引脚之间提供相应的接口,它的具体结构和输出使能如图24所示。图23FASTCONNECT开关矩阵5乘积项分配器PRODUCTTERMALLOCATOR在XC9500系列CPLD的FB中,乘积项分配器的主要功能是用来控制如何将直接来自于可编程与阵列的5个乘积项分配给相应的宏单元来使用。222可编程CPLD芯片XC9572产品规格说明1、XC9572的特性1所有引脚提供75NS引脚引脚逻辑延时;2125MHZ计数频率;3具有1600个可用门的72个宏单元;472个用户I/O引脚;55VISP内部系统可编程;可完成10000次编程/擦除;图24IOB结构图可完成所有商用电压和温度范围的编程/擦除;6增强的引脚锁定结构;7灵活的36V18功能块;90个乘积项可驱动功能块内18个宏单元的任意乘积项;具有全局时钟、乘积项时钟、输出使能及置位复位信号;8扩展的IEEESTD11491边界扫描支持JTAG;9每个宏单元内具有可编程功率转换模式;10单个输出时有转换速率控制功能;11用户可编程地针功能;12为设计保护提供的扩展模式安全特性;13高驱动的24MA输出;1433V或5V的I/O能力;15先进的CMOS5V快速闪烁技术;16支持多片的XC9500并行编程;17支持44脚PLCC,84脚PLCC,100脚PQFP和100脚TQFP封装形式。2、XC9572特性说明XC9572是一种高性能的CPLD,为一般的逻辑集成提供了先进的系统内部编程及测试功能。它由8个36V18功能块组成,功能块提供1600个75NS传输延时的可用门。系统的整体结构见图25。23VHDL语言简介当前,在国内外应用的硬件描述语言有许多种,VHDL语言是应用最广泛的硬件描述语言之一。VHDL语言功能相当强大,不但适应了当今电子设计自动化技术的飞速发展,还变革性地促进了电子设计自动化技术的进步。世界上一些著名EDA公司的开发工具均支持VHDL。用VHDL语言编程实现数字电子系统硬件设计容易做到技术共享,HDL语言最适合于用CPLD和FPGA等器件实现数字电子系统设计。231VHDL语言的优点VHDL语言主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。VHDL语言的程序结构特点是见一项工程设计,或称设计实体(可以是一个元件、一个电路模块湖一个系统)分成外部(或称可视部分,即端口)和内部(或称可视部分),即设计实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其它的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的。1、与其他的硬件描述语言相比,VHDL具有更强的行为描述能力。2、VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期,就能检查设计系统的功能可行性,随时可对设计进行仿真模拟。3、VHDL语句的行为描述能力和程序结构决定了它具有支持大规模设计的分解和图25XC9572结构图已有设计的再利用功能。符合市场需求的大规模系统高效、高速的完成必须由许多甚至多个开发组共同并行工作才能实现。4、对于用VHDL完成一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动把VHDL描述设计转变成门级网表。VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。5、由于VHDL具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变类属参量或函数,就能轻易地改变设计的规模和结构。232使用VHDL语言的可行性使用VHDL语言设计出租车自动计价系统,使其实现出租车上电子数字钟和计费器以及预置和模拟汽车启动、停止、暂停等功能,并设计动态扫描电路显示时钟和车费数目,突出了其作为硬件描述语言的良好的可读性、可移植性和易理解等优点。VHDL语言编制的程序编译通过下载到特定芯片后,可应用于实际的出租车计价系统中。24XILINXFOUNDATIONF15系统简介XILINXFOUNDATION系统是XILINX公司可编程器件的开发系统之一,是一种目前使用较广的开发系统。该系统提供一个非常友好的用户界面,具有很强的开发和设计功能。在此开发系统下,用户可以完成从设计输入到设计仿真;从设计编译到器件编程,全部操作都在一个图形界面下操作完成。FOUNDATION系统支持XILINX公司的全部系列的可编程逻辑器件,利用该系统可以开发任何一种XILINX公司可编程逻辑器件。3出租车自动计价系统的设计31系统基本设计思想及实现的功能及要求311系统基本设计思想本系统设计包含电子钟和计价器的设计,用VHDL语言实现整个系统的设计,编程环境为XILINXFOUNDATIONF15系统。电子钟程序的设计要有时分秒的计量及显示,并且要有调节时间的功能。计价器程序的设计要有行驶路程、总金额和等待时间的计量及显示。设计最终生成SRAM目标文件3SOF,通过JTAG端口下载、BYTE2BLASTER编程电缆并行口PS配置,将设计数据下载到相应的CPLD中。312系统实现的功能及要求出租车自动计价系统实现两方面的功能,一是有一个电子数字钟的显示,一是计价部分(计价器),如图31所示。1、电子钟实现功能及要求(1)在LED数码管上显示时、分、秒;(2)设置清零按键CLR,CLR信号有效时,使小时为1和分钟为1;(3)设置小时调整按键,使小时加1,设置分钟调整按键,使分钟加1。2、计价器实现功能及要求(1)实现预置功能,能预置起步费,车行15公里内,且累计等待时间2分钟内,起步费3元;(2)实现计价、计时、计程功能。计价部分为起步费6元,车行15公里外以每公里1元计费,累计等待时间2分钟内不计费,2分钟外以每分钟15元计费。计价范围为09999元,分辨率为01元。计时部分为计算乘客等待时间,计时器量程为59分,满量程自动归零。计时分辨率为1分钟。计程部分为计算乘客所行驶的公里数,计程器的量程为99公里,满量程自动归零。计程分辨率为01公里。(3)设计动态扫描显示电路,显示出租车费、等待时间、行驶路程。(4)公里脉冲传感信号设定为每发一个脉冲代表运行了01公里。32系统硬件设计系统硬件结构及框图如图31所示。在硬件设计方面,因为是设计它的可实现性,所以电子钟的调节信号、等待信号和启动以及复位手动输入,在使用FOUNDATION软件模拟时则使用分频出的不同频率信号。这样硬件设计则主要包括这几部分频率信号源、键盘、功能芯片XC9572、数码管显示、显示位驱动电路及数码管段选驱动电路。XC9572是一种高性能的CPLD,具有72个用户I/O引脚,图32是电路的具体设计电路,数码管显示部分共用了9个LED数码管,分别为4位计价显示,3位计程显示,和2位等待时间显示,电子钟部频率信号分频模块控制模块等待信号公里脉冲计费/复位电子钟计费模块计时模块计程模块数码管显示图31计价系统件功能框图LED数码管动态扫描信号F1F10F15F1分的数码管及驱动电路因重复所以省略,总体电路图如图32所示,在第三章介绍电子钟的程序设计部分。321外围电路介绍信号源晶振电路如图33所示。123456ABCD654321DCBATITLENUMBERREVISIONSIZEBDATE19JUN2006SHEETOFFILEHSHEET2DDBDRAWNBYIO1IO2IO3IO4IO/GCK15IO/GCK26IO/GCK37IO8IO9IO35IO36IO37IO38IO/GSR39IO/GTS240IO/GTS142IO43IO44IO11IO12IO13IO14IO18IO19IO20IO22IO24IO25IO26IO27IO28IO29IO33IO34TCK17TDI15TMS16TDO30VCCINT21GND10UXC95727PC44C4412345671098SM212345671098SM312345671098SM412345671098SM5EEEEDDDDT2T3T4T5CCCCGGGGFFFFT2T3T4T5AAAABBBB12345671098SM612345671098SM712345671098SM812345671098SM912345671098SM1R1311KR1331KR1351KR1371KR1391KR1411KR1431KPNP1PNP2PNP3PNP4PNP5PNP6PNP7BG1019012BG1029012BG1039012BG1049012BG1059012BG1069012BG1079012T4T5T6T7BG1099013BG1109013BG1119013BG1129013R1091KR1101KR1111KR1121KA4A5A6A7B7R1311KR1311KR1311KR1311KR1311KR1311KR1311KABCDEFGVCCK55K44K33K22K00K11KEYH2KEYH1KEYH0R510KR410KVCC1GND2TCK3TDO4TDI5TMS6J3XJTAGGNDTCKTDOTDITMSVCCNC1GND2VCC4OUT3U5240HZVCCVCCTMSTDOTDITCKVCCT3BG1129013R1121KA3T2BG1129013R1121KA2T9BG1129013R1121KA9T1BG1129013R1121KA1T8BG1129013R1121KA8GFT1ABEDT1CGFT6ABEDT6CEDT7CEDT8CEDT9CBAT9FGBAT8FGBAT7FG图32总体设计电路图123456ABCD654321DCBATITLENUMBERREVISIONSIZEBDATE15JUN2006SHEETOFFILECDOCUMENTSANDSETTINGSHUANG桌桌SHEET2DDBDRAWNBYNC1GND2VCC4OUT3U5240HZVCC图33电源晶振因为本设计对信号频率精确读要求较高,所以使用240赫兹有源晶振,通过分频得到各分频信号。键盘控制电路如图34。123456ABCD654321DCBATITLENUMBERREVISIONSIZEBDATE19JUN2006SHEETOFFILEHSHEET2DDBDRAWNBYIO1IO2IO3IO4IO/GCK15IO/GCK26IO/GCK37IO8IO9IO35IO36IO37IO38IO/GSR39IO/GTS240IO/GTS142IO43IO44IO11IO12IO13IO14IO18IO19IO20IO22IO24IO25IO26IO27IO28IO29IO33IO34TCK17TDI15TMS16TDO30VCCINT21GND10UXC95727PC44C4412345671098SM212345671098SM312345671098SM412345671098SM5EEEEDDDDT2T3T4T5CCCCGGGGFFFFT2T3T4T5AAAABBBB12345671098SM612345671098SM712345671098SM812345671098SM912345671098SM1R1311KR1331KR1351KR1371KR1391KR1411KR1431KPNP1PNP2PNP3PNP4PNP5PNP6PNP7BG1019012BG1029012BG1039012BG1049012BG1059012BG1069012BG1079012T4T5T6T7BG1099013BG1109013BG1119013BG1129013R1091KR1101KR1111KR1121KA4A5A6A7B7R1311KR1311KR1311KR1311KR1311KR1311KR1311KABCDEFGVCCK55K44K33K22K00K11KEYH2KEYH1KEYH0R510KR410KVCC1GND2TCK3TDO4TDI5TMS6J3XJTAGGNDTCKTDOTDITMSVCCNC1GND2VCC4OUT3U5240HZVCCVCCTMSTDOTDITCKVCCT3BG1129013R1121KA3T2BG1129013R1121KA2T9BG1129013R1121KA9T1BG1129013R1121KA1T8BG1129013R1121KA8GFT1ABEDT1CGFT6ABEDT6CEDT7CEDT8CEDT9CBAT9FGBAT8FGBAT7FG图34键盘控制电路键盘控制电路的按键采用行列对应端口接通来实现信号输入,例如当K0按下时,芯片的管脚1和管脚3接通。K0为计价器启动键START,K1为清零键CLR,K2为等待信号,K3为公里脉冲,K4、K5为分钟和小时的调节按键。数码管显示驱动电路如图35。通过三极管9012对基极电流的放大使数码管A、B、C、D、E、F、G各个显示段点亮,各个显示段则由CX9572输出不同的数值码,来组成不同数字。LED的工作电流在810毫安,通过计算R131选择1K电阻排。123456ABCD654321DCBATITLENUMBERREVISIONSIZEBDATE19JUN2006SHEETOFFILEHSHEET2DDBDRAWNBYIO1IO2IO3IO4IO/GCK15IO/GCK26IO/GCK37IO8IO9IO35IO36IO37IO38IO/GSR39IO/GTS240IO/GTS142IO43IO44IO11IO12IO13IO14IO18IO19IO20IO22IO24IO25IO26IO27IO28IO29IO33IO34TCK17TDI15TMS16TDO30VCCINT21GND10UXC95727PC44C4412345671098SM212345671098SM312345671098SM412345671098SM5EEEEDDDDT2T3T4T5CCCCGGGGFFFFT2T3T4T5AAAABBBB12345671098SM612345671098SM712345671098SM812345671098SM912345671098SM1R1311KR1331KR1351KR1371KR1391KR1411KR1431KPNP1PNP2PNP3PNP4PNP5PNP6PNP7BG1019012BG1029012BG1039012BG1049012BG1059012BG1069012BG1079012T4T5T6T7BG1099013BG1109013BG1119013BG1129013R1091KR1101KR1111KR1121KA4A5A6A7B7R1311KR1311KR1311KR1311KR1311KR1311KR1311KABCDEFGVCCK55K44K33K22K00K11KEYH2KEYH1KEYH0R510KR410KVCC1GND2TCK3TDO4TDI5TMS6J3XJTAGGNDTCKTDOTDITMSVCCNC1GND2VCC4OUT3U5240HZVCCVCCTMSTDOTDITCKVCCT3BG1129013R1121KA3T2BG1129013R1121KA2T9BG1129013R1121KA9T1BG1129013R1121KA1T8BG1129013R1121KA8GFT1ABEDT1CGFT6ABEDT6CEDT7CEDT8CEDT9CBAT9FGBAT8FGBAT7FG图35数码管段显示驱动电路位选信号驱动电路如图36。123456ABCD654321DCBATITLENUMBERREVISIONSIZEBDATE15JUN2006SHEETOFFILECDOCUMENTSANDSETTINGSHUANG桌桌SHEET2DDBDRAWNBYT4BG1129013R1121KA4图36数码管位选驱动电路(部分)位选信号由A4进入,经9013放大电路放大,点亮对应的数码管。也由CX9572的I/O输出的不同数值来循环扫描点亮数码管。数码管采用共阴极,因此当I/O输出为高电平时数码管点亮。I/O33系统软件设计系统软件总体设计包括四大模块,即分频模块、控制模块、计量模块(含电子钟)和译码显示模块。分频模块对输入脉冲进行分频,得到频率为15HZ、10HZ和1HZ三种频率时钟信号。控制模块是系统的核心部分,对计价器的状态进行控制。计量模块完成钟表计时,出租车计价、计时、计程功能。动态扫描/译码显示模块完成电子钟、计费、计时、计程数据显示。程序设计时将电子钟显示、里程和等待时间显示、计费显示模块的动态扫描功能独立出来,单独设计一个共用的扫描模块,因此将电子钟显示、里程和等待时间显示、计费显示模块各自都分为计数模块和扫描两个模块。331电子钟程序设计电子钟原理图如图37所示。电子钟端口信号图见图38。F1为系统分频模块产生的1S时钟信号。秒计数器分计数器时计数器数码管显示LED数码管位选择信号SCANCLK秒个位秒十位分个位分十位时个位时十位图37电子钟原理图M_ADDH_ADDF1H_ADD信号为小时调整按键输入信号。H_ADD信号有效时,小时数字加1。M_ADD信号为分钟调整按键输入信号。M_ADD信号有效时,分钟数字加1。CLR信号为电子钟清0使能信号。F1SCANCLKCLRH_ADDM_ADDS1H0F1SCANCLKCLRH_ADDM_ADDM0M1图38电子钟端口信号S0H1S0S1M0M1H0H1SCANCLK信号为LED数码管的动态扫描信号。电子钟程序设计时主要是1秒脉冲的累加,分别设秒低位、秒高位、分低位、分高位、小时低位和小时高位,我们定义6个4位的信号分别代表电子钟的各位S0、S1、M0、M1、H0和H1。当S0计到9时则S1加1,当S0和S1分别为9和5时,则M0加1,同时S0、S1清0。分钟和小时位也是同样的道理,当M0计到9时则M1加1,当M0和M1分别为9和5时,则H0加1,同时M0、M1清0。小时位在累加到12时则清0,在累加时同时还要判断调节信号(H_ADD、M_ADD)是否为0,不为0时则为电子钟调节,调节信号每来一个上升沿,对应的分或小时加1。电子钟程序框图见图39所示。332计价部分程序设计系统分频模块产生15HZ、10HZ和1HZ三种频率时钟信号。见系统仿真图。整个计费过程可以归总到一个流程图中,设定K0为计价器启动START键。租车在载客期间的行使状态,K0判断载客的开始与结束。K2为等待信号STOP_WAIT,K2为1为等待状态,为0为行使状态。用K0判断出当开始工作时,计费器要循环判断是否有传感器脉冲和等待信号,当一直有传感器脉冲时计费器要累加脉冲数当100米时发送一个里程信号,同时里程信号也要不断累加,当累加到1公里时,显示的里程和金额同时加F1上升沿秒信号累加S09S11且S0清0M09M11且M0清0M1USEIEEESTD_LOGIC_1164ALLUSEIEEES

温馨提示

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

评论

0/150

提交评论