基于VHDL的电子秒表的设计_第1页
基于VHDL的电子秒表的设计_第2页
基于VHDL的电子秒表的设计_第3页
基于VHDL的电子秒表的设计_第4页
基于VHDL的电子秒表的设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、EDA技术及应用课程设计报告题 目:基于VHDL的电子秒表的设计院(系):机电与自动化学院精选专业班级: 学生姓名: 学 号:指导教师:2015 年 1月乞日至2015年L月9日华中科技大学武昌分校制1目录1 课程设计的目的及主要内容.2 设计模块2.1系统总体框图及功能设计2.1.1 系统总体框图.2.1.2 模块功能设计.2.2六十进制计数器2.2.1 六十进制计数器设计思路2.2.2 六十进制计数器仿真结果2.3 二十四进制计数器 .2.3.1 二十四进制计数器设计思路.42.3.2 二十四进制计数器仿真结果.52.4 分频器 .2.4.1 分频器设计思路 .62.4.2 分频器仿真结果

2、 .72.5 LED 显示2.5.1 LED 显示模块设计思路.2.5.2 LED 显示模块仿真结果.102.6 顶层仿真113 课程设计总结124 主要参考资料131课程设计目的及主要内容(1) 运用数字系统的设计方法进行数字系统设计;(2) 能进行较复杂的数字系统设计;(3)数字中的工作原理,工作流程图与原理方框图,自顶向下的数字系统设计方法。具体内容:设计一个电子秒表,给定时钟信号为256HZ要求系统达到以下功能: (1)用6个数码管分别显示时、分、秒,计时范围为:00: 00 :计时精度是1s。(3)具有启/停开关,复位开关,可以在任何情况下使用。00 23: 59 : 59。2.1系

3、统总体框图及功能设计2.1.1系统总体框图电子秒表的基本工作原理就是不断输出连续脉冲给加法计数器, 通过译码器来显示它所记忆的脉冲周期个数。根据系统设计要求,系统的底层设计主要由六十进制计数器模块、 制计数器模块、分频模块、LED显示模块组成。系统顶层设计图如图加法计数器二十四进1所示。图1系统顶层设计图3图1中左边为三个输入信号en, 号和复位开关。中间从上至下依次为 右边是clocki和输出信号wei3.O,elk,reset,分别为启动/停止开关,时钟信 count24,count60,count60,fenpinqi 。led6.02.1.2模块功能设计二十四进制计数器模块、分频模块执

4、行计时本系统由六十进制计数器模块、功能,输入信号是256 Hz,通过分频后为1hz,时钟信号是1 Hz作为秒表的秒输 入,秒为60进制计数器,分也为60进制计数器,小时采用二十四进制计数器, 各级进位作为高位的使能控制。2.2六十进制计数器2.2.1六十进制计数器设计思路设计一个八位的六十进制计数器模块,输入信号为 en、reset、clk,分别为 使能、复位和时钟信号,输出信号为 qa30、qb30、rco,分别为低4位 输出、高4位输出和进位。r涵岡2召rRrsetclkFC*图2六十进制计数器示意图六十进制计数器模块部分VHDL源程序如下。LIBRARY ieee;USE ieee.st

5、d_logic_1164.ALL;USE ieee.std_logic_ un sig ned.ALL;ENTITY cou nt60 ISP ORT( en ,Reset,clk: in STD_LOGIC;qa: out STD_LOGIC_VECTOR(3 DOWNTO 0);qb: out STD_LOGIC_VECTOR(3 DOWNTO 0); rco: OUT STD_LOGIC);END cou nt60;ARCHITECTURE a OF coun t60 ISBEGINp rocess(clk)variable tma: STD_LOGIC_VECTOR(3 DOWNTO

6、0); variable tmb: STD_LOGIC_VECTOR(3 DOWNTO 0); begi nIf Reset =0then tma:=0000; tmb:=0000;elsif clkeve nt and clk=1 the nif en=1 thenrco=tmb(2)a nd tmb(0)a nd tma(3)a nd tma(O); if tma=1001 then tma:=0000;if tmb=0101 then tmb:=0000;else tmb:=tmb+1;end if;else tma:=tma+1;end if;end if;end if;qav=tma

7、;qbv=tmb;end p rocess;END a;2.2.2六十进制计数器仿真结果六十进制计数器模块部分仿真结果如下图3。jJJPzr-Er I 20 91 ns kfer.d 3 -KnsSb止ErdASAT 15DpCdkA 1ITCbA歌Q 1*h 日*A 1电tf J2AlTse:A阳 Naer TmE EerLO t TIS2D .p KT-umxiRnnrrr-RrLrTLnrTLaaRRL7njLmo0BITHT3It4图3六十进制计数器仿真波形图CLK :时钟信号RST :复位信号低电平清零En :置数端低电平不让它继续计数qb、qa:分别为输出数的十位个位,qb取值范围

