秒计时控制器vhdl.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
秒计时控制器vhdl

1/100秒计时控制器 1. 系统说明 图1是1/100秒计时控制器的方框图。 图1 1/100秒计时控制器方框图 ⑴ 功能要求 计时精度为1/100s,最长计时时间为1h。 直接驱动共阴极7段数码显示时间。 能够支持计时器启动/停止和复位操作。在任何情况下,按一下复位键,计时器就清零并作好计时准备;然后按一下启动/停止键,计时器就开始计时;再按一下启动/停止键,计时器停止计时。 ⑵ 端口定义 RST:系统复位信号,高电平有效。 CLK:1KHz的系统时钟。 RST_KEY:复位按键产生的复位信号,每按一次按键就产生一个正脉冲。 START_STOP_KEY:启动/停止按键产生的启动/停止信号,每按一次按键就产生一个正脉冲。 SEG:LED显示器的7段(abcdefg)显示驱动信号,高电平有效。 COM:7段数码管的公共端控制信号。 2. 系统的总体方案、系统划分和算法设计 图2是1/100秒计时控制器的总体结构框图,系统主要由时钟产生模块(CLK_GEN)、控制模块(CONTROLLER)、按键同步消抖动模块(KEY_IN)、计时模块(TIMER)和显示模块(DISPLAY)构成。 图2 1/100秒计时控制器的总体结构框图 ⑴ 时钟产生模块(CLK_GEN) 时钟产生模块的作用是对输入的1kHz时钟信号CLK进行分频,输出一个25Hz的时钟KEY_CLK和一个100Hz的时钟CNT_CLK。时钟产生信号的结构图如图3所示。 图3 时钟产生信号的结构图 时钟产生模块由两个同步加法计数器模块(COUNTER)构成,1kHz的时钟信号CLK先经10分频后得到100Hz的CNT_CLK,再经4分频后得到25Hz的计数脉冲KEY_CLK。 同步计数器模块(COUNTER)的端口的定义是,RESET为异步清零端,高电平有效;EN为计数使能端,高电平有效;CLK为计数时钟;C为进位输出端;Q为计数输出端。 ⑵ 按键同步消抖动模块(KEY_IN) 由按键产生的脉冲信号RST_KEY和START_STOP_KEY,在产生的时刻和持续时间的长短上都是随机的,而且存在电平抖动现象(一般认为按键抖动的时间不会超过20ms)。按键同步消抖动模块由两个完全相同的按键同步消抖动电路组成,他们的作用就是保证每按一次复位或启动/停止键,RST_C或SST_C只产生一个宽度等于系统时钟周期(1ms)并与系统时钟同步的正脉冲。按键同步消抖动电路的框图如图4所示,状态表如表1所示。 图4 按键同步消抖动电路框图 ⑶ 计时模块(TIMER) 计时模块由6个同步加法计数器模块(COUNTER)构成,如图5所示。SEC1_100、SEC1_10、SEC1、SEC10、MIN、MIN10分别是1/100秒、1/10秒、1秒、10秒、1分、10分的计时值。 图5 计时模块结构图 ⑷ 显示模块(DISPLAY) 采用动态方式显示时间,图6是显示模块的结构图,表2中是COM、TIME与SEL的关系,表3是共阴极7段LED译码表。 图6 显示模块结构框图 表2 COM、TIME与SEL的关系 SEL TIME COM SEL TIME COM 0 SEC1_100 1 1 1 1 1 0 3 SEC10 1 1 0 1 1 1 1 SEC1_10 1 1 1 1 0 1 4 MIN 1 0 1 1 1 1 2 SEC 1 1 1 0 1 1 5 MIN10 0 1 1 1 1 1 表3 7段LED译码器的译码表 TIME SEG TIME SEG a b c d e f g a b c d e f g 0 1 1 1 1 1 1 0 5 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 6 1 0 1 1 1 1 1 2 1 1 0 1 1 0 1 7 1 1 1 0 0 0 0 3 1 1 1 1 0 0 1 8 1 1 1 1 1 1 1 4 0 1 1 0 0 1 1 9 1 1 1 1 0 1 1 ⑸ 控制模块(CONTROLLER) 控制模块的功能比较简单。当计时器工作时,100Hz的时钟信号CNT_CLK从CNT_EN端输出;当计时器停止工作时,CNT_EN端输出低电平。 3. VHDL设计文件 ⑴ 包文件(WATCH_PKG.VHD) library ieee; use ieee.std_logic_1164.all; package WATCH_PKG is component COUNTER is

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档