ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:484.26KB ,
资源ID:1827576      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-1827576.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数电课程设计电子时钟设计.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数电课程设计电子时钟设计.docx

1、数电课程设计电子时钟设计课程设计报告课程名称:VHDL语言与EDA课程设计设计题目: 电子时钟设计 系 别: 专 业: 班 级: 学生姓名: 学 号: 起止日期: 指导教师: 教研室主任: 指导教师评语: 指导教师签名: 年 月 日成绩评定项 目权重成绩 1、设计过程中出勤、学习态度等方面0.22、课程设计质量与答辩0.53、设计报告书写及图纸规范程度0.3总 成 绩 教研室审核意见:教研室主任签字: 年 月 日教学系审核意见: 主任签字: 年 月 日 摘 要数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得

2、到了广泛的使用。数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。电路通过使用数字元件,采用三个计数器来构成完成二十四小时的数字钟设计,并且将译码器和二选一数字选择器配合使用来完成动时间写出。此外,使能端和复位端控制信号用来控制电路,使得该电路可以完成保持、清零、预置时间、等一系列的功能。关键词:计数器;译码器;二选一数字选择器;使能端;复位端。目 录设计要求 11 、方案论证与对比 11.1 方案一 112 方案二 213 两种方案的对比 22、各功能模块设计 221 计数器 222 时间设置模块 323 二选一数据选择器 324 时间显示模块 325 顶层电路VHDL

3、程序设计 33、调试与操作说明 54、课程设计心得与体会 65、元器件及仪器设备明细表 66、致谢 77、参考文献 78、附录 7附录1 秒,分计数模块 7附录2 时计数器模块 8附录3 二选一数据选择器 9附录4 16进制转换为10进制 9电子时钟设计设计要求1能显示时分秒;2设置启停开关;3能进行复位;4用户可以调整时间。1 、方案论证与对比 按照设计要求,本次的设计分为计数器模块,控制器模块和译码器模块。根据各个模块的不同,我们的设计上提出了以下两种不同的方案。1.1 方案一图1.方案一结构图通过二选一数据选择器选择输出为CLK时钟信号还是数据控制信号,从而使计数器计数,计数器将结果传输

4、给时间显示模块,最后再将16进制数转换为10进制数,在通过数码显示器显示。当数据选择器输出为CLK时钟信号时,计数器开始计时工作,将输入信号设置为1Hz,则为标准时钟。当数据选择器输出为数据控制端时,则可通过外部按键改变计数器始终变换,从而改变计数器结果,起到数据写入,预置时间的作用。12 方案二图2.方案二结构图由CLK传输1Hz信号,计数开始计数,实现标准时钟功能,当控制器关闭,数据传输给时间显示模块,再通过数码显示器显示。当控制器打开,通过外部按键数据通过控制器输入进计数器,计数器再将结果传输给时间显示模块,从实现到时间预置功能。13 两种方案的对比相同点:两方案的计数器和时间显示模块的

5、设计思想相同。不同点:方案一是二选一数据选择器输出来控制计数器的时钟输入,而方案二是通过控制器来控制计数器的输入输出。两者相比,虽然方案二结构简单、思路易懂,但方案二需要使用双向端口,而双向端口在控制方面不如二选一数据选择器易操作,准确。因此,综合考虑,我们选择了方案一进行设计。2、各功能模块设计21 计数器A 秒计数模块:秒计数,在频率为1HZ的时钟下以60次为循环计数,并产生进位信号影响分计数;(程序见附录1) B 分计数模块:分计数,在秒进位信号为高电平时,计数一次,同样以60次为一个循环计数,同时产生分进位信号影响时计数;(程序见附录1)C 时计数模块:时计数,在分进位信号为高电平时,

6、计数一次,以24次为一个循环计数。(程序见附录2)22 时间设置模块设置调试使能端,可以调时,分,秒。基本功能是在外部按键后产生低电平跳变到高电平的脉冲,从而模拟出时间脉冲信号输入给计数器。总共有3个同样的部件,分别控制秒,分,时的计数器。23 二选一数据选择器设置时能段,可以使输出受使能段控制。基本操作,当使能端为0,将CLK脉冲信号输出,当使能端为1时,将外部按键信号输出。总共有3个同样的部件,分别控制秒,分,时的计数器。 (程序见附录3)24 时间显示模块有计数器输出的数据分7位标准矢量,显示时为16进制数,通过CONV部件将其转换为10进制数输出。(程序见附录4)25 顶层电路VHDL

