数电课程设计电子时钟设计文档格式.docx
- 文档编号:21714213
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:12
- 大小:484.72KB
数电课程设计电子时钟设计文档格式.docx
《数电课程设计电子时钟设计文档格式.docx》由会员分享,可在线阅读,更多相关《数电课程设计电子时钟设计文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
1、设计过程中出勤、学习态度等方面
0.2
2、课程设计质量与答辩
0.5
3、设计报告书写及图纸规范程度
0.3
总成绩
教研室审核意见:
教研室主任签字:
教学系审核意见:
主任签字:
年月日
摘要
数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。
数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。
电路通过使用数字元件,采用三个计数器来构成完成二十四小时的数字钟设计,并且将译码器和二选一数字选择器配合使用来完成动时间写出。
此外,使能端和复位端控制信号用来控制电路,使得该电路可以完成保持、清零、预置时间、等一系列的功能。
关键词:
计数器;
译码器;
二选一数字选择器;
使能端;
复位端。
目录
设计要求1
1、方案论证与对比1
1.1方案一1
1.2方案二2
1.3两种方案的对比2
2、各功能模块设计2
2.1计数器2
2.2时间设置模块3
2.3二选一数据选择器3
2.4时间显示模块3
2.5顶层电路VHDL程序设计3
3、调试与操作说明5
4、课程设计心得与体会6
5、元器件及仪器设备明细表6
6、致谢7
7、参考文献7
8、附录7
附录1秒,分计数模块7
附录2时计数器模块8
附录3二选一数据选择器9
附录416进制转换为10进制9
电子时钟设计
设计要求
1.能显示时分秒;
2.设置启停开关;
3.能进行复位;
4.用户可以调整时间。
1、方案论证与对比
按照设计要求,本次的设计分为计数器模块,控制器模块和译码器模块。
根据各个模块的不同,我们的设计上提出了以下两种不同的方案。
1.1方案一
图1.方案一结构图
通过二选一数据选择器选择输出为CLK时钟信号还是数据控制信号,从而使计数器计数,计数器将结果传输给时间显示模块,最后再将16进制数转换为10进制数,在通过数码显示器显示。
当数据选择器输出为CLK时钟信号时,计数器开始计时工作,将输入信号设置为1Hz,则为标准时钟。
当数据选择器输出为数据控制端时,则可通过外部按键改变计数器始终变换,从而改变计数器结果,起到数据写入,预置时间的作用。
1.2方案二
图2.方案二结构图
由CLK传输1Hz信号,计数开始计数,实现标准时钟功能,当控制器关闭,数据传输给时间显示模块,再通过数码显示器显示。
当控制器打开,通过外部按键数据通过控制器输入进计数器,计数器再将结果传输给时间显示模块,从实现到时间预置功能。
1.3两种方案的对比
相同点:
两方案的计数器和时间显示模块的设计思想相同。
不同点:
方案一是二选一数据选择器输出来控制计数器的时钟输入,而方案二是通过控制器来控制计数器的输入输出。
两者相比,虽然方案二结构简单、思路易懂,但方案二需要使用双向端口,而双向端口在控制方面不如二选一数据选择器易操作,准确。
因此,综合考虑,我们选择了方案一进行设计。
2、各功能模块设计
2.1计数器
A.秒计数模块:
秒计数,在频率为1HZ的时钟下以60次为循环计数,并产生进位信号影响分计数;
(程序见附录1)
B.分计数模块:
分计数,在秒进位信号为高电平时,计数一次,同样以60次为一个循环计数,同时产生分进位信号影响时计数;
C.时计数模块:
时计数,在分进位信号为高电平时,计数一次,以24次为一个循环计数。
(程序见附录2)
2.2时间设置模块
设置调试使能端,可以调时,分,秒。
基本功能是在外部按键后产生低电平跳变到高电平的脉冲,从而模拟出时间脉冲信号输入给计数器。
总共有3个同样的部件,分别控制秒,分,时的计数器。
2.3二选一数据选择器
设置时能段,可以使输出受使能段控制。
基本操作,当使能端为‘0’,将CLK脉冲信号输出,当使能端为‘1’时,将外部按键信号输出。
(程序见附录3)
2.4时间显示模块
有计数器输出的数据分7位标准矢量,显示时为16进制数,通过CONV部件将其转换为10进制数输出。
(程序见附录4)
2.5顶层电路VHDL程序设计
将以上所描述的各功能模块的VHDL语言文件在QuartusⅡ工具软件上打包成可调用的元件,然后再将名功能模块元件调入原理图编辑窗中并连接好,最后得到的顶层文件原理图如图3所示。
工作原理:
当二选一数据选择其使能端‘0’,计数器接收时钟信号。
时钟信号上升沿到来,秒计数器开始计数,计数到60清零并产生进位信号,进位信号传输到分计数器,从而分计数器开始计数,分计数器计数到60清零并产生进位信号传输到时计数器,时计数器计数到24清零。
当二选一数据选择器为‘1’时,计数器接收外部按键信号,每按一次,产生低电平到高电平的变化,模拟时钟信号运行,从而控制计数器变换,起到数据输入,预置时间的功能。
图3.顶层原理图
3、调试与操作说明
1)、建立工程。
2)、对顶层文件进行时序仿真,得到仿真波形如下图示:
说明:
当key1键上升沿到来,秒计数器加1;
当key2键上升沿到来,分计数器加1;
当ke3键上升沿到来,时计数器加。
图4.顶层文件仿真图
3)、引脚锁定——如下表所示。
图1.引脚锁定表
4、课程设计心得与体会
本次课程设计的VHDL语言程序已在QuartusⅡ工具软件上进行了编译、仿真和调试,并通过编程器下载到了EP1C6Q240C8芯片。
经过实践验证,本设计是正确的,仿真数据与实际波形发生器的试验箱运行结果完全一致,达到预期目的,设计成功。
本文给出的设计思想也适用于其他基于计数器的设计。
我们这次课程设计是通过小组的讨论与实验所完成的,在进行过程中碰到了一些困难。
采用的是QuartusⅡ来完成设计的,因此对于QuartusⅡ软件的使用也提出了一定的要求。
其次,由于VHDL程序编写得不够好,以致于综合器在编译时出现了一些错误,需要多次修改程序直到编译成功。
再次,在仿真时没有正确的结果,经过多次修改,终于得到正确的时序仿真波形。
通过这次实验我感觉到我的动手能力得到很大我加强。
在这次课程设计中,我学会了怎样去根据课题的要求去设计电路和调试电路。
动手能力得到很大的提高。
从中我发现自己并不能很好的熟练去使用我所学到的EDA技术与VHDL语言。
在以后的学习中我们要加强对理论与实际相结合。
而且通过这次实验,体现了团队合作的重要性和交流的必要性。
表2元器件及仪器设备明细表
5、元器件及仪器设备明细表
符号
型号/参数
数量
备注
计算机
联想
1台
EDA/SOPC实验开发系统
GW48-PK2
1套
QuartusⅡ6.0开发软件
6、致谢
本次课程设计主要由我们两人共同完成,其间当然老师也同样是付出了大量的时间和精力来帮助我们。
不管怎么样,我们都会欣然接受现实,因为我们努力过了。
同时我们也要衷心地感谢我们所有的老师,以及帮助我们的同学们,要是没你们的帮助我们是不能这么好的完成这次的课程设计。
7、参考文献
[1]边计年,薛宏熙译.用VHDL设计电子线路[M].北京:
清华大学出版社,2000
[2]李宗伯,王蓉晖译.VHDL设计表示和综合[M].北京:
机械工业出版社,2002
[3]高书莉,罗朝霞.可编程逻辑设计技术及应用[M].北京:
人民邮电出版社,2004
[4]黄正谨,徐坚.CPLD系统设计技术入门与应用[M].北京:
电子工业出版社,2005
[5]潘松,黄继业.EDA技术与VHDL(第2版)[M].北京:
清华大学出版社,2007
8、附录
附录1秒,分计数模块
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entitycntis
port(CLK,RST,EN:
instd_logic;
CQ:
outstd_logic_vector(6downto0);
COUT:
outstd_logic);
endcnt;
architecturebehavofcntis
begin
process(CLK,RST,EN)
variableCQI:
std_logic_vector(6downto0);
ifRST='
1'
thenCQI:
=(others=>
'
0'
);
elsifCLK'
eventandCLK='
then
ifEN='
ifCQI<
59thenCQI:
=CQI+1;
elseCQI:
endif;
ifCQI=59then
ifclk='
thenCOUT<
='
;
elsecout<
CQ<
=CQI;
endprocess;
endbehav;
附录2时计数器模块
entitycnt1is
outstd_logic_vector(6downto0)
);
endcnt1;
architecturebehav1ofcnt1is
24thenCQI:
endbehav1;
附录3二选一数据选择器
entitymux21ais
port(a,b:
s:
y:
outstd_logic);
endmux21a;
architecturecqofmux21ais
y<
=awhens='
elseb;
endarchitecturecq;
附录416进制转换为10进制
useieee.std_logic_arith.all;
entityconvis
port(clk:
instd_logic;
in16:
instd_logic_vector(6downto0);
out1,out2:
outstd_logic_vector(3downto0));
endentityconv;
architecturebhvofconvis
process(clk,in16)
variabletmp,q1,q2,q3:
integer;
tmp:
=conv_integer(in16);
q1:
=tmp/10;
q2:
=q1/10;
q3:
=q2/10;
ifclk'
eventandclk='
out1<
=conv_std_logic_vector(tmprem10,4);
out2<
=conv_std_logic_vector(q1rem10,4);
endbhv;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 电子 时钟 设计