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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

数字电路课程设计数字钟的设计与实现.docx

1、数字电路课程设计数字钟的设计与实现学 号 数字电路课程设计设计说明书数字钟的设计与实现起止日期: 2013年 6 月 25日 至 2013 年 6 月 28日学生姓名班级成绩指导教师(签字) 计算机与信息工程学院 2013年6月28 日一、引言. . . . 2二、实验要求. . .2三、实验目的. . .2四、实验内容. . . 2五、实验原理. . . 2六、实验连线. . . 3七、数字钟VHDL文本. . . 3八、总结. . .11一、引言 数字钟是采用数字电路实现对时、分、秒,数字显示的计时装置,广泛用于个人家庭,车站,码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于

2、数字集成电路的发展和石英振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大地方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、校时自动打铃、时间程序自动控制、定是广播、自动启闭路灯、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用有着非常现实的意义。 二、实验要求1具有时,分,秒,计数显示功能,以24小时循环计时。2具有清零,调节小时、分钟功能。3. 具有整点报时功能,整点报时的同时LED灯花样显示。三、实验目的1掌握多位计数器相连的设计方法。2掌握十进制、六进制、二十四进

3、制计数器的设计方法。3巩固多位共阴极扫描显示数码管的驱动及编码。4掌握扬声器的驱动。5LED灯的花样显示。6. 掌握CPLD技术的层次化设计方法。四 、实验内容1.根据电路持点,可在教师指导下用层次设计概念,将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,让几个学生分做和调试其中之一,然后再将各模块合起来联试,以培养学生之间的合作精神,同时加深层次化设计概念。 2.了解软件的元件管理深层含义,以及模块元件之间的连接概念。了解如何融合不同目录下的统一设计。模块说明: 各种进制的计数及时钟控制模块(10进制、6进制、24进制); 扫描分时显示,译码模块; 彩灯,扬声器编码模块; 各

4、模块都是由VHDL语言编写。数字钟各模块连接示意图五、实验原理 1时钟计数: 秒60进制BCD码计数; 分60进制BCDD码计数; 时24进制BCDD码计数;整个计数器有清零,调分,调时功能,在接近整数时间能提供报时信号。2具有驱动8位八段共阴扫描数码管的片选驱动信号输出和八段字形译码输出,编码和扫描部分可参照前面实验。3扬声器在整点时有报时驱动信号产生。4. LED灯在整点时有花样显示信号产生。六、 实验连线 输入接口:1代表清零,调时,调分信号RESET,SETHOUR,SETMIN的管脚分别已经连接按键开关。2代表计数时钟信号CLK和扫描时钟信号CKDSP的管脚分别已经同1HZ时钟源和3

5、2HZ(或更高)时钟源相连。3Reset键为低电平复位,已经接上。 输出接口:1代表扫描显示的驱动信号管脚SCAN2,SCAN1,SCAN0已经接到实验箱上的SCAN0SCAN2,AG接八位数码管显示模块的AG。2代表花样LED灯显示的信号管脚LAMP0LAMP2已经同3个LED灯相连。代表到时LED灯闪烁提示的ENHOUR接LED灯。 SETHOUR、SETMIN分别对应CPU板上的PB0、PB1(有些CPU板对应的标识是SW1、SW2) RESET对应CPU板上的RESET CLKDSP对应CPU板上的50MHz固定晶振输入。LAMP对应IO9-IO11。CLK,对应IO3。 功能选择位M

6、3.0状态为0010,左端8个数码管,低8位为7位段加小数点选取位,高8位为8个数码管com端选取,即如果要选取数码管0,则发送总线值为:1111 1110 1111 1111,如要选取数码管1,则发送总线值为:1111 1101 1111 1111,此时所选数码管7段和DP位将全部亮。 实验接线:用导线连接IO3与ADJ_CLK,调整SW17-SW20,使输出频率为1Hz;IO9-IO11接到L1-L3上; IO5接到蜂鸣器的BUZZER控制端口。 按下PB0、PB1(有些CPU板对应的标识是SW1、SW2)可以调整时钟,分钟。七、数字钟VHDL文本 本设计全部采用VHDL文本描述,所有文本