7、程序设计将以上所描述的各功能模块的VHDL语言文件在Quartus工具软件上打包成可调用的元件,然后再将名功能模块元件调入原理图编辑窗中并连接好,最后得到的顶层文件原理图如图3所示。工作原理:当二选一数据选择其使能端0,计数器接收时钟信号。时钟信号上升沿到来,秒计数器开始计数,计数到60清零并产生进位信号,进位信号传输到分计数器,从而分计数器开始计数,分计数器计数到60清零并产生进位信号传输到时计数器,时计数器计数到24清零。当二选一数据选择器为1时,计数器接收外部按键信号,每按一次,产生低电平到高电平的变化,模拟时钟信号运行,从而控制计数器变换,起到数据输入,预置时间的功能。图3.顶层原理图

8、3、调试与操作说明1)、建立工程。2)、对顶层文件进行时序仿真,得到仿真波形如下图示:说明:当key1键上升沿到来,秒计数器加1;当key2键上升沿到来,分计数器加1;当ke3键上升沿到来,时计数器加。图4.顶层文件仿真图3)、引脚锁定如下表所示。图1.引脚锁定表4、课程设计心得与体会 本次课程设计的VHDL语言程序已在Quartus工具软件上进行了编译、仿真和调试,并通过编程器下载到了EP1C6Q240C8芯片。经过实践验证,本设计是正确的,仿真数据与实际波形发生器的试验箱运行结果完全一致,达到预期目的,设计成功。本文给出的设计思想也适用于其他基于计数器的设计。我们这次课程设计是通过小组的讨

9、论与实验所完成的,在进行过程中碰到了一些困难。采用的是Quartus来完成设计的,因此对于Quartus软件的使用也提出了一定的要求。其次,由于VHDL程序编写得不够好,以致于综合器在编译时出现了一些错误,需要多次修改程序直到编译成功。再次,在仿真时没有正确的结果,经过多次修改,终于得到正确的时序仿真波形。通过这次实验我感觉到我的动手能力得到很大我加强。在这次课程设计中,我学会了怎样去根据课题的要求去设计电路和调试电路。动手能力得到很大的提高。从中我发现自己并不能很好的熟练去使用我所学到的EDA技术与VHDL语言。在以后的学习中我们要加强对理论与实际相结合。而且通过这次实验,体现了团队合作的重

10、要性和交流的必要性。表2 元器件及仪器设备明细表5、元器件及仪器设备明细表符号型号/参数数量备注计算机联想1台EDA/SOPC实验开发系统GW48-PK21套Quartus6.0开发软件1套6、致谢本次课程设计主要由我们两人共同完成,其间当然老师也同样是付出了大量的时间和精力来帮助我们。不管怎么样,我们都会欣然接受现实,因为我们努力过了。同时我们也要衷心地感谢我们所有的老师,以及帮助我们的同学们,要是没你们的帮助我们是不能这么好的完成这次的课程设计。7、参考文献1 边计年,薛宏熙译用VHDL设计电子线路M北京:清华大学出版社,20002 李宗伯,王蓉晖译VHDL设计表示和综合M北京:机械工业出

11、版社,2002 3 高书莉,罗朝霞可编程逻辑设计技术及应用M北京:人民邮电出版社,20044 黄正谨,徐坚CPLD系统设计技术入门与应用M北京:电子工业出版社,20055 潘松,黄继业EDA技术与VHDL(第2版)M北京:清华大学出版社,20078、附录附录1 秒,分计数模块library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt is port(CLK,RST,EN: in std_logic; CQ: out std_logic_vector( 6 downto 0); COUT:

12、 out std_logic);end cnt;architecture behav of cnt isbeginprocess(CLK,RST,EN)variable CQI:std_logic_vector (6 downto 0);beginif RST=1 then CQI:=(others=0);elsif CLKevent and CLK=1 thenif EN=1 thenif CQI 0);end if;end if;end if;if CQI=59 then if clk=1 then COUT=1;else cout=0;end if;end if;CQ0);elsif C

13、LKevent and CLK=1 thenif EN=1 thenif CQI 0);end if;end if;end if;CQ=CQI;end process;end behav1;附录3 二选一数据选择器 library ieee;use ieee.std_logic_1164.all;entity mux21a is port (a,b : in std_logic; s : in std_logic; y : out std_logic );end mux21a;architecture cq of mux21a isbeginy=a when s=0 else b ;end a

14、rchitecture cq; 附录4 16进制转换为10进制library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity conv isport( clk:in std_logic; in16:in std_logic_vector(6 downto 0); out1,out2:out std_logic_vector(3 downto 0);end entity conv;architecture bhv of conv is beginprocess(clk,in16)variable tmp,q1,q2,q3:integer;begintmp:=conv_integer(in16);q1:=tmp/10;q2:=q1/10;q3:=q2/10;if clkevent and clk=1 thenout1=conv_std_logic_vector(tmp rem 10,4);out2=conv_std_logic_vector(q1 rem 10,4);end if;end process;end bhv;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2