基于vhdl的定时器设计及实现

基于vhdl的定时器设计及实现

ID:30803928

大小:264.08 KB

页数:8页

时间:2019-01-03

基于vhdl的定时器设计及实现_第1页
基于vhdl的定时器设计及实现_第2页
基于vhdl的定时器设计及实现_第3页
基于vhdl的定时器设计及实现_第4页
基于vhdl的定时器设计及实现_第5页
资源描述:

《基于vhdl的定时器设计及实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于VHDL的定时器设计及实现设计参数定时器设计功能:实现3位数(单位是秒)的倒数输入信号:置数(为二进制数),开始计数信号输出信号:计数信号的LED数码管(共阴极)显示码,计数结束信号设计要求给出系统整体组成框图每一个模块的VIIDL实现及功能仿真顶层文件及整体仿真设计计划了解EDA的基本知识学习使用软件Max+Plusll开始电路设计学习使用实验箱继续电路设计完成电路设计编程下载、连接电路、调试和验收参考资料《数字电子技术基础》.阎石主编.高等教育出版社.《EDA技术及应用》谭会生等编著,西安电子

2、科技大学出版社《电子设计自动化教程》王锁萍等编著,电子科技大学出版社《VHDL设计电子线路》边计年等编著,清华大学出版社1设计说明采用了可编程芯片和VHDL语言进行软硬件设计,使硬件大为简化,稳定性也比较好。由于可编程芯片的频率精度可达到50MHz,因而计时精度很高。本设计采用逐位设定预置时间,以达到三位倒数功能,使用也较为方便。2设计原理置位、启动、复位、倒本定时器的核心器件为EP1C6Q240C8芯片。该芯片有选位、计时等功能,显示采用2个3位LED数码管,并采用共阴接法,可以动态扫描显示。系统原

3、理框图3硕件设计木系统共有两大模块,分别为控制/定时模块和显示模块。其中控制/定时模块包括按键的功能定义和计时的逻辑定义。显示模块则包括片选模块、位扫描模块和数码管译码模块。设计时可将秒信号输入控制/定时模块,此时系统将输出六个四位BCD码,以分别表示吋、分、秒位。在定吋倒计数吋,计数器可以秒的速度递减,从而实现倒计吋。系统中的位选择器用于对六位进行循环扫描输出,并将扫描输出送到译码器。译码器模块可对输入的四位进行译码,同时在设置数值时用6个LED灯分别指示其所设置的位。Setw(置位键):用于选定定

4、时器所需定时的对应位。发光二极管对应七段数码管设置,当选定对应的位时,相应的发光二极管亮;Set(置数键):用于设置选定位的具体数值;Start键:用于设定好时间后启动秒表计时。可通过软件使start按键经过锁存器后进人模块。Start触发后可产生持续的高电平;ALM(扬声器):可在计时结束时发声报警;Clr(清零键):用于计时器的清零复位;七段数码管用于显示定时数字,set模块用控制数码管的扫描频率。AAAALM—•STARTQ5(3O]—iCLRQ4(3・0]MlSETWQX30]—i>—SETQ

5、2(3.O1CLKQl[30]Q0(30]—iSTATEA[2..O)—i77引脚图4主要模块软件程序图3所示是该定时器的软件系统构成。本软件包括控制/定时模块和显示模块两大部分。CT^XPIN44ctK

6、••••••••••••・••••・••••••••teew

7、tci

8、STARTcutSETWSETcue4.1控制/定时模块AAA控制/定时模块是该定时器的核心部分,该模块的程序流程图如图4

9、所示。当START为高电平时,该定时器将进入倒计时阶段。当CLK脉冲上升沿到来时,计数以秒的速度减1,直到计时结束,使ALM位为高电平为止。CLR为复位端,可用来清零,通常采用异步复位方式。SETW用于选位,高电平有效。SET用于对选定的位进行置数,也是高电平有效。ALM输出端将在定吋结束吋产生高电平。Q0〜Q5为四位BCD码输出端口,主要用于显不。4.2显示模块通过jishuqi模块可完成BCD码的转化,再经DIS模块译码.然后输出给七段数码管。(1)jishuqi模块jishuqi可产生四位BCD

10、码输入,并从sei端输出。VHDL源代码如下:libraryieee;useieee.std_logic_1164.all;entityjishuqiisport(sel:instd_logic_vector(2downto0);a5,a4,a3,a2,al,a0:instd_logic_vector(3downto0);q:outstd」ogic_vector(3downto0));endjishuqi;architectureoneofjishuqiisbeginprocess(sel,aO,a1

11、,a2,a3,a4,a5)begincaseseiiswhenq<=a0;when'W1,,=>q<=a1;when"010^=>q<=a2;when4t01T,=>q<=a3;when6t100,,=>q<=a4;when"10F,=>q<=a5;whenothers=>qv二''0000"endcase;endprocess;endone;(2)DIS模块VHDL源代码如下:libraryieee;useieee.std_logic_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。