云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 数字秒表课程设计报告

数字秒表课程设计报告

  • 62 次阅读
  • 3 次下载
  • 2026/4/23 19:40:21

IF CLK'EVENT AND CLK='1' THEN IF CNTER=29999 THEN CNTER<=0; ELSE CNTER<=CNTER+1; END IF;

END IF;

END PROCESS;

PROCESS(CNTER) IS BEGIN

IF CNTER=29999 THEN NEWCLK<='1'; 计数到三万次了,就给出一个脉冲

ELSE NEWCLK<='0'; END IF;

END PROCESS; END;模块符号:

(图1)

2.2模块2——十进制计数器

十进制计数器就是输入一个时钟脉冲计一个数,计数当前值通过4位输出端口输出,输出为BCD码。当计到九且再来一个脉冲时计数输出清零,且进位端给出高电平。再来脉冲继续计数,进位端清零。计数只有在使能端为1时有效,否则保持。当复位端为1时,则计数器清零。

部分源程序及说明:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT10 IS

PORT (CLK,RST,EN : IN STD_LOGIC;

CQ : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END CNT10;

ARCHITECTURE behav OF CNT10 IS BEGIN

PROCESS(CLK, RST, EN)

VARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

3

IF RST = '1' THEN CQI := (OTHERS =>'0') ; --计数器异步复位

ELSIF CLK'EVENT AND CLK='1' THEN --检测时钟上升沿

IF EN = '1' THEN --检测是否允许计数(同步使能)

IF CQI < 9 THEN CQI := CQI + 1; COUT <= '0'; --允许计数, 检测是否小于9 ,设置输出为0

ELSE CQI := (OTHERS =>'0'); COUT <= '1'; --大于9,计数值清零,设置输出为1

END IF; END IF; END IF; CQ<=CQI;

END PROCESS; END;模块图:

(图2)

2.3模块3——六进制计数器。

当使能端是1时,对秒和分的十位进行计数,当计数到5,再来一个脉冲时就变为零。当遇到复位为高电平时,则清零。

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT6 IS

PORT (CLK,RST,EN : IN STD_LOGIC;

CQ : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END CNT6;

ARCHITECTURE behav OF CNT6 IS BEGIN

PROCESS(CLK, RST, EN)

VARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

IF RST = '1' THEN CQI := (OTHERS =>'0') ; ELSIF CLK'EVENT AND CLK='1' THEN IF EN = '1' THEN

IF CQI < 5 THEN CQI := CQI + 1; COUT <= '0';

ELSE CQI := (OTHERS =>'0'); COUT <= '1';

4

END IF; END IF; END IF; CQ<=CQI;

END PROCESS; END;

图3

2.4模块4——与门。

利用与门把几个进位输出进行相与,得出一分钟的高电平和十秒钟的高电平。

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ANDT IS

PORT (A,B:IN STD_LOGIC; Y:OUT STD_LOGIC); END ENTITY ANDT;

ARCHITECTURE ART OF ANDT IS BEGIN

Y<=A AND B;

END ARCHITECTURE ART;

(图4)

2.5顶层设计模块

5

顶层文件是一个原理图文件(图9)

33.1 时序仿真

分频器时序仿真结果:

系统仿真

(图5)仿真时间是100ms,输入脉冲是上面一排,下面是输出脉冲,100ms内有10个脉冲,即输出是一个100Hz时钟信号。

6

搜索更多关于: 数字秒表课程设计报告 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

IF CLK'EVENT AND CLK='1' THEN IF CNTER=29999 THEN CNTER<=0; ELSE CNTER<=CNTER+1; END IF; END IF; END PROCESS; PROCESS(CNTER) IS BEGIN IF CNTER=29999 THEN NEWCLK<='1'; 计数到三万次了,就给出一个脉冲 ELSE NEWCLK<='0'; END IF; END PROCESS; END;模块符号: (图1) 2.2模块2——十进制计数器 十进制计数器就是输入一个时钟脉冲计一个数,计数当前值通过4位输出端口输出,输出为BCD码。当计到九且再来一个脉冲时计数输出清零,且

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com