8、为0-5,qa取值范围为0-9rco :进位信号,当 qb=5,qa=0, rco=0 时,clk 上升沿来到后,qb=O, qa=0, rco=1 ; 当 qb=5,qa=0, rco=1 时,clk 上升沿来到后,qb=O, qa=O, rco=O。2.3二十四进制计数器231二十四进制计数器设计思路en、reset设计一个八位的二十四进制计数器模块,输入信号为en、reset、clk,分别为使能、复位和时钟信号,输出信号为 qa30、qb30,分别为低4位 输出、高4位输出。盗应1!i111i:=lk图4二十四进制计数器示意图二十四进制计数器模块部分VHDL源程序如下。LIBRARY i

9、eee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_ un sig ned.ALL;ENTITY cou nt24 ISP ORT( en ,Reset,clk: in STD_LOGIC;qa: out STD_LOGIC_VECTOR(3 DOWNTO 0); qb: out STD_LOGIC_VECTOR(3 DOWNTO 0);END cou nt24;ARCHITECTURE a1 OF cou nt24 ISBEGINP rocess(clk)variable tma: STD_LOGIC_VECTOR(3 DOWNTO 0);

10、variable tmb: STD_LOGIC_VECTOR(3 DOWNTO 0);begi nIf Reset = 0then tma:=0000; tmb:=0000; elseif clkeve nt and clk-1 thenif en=1 thenif tma=1001 then tma:=0000;tmb:=tmb+1;elsif tmb=0010 and tma=0011 thentma:=0000;tmb:=0000;else tma:=tma+1;end if;end if;end if;e nd if; qa=tma;qb=tmb; end p rocess;END a

11、1;232二十四进制计数器仿真结果二十四进制计数器模块部分仿真结果如下图5。G Mg?ei lime 5a;A45%八旳心&0 mhtg记Hbte2D.D hsdi9 qmS::nAAi T7JinJTTwmnrLrjLr rLr rLr r.11Oj而图5二十四进制计数器仿真波形图CLK :时钟信号RST:复位信号低电平清零En :置数端低电平不让它继续计数qb、qa:输出的四位二进制数,分别对于要输出数的十位个位2.4分频器241分频器设计思路分频器原理:输入一个较高的频率,比如 750kHz,则设计算法,使得每输 入7500个脉冲输出一个脉冲,这样输出端口就提供一个 100Hz的频率。输

12、入信 号为clk和rst,分别为时钟信号和复位信号,输出信号为 clk_out,为分频器 1HZ的时钟信号输出。CLK CLKjOUTFST图6分频器示意图分频器模块部分VHDL源程序如下。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fenpinqi ISP ORT (CLK,RST:in std_logic; CLK_OUT:out std_logic);END fenpin qi;ARCHITECTURE behav OF fenpinqi IS sig nal clk_da

13、ta:std_logic;SIGNAL CNT6 : INTEGER := 0;BEGINP ROCESS(CLK)BEGINIF RST = 0 THEN CNT6=0 ;ELSIF CLKEVENT AND CLK=1 THENIF CNT6=2 THEN clk_datav=NOT clk_data;CNT6v=0;ELSE CNT6=CNT6+1;END IF;END IF;CLK OUTv=clk data;END P ROCESS;END behav242分频器仿真结果年 HNtfTiruEH7彳卜:Pom:Iri屮乙吕却E-nct分频器模块部分仿真结果如下图703 IACLKUT

14、TP 45 m)riift 9 ztl T.-型 P 血Jl.C Qi_n_rLr nn ri -in i irir_r n r n rLrLrLnrLrLrLrjTrLrLruLrLrLrLrLr_rLn_rLrLrL图7分频器仿真波形图CLK :输入分频前的时钟信号RST:复位信号低电平清零Clkout :输出分频后的时钟信号2.5 LED显示2.5.1 LED显示模块设计思路LED显示器,LED有着显示亮度高,响应速度快的特点,最常用的是七段式又称数码管。七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极 管组成,根据各管的亮暗组合成字符。LED数码管的ga七个发光二极管因加正

15、电压而发亮,因加零电压而不能 发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码(段码),如显示” 0” ,字形码为3fh 0数码管的接口有静态接口和动态接口。动态接口采用各数码管循环轮流显示 的方法,当循环显示频率较高时,利用人眼的暂留特性,看不出闪烁显示现象, 这种显示需要一个接口完成字形码的输出(字形选择),另一接口完 成各数码管的轮流点亮(数位选择)。将二十四进制计数器和2个六十进制计数器的输出作为 LEDA显示模块的输入,在时钟信号的控制下通过此模块完成6个LED数码管的显示,输出信号为WEI20和LED60,分别为位选信号和段码输出。 H HH H H3 ctoctii-

