出租车自动计费器EDA设计--电子毕业论文.doc
出租车计费器设计沈阳工程学院课程设计任务书课程设计题目:出租车自动计费器EDA设计 系 别 自控系 班级 电子本071 学生姓名 王成成 学号 2007310111 指导教师 尹常永 职称 教 授 课程设计进行地点: 实训F213 任 务 下 达 时 间: 2010 年 06 月 17 日起止日期:2010年06 月21 日起至2010年07 月02 日止教研室主任 田景贺 2010年 06 月 17日批准21以下内容根据各专业特点自行确定(如条件、资料、内容、任务、进度安排及要求等):1.设计主要内容及要求出租车自动计价器EDA设计1)简要说明 用EDA软件设计一个出租车自动计价器。完成出租车计价计数。2)任务和要求设计一个出租车计价器,该计价器的计费系统:行程3公里内,且等待累计时间2分钟内,起步费为10元;3公里外以每公里1.6元计费,等待累计时间2分钟外,以每分钟1.5元计费。并能显示行驶公里数、等待累计时间、总费用。设计指标如下:计价范围:0999.9元计价分辨率为:0.1元计程范围:0-99公里计程分辨率:1公里。计时范围:0-59秒计时分辨率:1分。要给出时钟信号,等待信号,公里脉冲,复位端,和相应的显示。分别设计分频模块,控制模块,计量模块,译码和动态扫描显示模块。显示通过数码管显示。3)训练目标具备硬件编程语言VHDL设计数字系统的初步能力,熟悉开发环境和流程,掌握技术方法。2.对设计说明书、论文撰写内容、格式、字数的要求1)课程设计说明书(论文)是体现和总结课程设计成果的载体,一般不应少于3000字。2)学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计说明书(论文)的结构及各部分内容要求可参照沈阳工程学院毕业设计(论文)撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。3)说明书(论文)手写或打印均可。手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时按沈阳工程学院毕业设计(论文)撰写规范的要求进行打印。4)课程设计说明书(论文)装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。3.时间进度安排;顺序阶段日期计 划 完 成 内 容备注106.2106.23选题,搜集资料,熟悉设计环境206.2406.28调试程序306.28-06.29仿真程序 406.30-07.01撰写课程设计说明书(论文)507.02答辩摘 要 随着微电子技术和计算机的飞速发展与进步,使得电子系统的设计和应用进入了一个全新时代。传统的手工设计过程正在被先进的电子设计自动化(EDA)技术所取代。目前EDA技术已经成为支撑现代电子设计的通用平台,并且逐步向支持系统级设计发展。只有以硬件描述语言(HDL)和逻辑综合为基础的自顶向下的设计方法才能满足日趋复杂的数字系统设计需求。出租车行业的逐步发展,对出租车计费器的要求也越来越高,用户不仅要求计费器性能稳定,计费准确有防作弊功能;而且由于油价的不稳定因素,计费系统需要经常调整,因此用户要求计费器能在不改变硬件的情况下,方便修改计费系统.该系统利用VHDL语言,它可以利用数字电路与系统的描述、仿真和自动设计,并以MAX+PLUS软件作为开发平台,设计了出租车计费器系统程序并进行了程序仿真。使其实现计费以及预置和模拟汽车启动、停止、暂停等功能,并动态扫描显示车费数目。关键词 计费器,VHDLAbstractMicroelectronics and computer technology along with the rapid development and progress, making the design of electronic systems and applications have entered a new era. The traditional manual design process is being advanced electronic design automation (EDA) technology to replace. EDA is currently supporting modern technology has become the universal platform for electronic design, and step by step to support the development of system-level design. Only to hardware description language (HDL) and logic synthesis-based top-down design methodology to meet the increasingly complex needs of digital system design. The progressive development of the taxi industry, the taxi meter is getting higher and higher requirements, the user requires not only the performance of the stability of billing, billing and accurate anti-cheat functions; and as a result of the instability in oil prices, billing system the need for regular adjustment of the meter so that users can request not to change the hardware to facilitate the billing system modifications. The system is the use of VHDL language, it can make use of digital circuits and system description, simulation and automatic design, and MAX + PLUS software as a development platform designed billing system procedures taxi and carried out a simulation program. To the achievement of pre-billing and simulation, as well as car to start, stop, pause and other functions, and dynamic scan shows the number of fares.Key Words :charge machine,VHDL 目 录摘 要IAbstractII1 引言11.1课题的意义11.2课程设计的基本要求11.3 本设计的基本原理描述11.4程设计的主要工作内容和结构安排21.5 EDA设计技术的发展史21.5.1 EDA设计技术的主要内容31.5.2 EDA设计技术的基本特征32 系统设计52.1本课程设计的基本方案52.2 层次设计的方案62.2.1 分频模块的设计62.2.2 计量模块的设计62.2.3 译码模块的设计62.3计费器电路的顶层设计和仿真62.3.1出租车自动记费系统的主体电路设计及仿真62.3.2 扫描显示电路设计及仿真103 出租车计费器顶层电路的设计和仿真16结 论17致 谢18参考文献19附 录201 引言1.1课题的意义随着电子技术的发展,目前数字系统的设计科技直接面向用户需求,根据系统的行为和功能要求,自顶向下地逐层完成相应的描述、综合、优化、仿真与验证,直至对器件的配置/编程;这种在系统编程技术(ISP)的设计方法,可以大大地缩短系统的开发周期.而由美国国防部开发的VHDL语言已由IEEE标准化,并成为国际上通用的硬件描述语言.计费系统在各大,中城市出租车使用中越来越广泛.针对现有计费系统通用性差的缺陷,采用VHDL语言可以开发出租车计费系统:该计费系统的可靠性高,成本低,通用性强.该系统在不改变硬件电路的前提下,具有可以重建系统的功能:采用完全相同电路结构,只要根据各地区的需求在VHDL程序中设置个参数,就可以适应各地区出租车不同计费标准的需要,还可根据各地区需求增加其他功能.1.2课程设计的基本要求设计一个出租车计价器,该计价器的记费系统:车起步开始计费。首先显示起步价(首次设计起步费为10.0元),车在行驶3 km以内,等待累计时间3分钟内,只收起步价10.0元。车行驶超过3 km后,按每公里1.6元计费(在10.0元基础上每行驶1 km车费加1.6元),车费依次累加。等待累计时间超过2分钟,按每分钟1元计费(在10.0元基础上每等待1分钟加1.5元),车费依次累加。并且能显示行驶公里数,等待累积时间,总费用.用两位数码管显示总里程,最大为99公里;用两位数码管显示等待时间,最大值为59min.总费用=起步费+(里程-3 km)*里程单价+等待时间*等待单价1.3 本设计的基本原理描述考虑到目前电子产品的微型化以及模块化,该系统以CPLD芯片为核心硬件,主要采用EDA(电子设计自动化)技术通过其特有的VHDL硬件描述语言对其进行程序编写,以软件设计实现对外界数据的采集反馈来完成其主要的计价,计程,计时功能,并且见所需要的数据信息结合硬件设备想外围电路给予输出.各部分主要功能包括:信号输入模块,数据模块(将记费模块输出的车费和路程转换成4位的十进制数据),译码/动态扫描模块将路程与费用的数值译码后用动态扫描的方式驱动译码管;数码管显示模块将公里数,累计等待时间和记费金额均用数码管显示。1.4程设计的主要工作内容和结构安排本文主要研究的是出租车计费系统中各个模块的设计,并为后续研究奠定基础。本文的章节结构如下:第一章绪论,其中介绍了课题背景,语音识别的发展与现状,以及语音识别的分类方法。第二章对计费器的原理及实现进行了深入的研究,其中包括时间模块,计费模块,计程模块三大部分等。本文最后为结论。1.5 EDA设计技术的发展史EDA技术伴随着计算机,集成电路,电子系统设计的发展,经历了计算机辅助设计(Computer-Aided Design, CAD),计算机辅助工程设计(Computer-Aided Engineering Design,CAED)和电子设计自动化(EDA)3个发展阶段。(1)20世纪70年代的计算机辅助设计(CAD)阶段早期的电子系统硬件设计采用的是分立元件,随着集成电路的出现和应用,硬件设计进入到大量选用中小规模标准集成电路阶段。人们将这些器件焊接在电路板上,做成初级电子系统,对电子系统的调试是在组装好的印刷电路板(Printed Circuit Board,PCB)上进行的。由于设计师对图形符号使用数量有限,传统的手工布图方法无法满足产品复杂性的要求,更不能满足工作效率的要求。这时,人们开始将产品设计过程中高度重复性的繁杂劳动,如布图布线工作,用二维图形编辑与分析的CAD工具替代,最具代表性的产品就是美国Accel公司开发的Tango布线软件。由于PCB布图布线工具受到计算机工作平台的制约,其支持的设计工作有限且性能比较差。20世纪70年代,可以说是EDA技术发展的初期。(2)20世纪80年代的计算机辅助工程设计(CAED)阶段初级阶段的硬件设计是用大量不同型号的标准芯片实现电子系统设计的。随着微电子工艺的发展,相继出现了集成上万只晶体管的微处理器,集成几十万直到上百万存储单元的随机存储器和只读存储器。此外,支持定制单元电路设计的硅编辑,掩模编程的门阵列,如标准单元的半定制设计方法以及可编程逻辑器件(PAL 器件和GAL器件)等一系列微结构和微电子学的研究成果都为电子系统的设计提供了新天地。因此可以用少数几种通用的标准芯片实现电子系统的设计。(3)20世纪90年代电子设计自动化(EDA)阶段20世纪90年代,设计师逐步从使用硬件转向设计硬件,从单个电子产品开发转向系统级电子产品开发片上系统(SOC)。因此EDA工具是以系统级设计为核心,包括系统行为级描述与结构综合,系统仿真与测试验证,系统划分与指标分配,系统决策与文件生成等一整套的电子设计自动化工具。1.5.1 EDA设计技术的主要内容如果把EDA的主要内容和传统绘画过程相比较,那么在开始绘画之前,我们必须准备好纸和笔墨,这里的白纸就相当于我们的设计载体大规模可编程逻辑器件;绘画所使用的笔墨就好像是我们的软件开发工具;绘画的方式相当于我们的输入方式。由此可见,EDA技术主要包括三部分的内容:大规模可编程逻辑器件(白纸);软件开发工具(笔墨);输入方式(方式)。1.5.2 EDA设计技术的基本特征一般来说,EDA设计技术就是指以计算机为工作平台,以EDA软件工具为开发环境,以硬件描述语言为设计语言,以可编程逻辑器件为实验载体,以ASIC和SOC芯片为设计目标,以电子系统设计为应用方向的电子产品自动化设计过程。通常,EDA设计技术的基本特征主要包括以下几方面:(1)自顶向下的设计方法传统的硬件电路设计中常常采用自底向上的设计方法,它首先用来定义设计系统的子模块,同时还进行子模块的具体设计,然后再根据设计的总体要求,将各个功能子模块合成,以完成硬件的总体设计。随着数字系统规模的不断扩大,自顶向下的设计方法由于其独特的优越性,从而在各种设计方法中脱颖而出,成为目前数字系统设计中常用的设计方法。自顶向下的设计方法实际上就是基于芯片的系统设计方法,它在功能划分,任务分配和设计管理上等方面具有一定的优越性。与传统的自底向上的设计方法比,自顶向下的设计方法有助于在设计的早期发现结构设计中的错误,提高设计的一次成功率。EDA技术的基本特征之一是采用自顶向下的设计方法。自顶向下的设计方法就是从设计的总体要求出发,自顶向下的将设计划分为不同的功能子模块,每个功能子模块完成一定的逻辑功能。这种设计方法首先设计顶层模块,进行顶层模块的设计,然后将顶层模块中逻辑功能划分成不同的功能子模块,再进行功能子模块的详细设计。(2)硬件描述语言随着大规模专用集成电路(ASIC)的开发和研制,为了提高开发的效率,增加已有开发成果的可继承性以及缩短开发时间,各ASIC研制和生产厂家相继开发了用于各自目的的硬件描述语言,采用硬件描述语言进行电子系统设计是当前发展的趋势。所谓硬件描述语言就是指对硬件电路进行行为描述,寄存器传输描述或者结构化描述的一种新兴语言,它能比传统的电路原理图更有效的表示硬件电路的特性。硬件描述语言的特征是科技借鉴高级程序语言设计的具体方法,从而可以对硬件电路的行为和功能结构进行高度抽象化的描述。硬件描述语言也可以对硬件电路的设计进行不同层次,不同领域的模块验证和综合优化等处理,从而实现硬件电路设计的高度自动化。采用硬件描述语言来设计硬件电路可以大大节省人力和物力,缩短研制周期,适应于小批量产品开发,也适用于大批量产品的样品研制,因而得到了广泛的应用。在目前的电子设计中,设计人员采用的最有代表性的硬件描述语言是美国国防部开发的VHDL语言。(3)逻辑综合和优化功能 逻辑综合功能是将较高层次的抽象描述转化到较低级别抽象的一种方法,简单地说,就是将设计的描述转化成底层电路表示。在进行综合时,综合程序将设计描述转化为数据结构,将设计的行为描述转化为寄存器传输级(RTL)描述,然后将RTL描述转换到门级。从RTL描述转换到门级通常需要3步:首先将RTL描述转化为布尔描述,然后通过一个优化过程将布尔描述转化成优化的布尔描述,最后将优化的布尔描述映射到门级,即生成网表或一种逻辑方程。 优化功能是指根据布尔方程功能等效的原则,利用逻辑综合生成的结果采用更小更快的综合结果代替一些复杂的单元,然后根据制定的目标可以映射成新的网表或者一组逻辑方程。设计人员经常采用的一种优化方法是先将非优化的布尔描述转换成最低级描述(pla格式),然后再采用pla优化技术对这种描述进行优化,最后再尝试使用共享公共项去减少逻辑门的个数。优化的作用是将电路设计的时延缩短到最小和有效利用资源。几乎所有的EDA综合工具都可以利用约束条件对电路设计进行优化。一般情况下,常用约束条件主要包括时间约束和面积约束。(4)开放性和标准化 一般来说,框架是一种软件平台结构,它的主要功能是为EDA工具提供相应的操作环境。框架的关键在于提供与硬件平台无关的图形用户界面,工具之间的通信,设计数据和设计流程的管理等,另外框架还包括各种与数据库相关的服务项目。 任何一个EDA工具系统只要建立了一个符合标准的开放式框架结构,那么它就可以接纳其他厂商的EDA工具一起进行相应的设计工作。作为一套使用和配置EDA工具软件包的规范,框架可以实现各种EDA工具间的优化组合,并集成在一个易于管理的统一的环境之下,目的是实现资源共享。 随着硬件描述语言等设计数据格式的逐步标准化,不同设计风格和应用的要求导致各具特色的EDA工具被集成在同一个工作站上,从而使EDA框架标准化。如今,新的EDA工具系统不仅能够实现高层次的自动综合逻辑和测试码的生成,而且还可以用各个仿真器对同一设计进行协同仿真,进一步提高EDA系统的工作效率和设计的正确性。2 系统设计2.1本课程设计的基本方案CPLD具有用户可编程,时序可预测,速度高和容易使用等优点.而且CPLD的可编程性,使修改和产品升级变的方便.用户可以根据原理图或硬件面熟语言自由地设计一个数字系统.然后通过软件仿真事先验证设计的正确性.采用VHDL语言进行软件编程,利用MAX+PLUS软件平台进行设计输入,项目处理,项目效验及器件编程等.设计出入可以采用原理图输入,文本输入,波形输入或第三方EDA工具形成. 根据层次化设计理论,该设计问题自顶向下可分为分频模块,控制模块,计量模块,译码和动态扫描显示模块。时钟信号分频器等待信号公里脉冲计费/复位控制器计时计程译 码 扫 描显 示计费FPGA 主体电路图2.1 出租车自动计费器系统框图2.2 层次设计的方案2.2.1 分频模块的设计分频模块对频率为240HZ的输入脉冲进行分频,得到的频率为16HZ、15HZ和1HZ的3中频率。该模块产生频率信号用于计费,每个1HZ脉冲为0.1元计费控制,15HZ信号为1.5元的计费控制,16HZ信号为1.6元计费控制。2.2.2 计量模块的设计 计量控制模块是出租车自动计费器系统的主题部分,该模块主要完成等待计时功能,计价功能,计程功能,同时产生3分钟的等待计时使能控制信号 en1、行程3公里外的使能控制信号en0。其中计价功能主要完成的任务是:行程3公里内,切等待累计在3分钟内,起步费为10元;3公里外以每公里1.6元计费,等待累计时间3分钟外以每分钟1元计费。计时功能主要完成的任务是:计算乘客的等待累计时间,计时器的量程为59分,满量自动归零。计程功能主要完成的任务是:计算乘客所行驶的公里数,计程器的量程为99公里,满量自动归零。2.2.3 译码模块的设计该模块经过8选1选择器将计费器数据、计时数据、计程数据动态显示输出。其中计费数据送入显示译码模块进行译码,最后送至以百元、十元、元、角为单位对应的数码管上显示,最大显示为999.9元;计时数据送入显示译码模块进行译码,最后送至一分为单位对应的数码管上显示,最大显示为59分;计程数据送入显示译码模块进行译码,最后送至以公里为单位的数码管上显示,最大显示为99公里。2.3计费器电路的顶层设计和仿真2.3.1出租车自动记费系统的主体电路设计及仿真根据上述各个模块功能描述,该电路的核心部分就是记数分频电路,通过VHDL语言的顺序语句IF-THEN-ELSE根据一个或一组条件来选择某一特定的执行通道,生成计费数据,计时数据和里程数据具体程序如下:LIBRARY IEEE;USE IEEE. std_logic_1164.all;USE IEEE. std_logic_unsigned.all;USE IEEE. std_logic_arith.all;ENTITY taxi isport (clk_240 :in std_logic; start :in std_logic; stop :in std_logic; fin :in std_logic; cha3,cha2,cha1,cha0:out std_logic_vector(3 downto 0); km1,km0:out std_logic_vector(3 downto 0); min1,min0:out std_logic_vector(3 downto 0);end taxi;architecture behav of taxi issignal f_15,f_16,f_1:std_logic;signal q_15:integer range 0 to 15; signal q_16:integer range 0 to 14;signal q_1:integer range 0 to 239;signal w:integer range 0 to 59;signal c3,c2,c1,c0:std_logic_vector(3 downto 0);signal k1,k0:std_logic_vector(3 downto 0);signal m1:std_logic_vector(2 downto 0);signal m0:std_logic_vector(3 downto 0);signal en1,en0,f:std_logic;beginfeipin:process(clk_240,start)begin if clk_240'event and clk_240='1'then if start='0' thenq_15<=0;q_16<=0;f_15<='0'f_16<='0'f_1<='0'f<='0' else if q_15=15 then q_15<=0;f_15<='1' else q_15<=q_15+1;f_15<='0' end if;if q_16=14 then q_16<=0;f_16<='1' else q_16<=q_16+1;f_16<='0'end if; if q_1=239 then q_1<=0;f_1<='1' else q_1<=q_1+1;f_1<='0'end if; if en1='1'then f<=f_15; elsif en0='1'then f<=f_16; else f<='0' end if; end if;end if; end process;main:process(f_1)begin if f_1'event and f_1='1'then if start='0'thenw<=0;en1<='0'en0<='0'm1<="000"m0<="0000"k1<="0000"k0<="0000" elsif stop='1'then if w=59 then w<=0; if m0="1001"then m0<="0000" if m1<="101"then m1<="000" else m1<=m1+1; end if; else m0<=m0+1; end if; if m1&m0>"0000010"then en1<='1' else en1<='0' end if; else w<=w+1;en1<='0' end if; elsif fin='1'then if k0="1001"then k0<="0000" if k1="1001"then k1<="0000" else k1<=k1+1; end if; else k0<=k0+1; end if; if k1&k0>"00000010"then en0<='1' else en0<='0' end if; else en1<='0'en0<='0' end if;cha3<=c3;cha2<=c2;cha1<=c1;cha0<=c0;km1<=k1;km0<=k0;min1<='0'&m1;min0<=m0; end if;end process main;process(f,start)begin if start='0'then c3<="0000"c2<="0001"c1<="0000"c0<="0000" elsif f'event and f='1'then if c0="1001"then c0<="0000" if c1="1001"then c1<="0000" if c2="1001"then c2<="0000"if c3="1001"then c3<="0000" else c3<=c3+1; end if; else c2<=c2+1; end if; else c1<=c1+1; end if;else c0<=c0+1;end if; end if;end process;end behave;该源程序包括3个进程模块.feipin进程对频率为240HZ的输入脉冲进行分频,得到的频率为16HZ,15HZ和1HZ的3种记费频率信号,供main进程和jifei进程进行记费,记时,记程之用;main进程完成等待记时功能,记程功能,该模块将等待时间和行驶公里数变换成脉冲个数计算,同时产生2分钟的等待记时使能控制信号en1,行驶3公里外的使能控制信号en0;jifei进程将起步价10元预先固定在电路中,通过对记费脉冲个数的统计计算出整个费用数据.源程序中输入信号fin是汽车传感器提供的距离脉冲信号:start为汽车计价启动信号,当start=1时,表示开始计费(高电平有效),此时将计价器计费数据初值100(即10.0元)送入,计费信号变量(cha1cha2cha3cha0=0080),里程数清零(km1km0=00),计时记数器清零(min1min0=00);stop为汽车停止等待信号(高电平有效),当stop=1时,表示停车等待状态,并开始等待计时计费.其部分仿真输出波形如图2.2所示:图2.2 出租车计费器系统的仿真输出波形图2.3 出租车自动计费器系统的主体FPGA电路元件符号2.3.2 扫描显示电路设计及仿真该模块包含8选1选择器,模8计数器,七段数码显示译码器的3个子模块,其VHDL源程序和仿真输出如下模8计数器的se的VHDL源程序和仿真library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity se isport(clk: in std_logic; a: out std_logic_vector(2 downto 0);end se;architecture behav of se isbegin process(clk) variable b: std_logic_vector(2 downto 0); begin if(clk'event and clk='1')then if(b="111") then b:="000" else b:=b+1; end if; end if; a<=b; end process;end behav;源程序中输入信号clk为系统输入的240HZ基准时钟,输出为3位二进制编码,其仿真输出的如图 2.4所示:图2.4 模8计数器se仿真输出波形 图2.5 计数器原件图8选1选择器mux8_1的VHDL源程序和仿真library ieee;use ieee.std_logic_1164.all;entity mux8_1 isport(c: in std_logic_vector(2 downto 0); dp: out std_logic; a1,a2,a3,a4,b1,b2,t1,t2:in std_logic_vector(3 downto 0); d:out std_logic_vector(3 downto 0);end mux8_1;architecture behav of mux8_1 isbegin process(c,a1,a2,a3,a4,b1,b2,t1,t2) variable comb: std_logic_vector(2 downto 0); begin comb:=c; case comb is when"000"=>d<=a1; dp<='0' when"001"=>d<=a2; dp<='0' when"010"=>d<=a3; dp<='1' when"011"=>d<=a4; dp<='0' when"100"=>d<=b1; dp<='0' when"101"=>d<=b2; dp<='0' when"110"=>d<=t1; dp<='0' when"111"=>d<=t2; dp<='0' when others=>null; end case; end process; end behav;源程序中输入信号c2.0为系统选择输入,a1a2a3a4为计费BCD码输入b1b2为公里数BCD输入,t1t2为计时时间的BCD码输出,d 为4位BCD码输出, pd为小数点指示信号(仅计费数据输出时有一位小数),其仿真输出波形和元件符号如图2.6所示:图2.6 8选1选择图2.6 计费输出波形器mux8_1仿真输出波形图2.6选择器mux8_1图2.7 8选1选择器mux8_1原件图七段数码显示译码器VHDL的源程序和仿真library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity di_led isport(d:in std_logic_vector(3 downto 0);q:out std_logic_vector(6 downto 0);end di_led;architecture behav of di_led isbegin process(d) begin case d is when"0000"=>q<="0111111"when"0001"=>q<="0000110" when"0010"=>q<="1011011" when"0011"=>q<="1001111" when"0100"=>q<="1100110" when"0101"=>q<="1101101" when"0110"=>q<="1111101" when"0111"=>q<="0100111" when"1000"=>q<="1111111" when others=>q<="1101111"end case;end process;end behav;源程序中输入信号d3.0为BCD码输入,q6.0为七段译码输出(高电平有效).其仿真输出的波形