7、存放在同一个工作文件夹中。可先录入底层文件,把某个底层文件设为当时的顶层,保存、编译、仿真、退出;再录入另一个底层文件;这样把所有底层文件一一录入;最后录入顶层文件,并保存、编译、仿真,再下载顶层文件到器件实现硬件功能。 7.1、顶层文本(clock_top.vhd)library ieee;use ieee.std_logic_1164.all;entity clock_top is port(clk,reset,setmin,sethour,clkdsp:in std_logic; speaker:out std_logic; lamp:out std_logic_vector(2 dow

8、nto 0); sel:out std_logic_vector(2 downto 0); a,b,c,d,e,f,g,dpout:out std_logic);end clock_top;architecture a of clock_top isCOMPONENT second PORT( clk,reset,setmin:IN STD_LOGIC; daout:out std_logic_vector(6 downto 0); enmin:OUT STD_LOGIC);END COMPONENT;COMPONENT minute PORT( clk,clk1,reset,sethour:

9、IN STD_LOGIC; enhour:OUT STD_LOGIC; daout:out std_logic_vector(6 downto 0);END COMPONENT;COMPONENT hour port( clk,reset:IN STD_LOGIC; daout:out std_logic_vector(5 downto 0);END COMPONENT;COMPONENT alert PORT( clk:IN STD_LOGIC; dain:in std_logic_vector(6 downto 0); lamp:out std_logic_vector(2 downto

10、0); speak:OUT STD_LOGIC);END COMPONENT;COMPONENT seltime PORT( clk1,reset:IN STD_LOGIC; sec,min:in std_logic_vector(6 downto 0); hour:in std_logic_vector(5 downto 0); dp:out std_logic; daout:out std_logic_vector(3 downto 0); sel:OUT STD_LOGIC_vector(2 downto 0);END COMPONENT;COMPONENT deled PORT( nu

11、m:IN STD_LOGIC_vector(3 downto 0); led:out std_logic_vector(6 downto 0);END COMPONENT;signal enmin_re,enhour_re:std_logic;signal second_daout,minute_daout:std_logic_vector(6 downto 0);signal hour_daout:std_logic_vector(5 downto 0);signal seltime_daout:std_logic_vector(3 downto 0);signal ledout:std_l

12、ogic_vector(6 downto 0);begina=ledout(6);b=ledout(5);c=ledout(4);d=ledout(3);e=ledout(2);f=ledout(1);greset, clk=clk, setmin=setmin, enmin=enmin_re, daout=second_daout);u2:minute port map(clk=enmin_re, clk1=clk, reset=reset, sethour=sethour, enhour=enhour_re, daout=minute_daout);u3:hour port map(clk

13、=enhour_re, reset=reset, daout=hour_daout);u4:alert port map(clk=clk, dain=minute_daout, speak=speaker, lamp=lamp);u5:seltime port map(clk=clkdsp, reset=reset, sec=second_daout, min=minute_daout, hour=hour_daout, daout=seltime_daout, dp=dpout, sel=sel);u6:deled port map(num=seltime_daout, led=ledout

14、);end a;7.2、秒计数器(second.vhd) 为底层文本LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY second IS PORT( clk,reset,setmin:IN STD_LOGIC; enmin:OUT STD_LOGIC; daout:out std_logic_vector(6 downto 0);END entity second;ARCHITECTURE fun OF second IS SIGNAL count:STD_LOGIC_VECTOR(6

15、 downto 0); SIGNAL enmin_1,enmin_2:STD_LOGIC;BEGIN daout=count; enmin_2=(enmin_1 or enmin_2); enmin=(enmin_1 or enmin_2);process(clk,reset,setmin)begin if(reset=0)then count =0000000; elsif(clkevent and clk=1)then if(count(3 downto 0)=1001)then if(count=16#60#)then if(count=1011001)then enmin_1=1;co

16、unt=0000000; else count=count+7; end if; else count=0000000; end if; elsif(count16#60#)then count=count+1; enmin_1=1after 100 ns; else count=0000000; end if; end if;end process;END fun;7.3分计数器(minute.vhd) 为底层文本LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY minute IS

17、PORT( clk,clk1,reset,sethour:IN STD_LOGIC; enhour:OUT STD_LOGIC; daout:out std_logic_vector (6 downto 0);END entity minute;ARCHITECTURE fun OF minute IS SIGNAL count:STD_LOGIC_VECTOR (6 downto 0); SIGNAL enhour_1,enhour_2:STD_LOGIC;BEGIN daout=count; enhour_2=(sethour and clk1); enhour=(enhour_1 and

18、 enhour_2);process(clk,reset,sethour) begin if(reset=0)then count=0000000; elsif(clk event and clk=1)then if(count(3 downto 0)=1001)then if(count16#16#)then if(count=1011001)then enhour_1=1; count=0000000;ELSE count=count+7; end if; else count=0000000; end if; elsif(count16#16#)then count=count+1; e

19、nhour_1=0after 100 ns; else count=0000000; end if; end if; end process; END fun; 7.4小时文本(hour.vhd) 为底层文本HOURLIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY hour IS PORT( clk,reset: IN STD_LOGIC; daout: out std_logic_vector (5 downto 0);END entity hour;ARCHITECTURE fun

20、 OF hour IS SIGNAL count: STD_LOGIC_VECTOR( 5 downto 0);BEGIN daout = count; process ( clk,reset) begin if (reset=0) then count = 000000; elsif (clk event and clk=1) then if (count(3 downto 0)=1001) then if (count 16#23#) then count=count + 7; else count=000000; end if; elsif(count 16#23#) then coun

21、t = count + 1; else count=000000; end if; end if; end process;END fun;7.5时间数据扫描分时选择模块文本(seltime.vhd) 为底层文本LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;ENTITY seltime IS PORT( clk1, reset: IN STD_LOGIC; sec,min : IN STD_LOGIC_VECTOR(6 downto 0)

22、; hour : in std_logic_vector (5 downto 0); daout : OUT STD_LOGIC_vector (3 downto 0); sel : out std_logic_vector ( 2 downto 0);END seltime;ARCHITECTURE fun OF seltime IS SIGNAL count: STD_LOGIC_vector ( 2 downto 0);BEGIN sel = count; process ( clk1,reset) begin if (reset =0) then count = 101) then c

23、ount = 000; else count daout daout(3) = 0; daout(2 downto 0) daout daout(3) = 0; daout(2 downto 0) daout daout(3 downto 2) = 00; daout(1 downto 0) = hour(5 downto 4); end case; end process;end fun;八、总结 在同学帮助下,我终于把数字钟做出来,能够成功地实现计数和校时校分的功能。通过此次课程设计让我明白了理论是实践的基础,实践让自己更好地去掌握理论。让我懂得了做事要有锲而不舍的精神,朝着自己的目标奋斗

24、,坚持不懈 ,以后我要脚踏实地一步一个脚印的去学习理论与实践,多动手,多思考,多反思。计算机与信息工程学院课程设计成绩单课程名称: 指导教师: 姓名性别学号班级综合成绩成绩等级程序运行情况(占总成绩20%)能正确运行 基本能正确运行 能运行但结果不完善(20分) (15分) (10分)程序功能的完善程度(占总成绩10%)完善 基本完善 不完善(10分) (8分) (5分)程序结构的合理性(占总成绩10%)合理 基本合理 不太合理(10分) (8分) (5分)对问题的答辩情况(占总成绩40%)概念正确有创新 能正确回答所有问题 基本能正确回答(40分) (35分) (30分)部分问题回答概念不清晰(20分)学生的工作态度与独立工作能力(占总成绩10%)工作态度认真能独立完成任务 工作态度认真但独立性较差(10分) (8分)工作态度基本认真但缺乏独立性(5分)设计报告的规范性(占总成绩10%)符合规范 基本符合规范 规范性较差(10分) (8分) (5分)优秀:90分100分 良好:80分89分 中等:7079分 及格:6069分 不及格0分59分 计算机与信息工程学院计算机与信息技术实验中心制表

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1