16、QLK Wsl,.Ql S13.OJLED5.G1-S23.aj-S33. .OP 54(3 .0:P E3 .0 se2.ajir5t&图8 LED显示示意图rpiTFe d c *lp图9 LED数码管结构图LED显示模块部分VHDL源程序如下。LIBRARY IEEE;USE lEEE.STD LOGIC 1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY clock1 ISP ORT(CLK: IN STD_LOGIC;S1, S2, S3, S4, S5, S6: IN STD_LOGIC_VECTOR(3 DOWNTO 0);WEI: O

17、UT STD_LOGIC_VECTOR(2 DOWNTO 0);LED: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END ENTITY;ARCHITECTURE behave OF clock1 ISSIGNAL CNT6 : INTEGER RANGE 0 TO 5 := 0;SIGNAL SHUJU: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINPRO1:PROCESS(CLK)BEGINIF CLKEVENT AND CLK = 1 THENCNT6 WEI = 000; SHUJU WEI = 001; SHUJU WEI = 010

18、; SHUJU WEI = 011; SHUJU WEI = 100; SHUJU WEI = 101; SHUJU = S6;CNT6 NULL;END CASE;END IF;END PROCESS;PRO2: PROCESS(SHUJU)BEGINCASE SHUJU ISWHEN 0000=WHEN 0001=LED= 1111110 ;LEDLEDWHEN 0100=WHEN 0101=LED= 1111001 ;LED= 0110011 ;LEDLED LED LED LED LED= 0000000;END CASE;END P ROCESS;END ;2.5.2 LED显示模块

19、仿真结果LED显示模块部分仿真结果如下图10。?4Fii! 创皿伸1?.?En:I仙时iStuE 5 时Enl-pgX D DS0CLEa茴p jRnnnK_】nmnrLrdir_rjijvLin7L5iinr_rTLr_rTLr_rNil :i rTIMisr2aMi w -駅-H = H 巨-g昼一背图10 LED显示模块仿真波形图led输出s1对应的十进制数的数码管脚 led输出s2对应的十进制数的数码管脚 led输出S3对应的十进制数的数码管脚 led输出S4对应的十进制数的数码管脚 led输出s5对应的十进制数的数码管脚 led输出s6对应的十进制数的数码管脚Clk :时钟信号s1

20、,s2,s3, s4, s5, s6:输入的的四位二进制数led :输出的七位二进制数,对应数码管脚的输出 gfedcba wei:输出的三位而进制数(输出范围为000-101),控制led输出,当 wei=000时,当 wei=001 时,当 wei=010 时,当 wei=011 时,当 wei=100 时,gfedcba gfedcba gfedcba gfedcba gfedcba gfedcba当 wei=101 时,2.6顶层仿真顶层仿真仿真波形如下图11CLKOpp*1OprIrrivtOps5ji I0p7End011 R &QD_J1 na l.Z uzluzl E.耳 g

21、* a M B, 3 丄啤 g 6_ If 弓-号=工 S. T.叫 “ T.W iza B.3f tu 吕.巧 KM ptirWJuwvjimjwiwwuvwnwWvwinjwwiwjwuiTVuiinnvviowwWV fc d b 1 d 1 d =kri 1 h h h 1III t h h I I I H II IIIIiIIIn_.jnrv_rL_n . : n_nrL_n_n_rL_rT_LJi_Lri_uL_n;_ I-jn_jn_n_,F_n n . .n_n_n. n . .n n i_rLrwLrurLn_nrLrLn_n_runLrLnLiTrLrLrLrLnrLrLn

22、LrLn_rLrLnrLTLrLrLrLrLnTLn_rTULn_rLru畫卞罚気理疳讥韵城TTT7T関貞7冋盖UL网abln进淖IT九瞬71司姗时吊医如気词莊T7顷虞鹹“牡咖in翔 mj1U:_1UULTnUn LTIU: I :Un IlullLIIlJrnLILI LTH LiLIUU U,IUILfn .n.口 口 ;n : I. 口 . n.ijirL_L图11顶层仿真仿真波形时钟信号复位信号低电平清零低电平不让它继续计数led输出对于秒钟的个位 led输出对于秒钟的十位 led输出对于分钟的个位 led输出对于分钟的十位 led输出对于时钟的个位 led输出对应时钟的十位RSTEn:置数端led :输出的七位二进制数,对应数码管脚的输出gfedcbawei:输出的三位而进制数(输出范围为000-101),控制led输出,当 wei=000时,当 wei=001 时,当 wei=010 时,当 wei=011 时,当 wei=100 时,当 wei=101 时,143 课程设计总结通过本次课程设计,把EDA课堂上学习

温馨提示

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

最新文档

评论

0/150

提交评论