欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数字秒表的设计.doc

    • 资源ID:1038743       资源大小:412KB        全文页数:24页
    • 资源格式: DOC        下载积分:10积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要10积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数字秒表的设计.doc

    1、 谢高松 数字秒表的设计 23 / 23数字秒表的设计目录1 引言11.1 课程设计的目的11.2 课程设计的内容12 EDA、VHDL简介12.1 EDA技术12.2 硬件描述语言VHDL23设计过程43.1 设计规划43.2各模块的原理及其程序43.2.1控制模块53.2.2时基分频模块53.2.3计时模块63.2.4显示模块74系统仿真9结束语13致谢14参考文献15附录161 引言在科技高度发展的今天,集成电路和计算机应用得到了高速发展。尤其是计算机应用的发展。它在人们日常生活已逐渐崭露头角。大多数电子产品多是由计算机电路组成,如:手机、mp3等。而且将来的不久他们的身影将会更频繁的出

    2、现在我们身边。各种家用电器多会实现微电脑技术。电脑各部分在工作时多是一时间为基准的。本文就是基于计算机电路的时钟脉冲信号、状态控制等原理设计出的数字秒表。秒表在很多领域充当一个重要的角色。在各种比赛中对秒表的精确度要求很高,尤其是一些科学实验。他们对时间精确度达到了几纳秒级别。1.1 课程设计的目的本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。在掌握所学的计算机组成与结构课程理论知识时。通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、

    3、解决计算机技术实际问题的能力。通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。1.2 课程设计的内容利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该数字秒表能对0秒59分59.99秒范围进行计时,显示最长时间是59分59秒。计时精度达到10ms。设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。2 EDA、VHDL简介2.1 EDA技术EDA是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术的最新成果而开发出的电子CAD通用软件包,它根据硬件描述语言HDL完成的设计文件,自动完成逻辑编译、化简、

    4、分割、综合、优化、布局布线及仿真,直至完成对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。目前EDA主要辅助进行三个方面的设计工作:IC设计、电子电路设计和PCB设计。没有EDA技术的支持,想要完成超大规模集成电路的设计制造是不可想象的;反过来,生产制造技术的不断进步又必将对EDA技术提出新的要求。2.2 硬件描述语言VHDL VHDL的简介VHDL语言是一种用于电路设计的高级语言。它在80年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言 。但是,由于它在一定程度上满足了当时的设计需求,于是他在1987年成为A I/IEEE的

    5、标准(IEEE STD 1076-1987)。1993年更进一步修订,变得更加完备,成为A I/IEEE的A I/IEEE STD 1076-1993标准。目前,大多数的CAD厂商出品的EDA软件都兼容了这种标准。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076

    6、-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。 VHDL语言的特点VHDL的程序结构特点是将一项工程设计,关于用VHDL和原理图输入进行CPLD/FPGA设计的粗略比较:在设计中,如果采用原理图输入的设计方式是比较直观的。你要设计的是什么,你就直接从库中调出来用就行了。这样比较符合人们的习惯。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。

    7、这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的。(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能

    8、实现。(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。 VHDL的设计流程它主要包括以下几个步骤:1.文本编辑:用任何文本编辑器都可以进行,也可以用专用的HDL编辑环境。通常VHDL文件保存为.vhd文件,Verilog文件保存为.v文件2.功能仿真:将文件调入HDL仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只在布线完成以后,进行时序仿真)3.逻辑综合:将

    9、源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。逻辑综合软件会生成.edf或.edif 的EDA工业标准文件。4.布局布线:将.edf文件调入PLD厂家提供的软件中进行布线,即把设计好的逻辑安放PLD/FPGA内。5.时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。(也叫后仿真) 通常以上过程可以都在PLD/FPGA厂家提供的开发工具。6.器件编程3设计过程3.1 设计规划 本系统设计采用自顶向下的设计方案,系统的整体组装设计原理图如图3-1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。各模块分别完成计时过程的控制功能、计时功能与显

    10、示功能。数字秒表计时控制电路控制状态机计时电路显示电路时基分频电路计数器六十进制计数器扫描电路七段译码器一百进制计数器图 3-1 系统组成框图3.2 各模块的原理及其程序CLRSPCLKOUTPUTENCB10OUTPUTENCB10OUTPUTSEG7.0CB10OUTPUTOUTBCD3.0OUTPUTLED6.0CB10OUTPUTENCB10OUTPUTCOCB10BCD7MULXCOUNTCTRLCB10CLK CO S_1MS3.0 S_10MS3.0CLK S_100MS3.0CLR S_1S3.0EN S_10S3.0M_1MIN3.0M_10MIN3.0HOUR3.0CLKC

    11、LRENS_1MS3.0 S_10MS3.0 OUTBCD3.0S_100MS3.0 S_1S3.0 SEG7.0S_10S3.0M_1MIN3.0M_10MIN3.0HOUR3.0CLRCLK ENSPBCD3.0 LED6.0图3-2系统的整体组装设计原理图本系统设计由控制模块、时基分频模块,计时模块和显示模块四部分组成。各模块实现秒表不同的功能 。图3-2就是整个系统原理图。3.2.1控制模块计时模块的作用是针对计时过程进行控制。计时控制模块可用俩个按钮来完成秒表的启动、停止和复位。部分源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE

    12、IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL IS PORT( CLR,CLK,SP:IN STD_LOGIC; EN :OUT STD_LOGIC);COM:PROCESS(SP,CURRENT_STATE) BEGINEND IF;END PROCESS;END BEHAVE;3.2.2时基分频模块时基分频模块的作用把输入时钟信号变为分频输出信号。源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 IS PORT( CLK: IN

    13、STD_LOGIC; CO : OUT STD_LOGIC);END CB10;ARCHITECTURE ART OF CB10 IS SIGNAL COUNT:STD_LOGIC_VECTOR (3 DOWNTO 0); BEGINPROCESS(CLK)BEGIN IF RISING_EDGE(CLK)THEN IF COUNT=1001THEN COUNT=0000; CO=1; ELSE COUNT=COUNT+1; CO=0; END IF; END IF; END PROCESS;END ART;3.2.3计时模块计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。他是

    14、由四个十进制计数器和俩个六进制计数器构成,其中毫秒位、十毫秒位、秒位和分位采用十进制计数器,十秒位和十分位采用六进制计数器。源程序:.十进制计数器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CDU10 IS PORT( CLK:IN STD_LOGIC; CLR,EN:IN STD_LOGIC; CN :OUT STD_LOGIC; COUNT10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END CDU10;END IF;END IF;END PROCE

    15、SS;END ART;六进制计数器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CDU6 IS END IF;END IF;END PROCESS;END ART;计数器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT IS END ART;3.2.4显示模块计时显示电路的作用是将计时值在LED数码管上显示出来。计时电路产生的值经过BCD七段译码后,驱动LED数

    16、码管。计时显示电路的实现方案采用扫描显示。部分源程序:数据选择器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MULX IS PORT( CLK,CLR,EN:IN STD_LOGIC; S_1MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_10MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_100MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_1S:IN STD_LOGIC_VECTOR(3 DO

    17、WNTO 0); S_10S:IN STD_LOGIC_VECTOR(3 DOWNTO 0); M_1MIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0); M_10MIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0); HOUR:IN STD_LOGIC_VECTOR(3 DOWNTO 0); OUTBCD:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SEG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END MULX;ARCHITECTURE ART OF MULX ISSIGNAL COUNT:STD_LO

    18、GIC_VECTOR(3 DOWNTO 0);END CASE;END IF;END PROCESS;END ART;BCD七段译码器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY BCD7 IS PORT( BCD:IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END BCD7;ARCHITECTURE ART OF BCD7 ISBEGINLED=1111110WHEN BCD =00

    19、00 ELSE0110000WHEN BCD =0001 ELSE1101101WHEN BCD =0010 ELSE1111001WHEN BCD =0011 ELSE0110011WHEN BCD =0100 ELSE1011011WHEN BCD =0101 ELSE1011111WHEN BCD =0110 ELSE1110000WHEN BCD =0111 ELSE1111111WHEN BCD =1000 ELSE1111011WHEN BCD =1001 ELSE0000000;END ART;4 系统仿真(1) 时基分频模块的仿真(如图 4-1所示)图4-1时基分频模块的仿真

    20、分析:CLK为时钟信号的输入 ,CO为分频输出信号。(2) 控制模块的仿真(如图 4-2所示)图4-2控制模块的仿真分析:CLK、CLR和SP为输入信号,EN为输出信号。(3) 计时电路模块的仿真(如图 4-3图4-5所示) 十进制计数器的仿真(如图4-3所示) 六进制计数器的仿真(如图4-4所示) 计数器的仿真(如图4-5所示)图4-3十进制计数器的仿真图4-4 六进制计数器的仿真图图4-5计数器的仿真图 分析:clk为时钟脉冲脉冲,s_1ms是毫秒计数值,s_10ms是十毫秒计数器,s_100ms是百毫秒计数器,s_1s是秒计数器,s_10s是十秒计数器,m_1min是分计数器,s_10m

    21、in是十分计数器,hour是小时计数器。它们均为输入信号。每来两个时钟脉冲,s_1ms加1,当s_1ms满十时,s_10ms加1,依次类推,s_10ms满十的时候,s_100ms加1等等作为输出。(4) 显示电路模块的仿真(如图 4-6图4-7所示) 数据选择器的仿真(如图 4-6所示) BCD七段译码器驱动器的仿真(如图 4-7所示)图4-6 数据选择器的仿真图图4-7 BCD七段译码器的仿真图分析:bcd为时钟脉冲输入信号,led是输出信号,如图所示:当输出为“1111110”时候,输入为“0000”;当输出为“0110000”时输入“0001”,当输入为“0010”时输出为“110110

    22、1”,当输入为“0011”时输出为“1111001”等等来实现七段译码功能。(5) 数字秒表整个系统的仿真(如图4-8所示)图4-8数字秒表起始工作的仿真图状态仿真图分析:秒表开始从零开始计数,每次增加10ms。工作很正常的进行。结束语开始做设计时总是会犯一些错误,只有经过不停的改错不停的编译得到正确的程序说明了作为软件编程人员是不能粗心大意的,一个程序的质量的高低与你细心与否有着一定的联系。在编程时,我充分使用了结构化的思想,这样程序检查起来也比较方便,调试时也给了我很大方便,只要一个模块一个模块的进行调就可以了,充分体现了结构化编程的优势。在设计中要求我要有耐心和毅力,还要细心,稍有不慎,

    23、一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。在应用VHDL的过程中让我真正领会到了其并行运行与其他软件顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法在数字系统设计中发挥越来越重要的作用。致谢经过快两个星期的紧张工作,我终于完成了我的设计任务设计数字秒表。在这次课程设计中特别感谢肖晓丽老师对我的指导,正是由于她的督促和耐心指导

    24、,我才可以顺利完成这次的设计。锻炼了动手能力,给以后的学习指出了一个方向。参考文献1 谢华生.VHDL数字控制系统设计范例.北京:电子工业出版社,20062 万高明.EDA技术实验与课程设计.长沙:湖南大学出版社,20043黄仁欣.EDA技术实用教程.北京:清华大学出版社,2006附录1. 时基分频模块的源程序(CB10.VHD)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 IS PORT( CLK: IN STD_LOGIC; CO : OUT STD_LOGIC);E

    25、ND CB10;ARCHITECTURE ART OF CB10 IS SIGNAL COUNT:STD_LOGIC_VECTOR (3 DOWNTO 0); BEGINPROCESS(CLK)BEGIN IF RISING_EDGE(CLK)THEN IF COUNT=1001THEN COUNT=0000; CO=1; ELSE COUNT=COUNT+1; COEN=0; IF SP=1THEN NEXT_STATE=S1; ELSE NEXT_STATEEN=1; IF SP=1THEN NEXT_STATE=S1; ELSE NEXT_STATEEN=1; IF SP=1THEN N

    26、EXT_STATE=S3; ELSE NEXT_STATEEN=0; IF SP=1THEN NEXT_STATE=S3; ELSE NEXT_STATE=S0; END IF;END CASE;END PROCESS;SYNCH:PROCESS(clk)BEGIN IF CLR=1THENCURRENT_STATE =S0;ELSIF CLKEVENT AND CLK=1THENCURRENT_STATE=NEXT_STATE;END IF;END PROCESS;END BEHAVE;3. 计时模块的源程序(1) 十进制计数器的源程序(CDU10.VHD)LIBRARY IEEE;USE

    27、IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CDU10 IS PORT( CLK:IN STD_LOGIC; CLR,EN:IN STD_LOGIC; CN :OUT STD_LOGIC; COUNT10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END CDU10;ARCHITECTURE ART OF CDU10 ISSIGNAL SCOUNT10: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN COUNT10=SCOUNT10;PROCESS (CLK,CLR

    28、,EN)BEGIN IF(CLR=1)THENSCOUNT10=0000;CN=0;ELSIF RISING_EDGE(CLK)THENIF(EN=1)THENIF SCOUNT10=1001THENCN=1;SCOUNT10=0000;ELSECN=0;SCOUNT10=SCOUNT10+1;END IF;END IF;END IF;END PROCESS;END ART;(2) 六进制计数器的源程序(CDU6.VDH)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CDU6 IS

    29、 PORT( CLK,CLR,EN:IN STD_LOGIC; CN :OUT STD_LOGIC; COUNT6:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END CDU6;ARCHITECTURE ART OF CDU6 ISSIGNAL SCOUNT6: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN COUNT6=SCOUNT6;PROCESS (CLK,CLR,EN)BEGIN IF(CLR=1)THENSCOUNT6=0000;CN=0;ELSIF RISING_EDGE(CLK) THENIF(EN=1)THENIF SCOUNT6=

    30、0101THENCN=1;SCOUNT6=0000;ELSECN=0;SCOUNT6=SCOUNT6+1;END IF;END IF;END IF;END PROCESS;END ART;(3) 计数器的源程序(COUNT.VHD)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT IS PORT( CLK,CLR,EN:IN STD_LOGIC; S_1MS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); S_10MS:OUT STD_LOGIC_VEC

    31、TOR(3 DOWNTO 0); S_100MS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); S_1S:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); S_10S:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); S_1MIN:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); S_10MIN:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); HOUR:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END COUNT;ARCHITECTURE ART OF COUNT ISCOM

    32、PONENT CDU10PORT( CLK,CLR,EN:IN STD_LOGIC; CN :OUT STD_LOGIC; COUNT10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END COMPONENT CDU10;COMPONENT CDU6PORT( CLK,CLR,EN:IN STD_LOGIC; CN :OUT STD_LOGIC; COUNT6:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END COMPONENT CDU6;SIGNAL A,B,C,D,E,F,G,H:STD_LOGIC;BEGINUL:CDU10 PORT MA

    33、P (CLK,CLR,EN,A,S_1MS);U2:CDU10 PORT MAP (A,CLR,EN,B,S_10MS);U3:CDU10 PORT MAP (B,CLR,EN,C,S_100MS);U4:CDU10 PORT MAP (C,CLR,EN,D,S_1S);U5:CDU6 PORT MAP (D,CLR,EN,E,S_10S);U6:CDU10 PORT MAP (E,CLR,EN,F,S_1MIN);U7:CDU6 PORT MAP (F,CLR,EN,G,S_10MIN);U8:CDU10 PORT MAP (G,CLR,EN,H,HOUR);END ART;4. 显示模块的

    34、源程序(1) 数据选择器的源程序(MULX.VDH)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MULX IS PORT( CLK,CLR,EN:IN STD_LOGIC; S_1MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_10MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_100MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_1S:IN STD_LOGIC_VECTOR(3 DOWNTO 0

    35、); S_10S:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_1MIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0); S_10MIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0); HOUR:IN STD_LOGIC_VECTOR(3 DOWNTO 0); OUTBCD:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SEG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END MULX;ARCHITECTURE ART OF MULX ISSIGNAL COUNT :STD_LOGIN_V

    36、ECTOR(3 DOWNTO 0);BEGINPROCESS (CLK)BEGINIF CLR=1THENCOUNT=1111;ELSIF RISING_EDGE(CLK)THENIF EN =1 THEN COUNT=0000;ELSECOUNTOUTBCD=S_1MS; SEGOUTBCD=S_10MS; SEGOUTBCD=S_100MS; SEGOUTBCD=S_1S; SEGOUTBCD=S_10S; SEGOUTBCD=S_1MIN; SEGOUTBCD=S_10MIN; SEGOUTBCD=S_HUOR; SEGOUTBCD=S_1MS; SEGOUTBCD=S_10MS; SE

    37、GOUTBCD=0000; SEG=00000000;END CASE;END IF;END PROCESS;END ART;(2) BCD七段译码器驱动器的源程序(BCD7.VDH)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY BCD7 IS PORT( BCD:IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END BCD7;ARCHITECTURE ART OF BCD7 ISBEG

    38、INLED=1111110WHEN BCD =0000 ELSE0110000WHEN BCD =0001 ELSE1101101WHEN BCD =0010 ELSE1111001WHEN BCD =0011 ELSE0110011WHEN BCD =0100 ELSE1011011WHEN BCD =0101 ELSE1011111WHEN BCD =0110 ELSE1110000WHEN BCD =0111 ELSE1111111WHEN BCD =1000 ELSE1111011WHEN BCD =1001 ELSE0000000;END ART;5. 顶层设计的源程序(MB.VHD)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_


    注意事项

    本文(数字秒表的设计.doc)为本站会员(星星)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922