数字逻辑课设--多功能数字钟(顶层图放大了看)

合集下载

数字电子技术课程设计--多功能数字钟

数字电子技术课程设计--多功能数字钟

目录第一章设计任务 (4)1.1 设计题目及要求 (4)1.1.1 题目 (4)1.1.2 设计要求 (4)第二章方案设计 (5)2.1 总体方案说明 (5)2.2 模块结构以及总体方框图 (5)第三章单元电路设计与原理说明 (6)3.1 按键消抖电路的设计 (6)3.1.1 RS触发器消抖 (6)3.2 分频器的设计 (7)3.2.2 1000分频器 (7)3.3基础电子钟及其显示设计 (8)3.3.1 时钟计数器 (8)3.3.2 功能选择及校准 (9)3.4整点报时器的设计 (10)3.5数码管显示切换电路的设计 (11)3.6 闹钟及其显示的设计 (12)第四章整机电路图及说明 .............................................................. 错误!未定义书签。

4.1整体电路图及说明................................................................................ 错误!未定义书签。

第五章电路仿真 (15)5.1基本时钟电路及其时间设置功能仿真 ................................................ 错误!未定义书签。

5.1.1基本计时功能的仿真............................................................. 错误!未定义书签。

5.1.2时间设置功能的仿真............................................................. 错误!未定义书签。

5.2整点报时功能的仿真............................................................................ 错误!未定义书签。

多功能数字钟

多功能数字钟

电子技术课程设计多功能数字钟学院:专业、班级:姓名:学号:指导老师:2008年12月目录1、设计任务与要求 (2)2、总体框图 (2)3、选择器件 (2)4、功能模块 (3)(1)时钟记数模块 (3)(2)整点报时驱动信号产生模块 (6)(3)八段共阴扫描数码管的片选驱动信号输出模块 (7)(4)驱动八段字形译码输出模块 (9)5、总体设计电路图 (10)(1)仿真图 (10)(2)电路图 (11)(3)管脚图 (11)6、设计心得体会 (12)一、设计任务与要求1、具有时、分、秒记数显示功能,以24小时循环计时。

2、要求数字钟具有清零、调节小时、分钟功能。

3、具有整点报时,整点报时的同时LED灯花样显示。

二、总体框图多功能数字钟总体框图如下图所示。

它由时钟记数模块(包括hour、minute、second 三个小模块)、驱动8位八段共阴扫描数码管的片选驱动信号输出模块(seltime)、驱动八段字形译码输出模块(deled)、整点报时驱动信号产生模块(alart)。

系统总体框图三、选择器件网络线若干/人、共阴八段数码管6个、蜂鸣器、hour(24进制记数器)、minute(60进制记数器)、second(60进制记数器)、alert(整点报时驱动信号产生模块)、seltime(驱动8位八段共阴扫描数码管的片选驱动信号输出模块)、deled(驱动八段字形译码输出模块)。

四、功能模块多功能数字钟中的时钟记数模块、驱动8位八段共阴扫描数码管的片选驱动信号输出模块、驱动八段字形译码输出模块、整点报时驱动信号产生模块。

(1) 时钟记数模块:<1.1>该模块的功能是:在时钟信号(CLK)的作用下可以生成波形;在清零信号(RESET)作用下,即可清零。

VHDL程序如下:LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity hour isport(clk,reset:in std_logic;daout:out std_logic_vector(5 downto 0));end entity hour;architecture fun of hour issignal count:std_logic_vector(5 downto 0);begindaout<=count;process(clk,reset)beginif(reset='0') thencount<="000000";elsif(clk' event and clk='1') thenif(count(3 downto 0)="1001") thenif(count<16#24#) thencount<=count+7;else count<="000000";end if;elsif(count<16#23#) thencount<=count+1;else count<="000000";end if;end if;end process;end fun;<1.2>VHDL程序如下:LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity minute isport(clk,clk1,reset,sethour:in std_logic;enhour:out std_logicdaout:out std_logic_vector(6 downto 0));end entity minute;architecture fun of minute issignal count:std_logic_vector(6 downto 0); begindaout<=count;process(clk,reset,sethour)beginif(reset='0') thencount<="0000000";elsif(sethour='0') thenenhour<=clk1;elsif(clk' event and clk='1') thenif(count(3 downto 0)="1001") thenif(count<16#60#) thenif(count="1011001") thenenhour<='1';count<="0000000"; else count<=count+7;end if;elsecount<="0000000";end if;elsif(count<16#60#) thencount<=count+1;enhour<='0';elsecount<="0000000";end if;end if;<1.3>VHDL程序如下:LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY second ISPORT(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 ISSIGNAL count:STD_LOGIC_VECTOR(6 downto 0); BEGINdaout<=count;process(clk,reset,setmin)beginif(reset='0') thencount<="0000000";elsif(setmin='0')thenenmin <=clk;elsif(clk'event and clk='1')thenif(count(3 downto 0)="1001")thenif(count<16#60#)thenif(count="1011001")thenenmin<='1';count<="0000000";ELSE count<=count+7;end if;elsecount<="0000000";end if;elsif(count<16#60#)thencount<=count+1;enmin<='0';elsecount<="0000000";end if;end if;end process;END fun;(2)整点报时驱动信号产生模块该模块功能:在时钟信号(CLK)的作用下可以生成波形,SPEAK输出接扬声器,以产生整点报时发声。

数字逻辑电路课设—简易数字钟设计

数字逻辑电路课设—简易数字钟设计

数字逻辑电路课程设计报告多功能数组钟设计一、设计要求:通过Maxplus II使用VHDL语言编写设计一款多功能数字钟,具体功能如下:1、时钟时,分,秒分别显示且能正确计数。

2、整点报时,时钟在将要到达整点的最后十秒,给予蜂鸣提示。

3、校时,可以通过相应开关按钮对时钟的时分秒进行调整。

4、闹钟,用户可以预设闹铃时刻,当时间到达该时刻时,发出蜂鸣提示。

二、总体设计:1、设计框图:2、外部输入输出要求:外部输入要求:输入信号有1024Hz时钟信号、低电平有效的秒清零信号CLR、低电平有效的调分信号SETmin、低电平有效的调时信号SEThour;外部输出要求:整点报时信号SOUND(59分51/3/5/7秒时未500Hz低频声,59分59秒时为1kHz高频声)、时十位显示信号h1(a,b,c,d,e,f,g)、时个位显示信号h0(a ,b,c,d,e,f,g)、分十位显示信号m1及分个位m0、秒十位s1及秒个位s0;数码管显示位选信号SEL0/1/2等三个信号。

3、各模块功能:1)FREQ分频模块:整点报时用的1024Hz与512Hz的脉冲信号,这里的输入信号是1024Hz信号,所以只要一个二分频即可;时间基准采用1Hz输入信号直接提供(当然也可以分频取得,这里先用的是分频取得的信号,后考虑到精度问题而采用硬件频率信号。

2)秒计数模块SECOND:60进制,带有进位和清零功能的,输入为1Hz脉冲和低电平有效的清零信号CLR,输出秒个位、时位及进位信号CO。

3)分计数模块MINUTE60进制,带有进位和置数功能的,输入为1Hz脉冲和高电平有效的使能信号EN,输出分个位、时位及进位信号CO。

4)时计数模块HOUR:24进制,输入为1Hz脉冲和高电平有效的使能信号EN,输出分个位、时位。

5)扫描模块SELTIME:输入为秒(含个/十位)、分、时、扫描时钟CLK1K,输出为D和显示控制信号SEL。

6)整点报时功能模块ALERT:输入为分/秒信号,输出为高频声控Q1K和Q500。

多功能数字钟(课程设计版)

多功能数字钟(课程设计版)

题目: 多功能数字钟电路设计器材:74LS390,74LS48,数码显示器BS202, 74LS00 3片,74LS04,74LS08,电容,开关,蜂鸣器,电阻,导线要求完成的主要任务:用中、小规模集成电路设计一台能显示日、时、分秒的数字电子钟,要求如下:1.由晶振电路产生1HZ标准秒信号。

2.秒、分为00-59六十进制计数器。

3.时为00-23二十四进制计数器。

4.可手动校正:能分别进行秒、分、时的校正。

只要将开关置于手动位置。

可分别对秒、分、时进行连续脉冲输入调整。

5.整点报时。

整点报时电路要求在每个整点前鸣叫五次低音(500HZ),整点时再鸣叫一次高音(1000HZ)。

时间安排:指导教师签名:年月日系主任(或责任教师)签名:年月日索引摘要 (3)Abstract (3)1系统原理框图 (5)2方案设计与论证 (6)2.1时间脉冲产生电路 (6)2.2分频器电路 (9)2.3时间计数器电路 (10)2.4译码驱动及显示单元电路 (11)2.5校时电路 (12)2.6报时电路 (13)3单元电路的设计 (14)3.1时间脉冲产生电路的设计 (14)3.2计数电路的设计 (15)3.2.1 60进制计数器的设计 (15)3.2.2 24进制计数器的设计 (15)3.3译码及驱动显示电路 (16)3.4 校时电路的设计 (17)3.5 报时电路 (18)3.6电路总图 (20)4仿真结果及分析 (21)4.1时钟结果仿真 (21)4.2 秒钟个位时序图 (21)4.3报时电路时序图 (22)4.4测试结果分析 (22)5心得与体会 (23)6参考文献 (24)附录1原件清单 (25)附录2部分芯片引脚图与功能表 (26)摘要多功能数字钟具有时间显示、闹钟设置、环境温度测量、电网电压、电网频率显示,闹铃控制和电网电压的过压、欠压报警等功能,深受人们欢迎。

数字钟是采用数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。

数字逻辑课程设计报告 电子钟

数字逻辑课程设计报告 电子钟

数字逻辑课程设计报告电子钟数字逻辑课程设计报告-电子钟数字逻辑电路―课程设计报告数字逻辑课程设计报告-----多功能数字钟的同时实现一.设计目的:1.学会应用领域数字系统设计方法展开电路设计。

2.进一步提高maxplusii软件开发应用领域能力。

3.培育学生综合实验能力。

二.实验仪器与器材:1、开发软件maxplusii软件2、微机3、isp实验板se_3型isp数字实验开发系统4、打印机三.实验任务及建议设计一个多功能数字钟:1.能进行正常的时、分、秒计时功能。

1)用m6m5展开24十进制小时的表明;2)用m4m3展开60十进制分的表明;3)用m2m1进行60进制秒的显示。

2.利用按键实现“校时”、“校分”和“秒清单”功能。

1)按下sa键时,计时器快速递减,按24小时循环,并且计满23时返回00。

2)按下sb键时,计时器迅速递增,按60小时循环,并且计满59时回到00,但不向时进位。

3)按下sc,秒清零。

建议按下“sa”或“sb”均不能产生数字LBP(“sa”、“sb”按键就是存有晃动的,必须对“sa”“sb”展开窭晃动处置。

)3.能够利用实验板上的扬声器并作整点报时功能。

1)当计时到达59分50秒时开始报时,在59分50、52、54、56、58秒鸣叫,鸣叫声频为500hz。

2)抵达59分后60秒时为最后一声整点报时。

整点报时的频率为1kz。

4.能够惹出时1)闹时的最小时间间隙为10分钟。

2)惹出时长度为1分钟。

3)惹出时声响就是单频的。

5.用maxplusii软件设计符合以上功能要求的多功能数字钟,并用层次化设计方法设计该电路。

1)通过语言同时实现各模块的功能,然后再图画出高电路的顶层图。

2)消抖电路可以通过设计一个d触发器来实现,sa、sb、sc等为包含抖动的诸如信号,而电路的输出则是一个边沿整齐的输出信号。

3)其他的计时功能、表明功能、多路挑选功能、分频功能、报时功能和惹出时等功能模块都用vhdl语言实现。

多功能数字钟电路设计【PPT课件】PPT课件

多功能数字钟电路设计【PPT课件】PPT课件

3取27晶68振构频Hz的成率,频因振越率其荡高为内器,计电时路精。度一2越2J般M高T 来。说,振荡1R50器k的
部有15级2分频集
成电路,所以输出
32768Hz
端正好可得到1Hz 的标准脉冲
C1 3/22pF
C2 20pF
5
1. 振荡器的设计
+5V R1 2k
如果精度要求 不高也可以采用第
3
三、主体电路的设计与装调
主体电路是由功能部件或单元电路 组成的。在设计这些电路或选择部件时, 尽量选用同类型的器件,如所有功能部件 都采用TTL集成电路或都采用CMOS集成 电路。整个系统所用的器件种类应尽可 能少。下面介绍各功能部件与单元电路 的设计。
4
1. 振荡器的设计
子手如表图集所成示振电为路荡电(器是数字钟的1 核心。振荡1器 vo 体如振5C荡7的钟0器2)稳计电中路定时的,度的晶常及准频 确率 程的 度精,通R确常F 度选决用定石了英数晶字体
Q3
7 4 L S 9 0 (3 )
C P A C P B R 0(1) R 9(1)
10
四、功能扩展电路的设计
定时控制电路的设计 仿广播电台正点报时电路的设计 报整点时数电路的设计 触摸报整点时数电路的设计
11
1. 定时控制电路的设计
例 要求上数午字7钟时在59指分定发的出时闹刻时发信出号信,持号续, 时间 为1分或钟驱。动音响电路“闹时”;或对某 解 7时装5置9的分电对源应进数行字接钟通的或时断个开位“计控数器的状态 为(Q制3Q”2Q。1Q 0)H1=0111,分十位计数器的状态 为(Q3Q2Q不1Q管0)是M2闹=0时10还1是,分控个制位,都计要数求器时的状态为 (Q3Q间2Q准1Q确0)M,即1=信10号01的。开若始将时上刻述与计持数续器时输出为 “1”的间所必有须输满出足端规经定过的与要门求电。路去控制音响电 路,可以使音响电路正好在7点59分响,持续1分 钟后(即8点时)停响。

数电课程设计--多功能时钟

数电课程设计--多功能时钟

数电课程设计系:.电子信息与计算机科学系 . 专业:. 自动化 . 班级:. 文自112-2班 . 姓名:. 桑*超 . 学号:. 2011905192** .数字逻辑与数字系统课程设计——24小时制时钟一、实验目的:1了解多功能数字电子钟的工作原理。

2 学习数字系统设计中自顶向下的设计方法。

3加深利用EDA技术实现数字系统的体会。

实验结果基本要求:1、能够正确的连线及下载。

2、能够完成以秒为最小及时单位的时钟设计。

3、时钟能够正常调整时、分、秒的时间。

扩展部分:∙能够完成整点报时的功能。

∙能够完成预设闹钟的功能。

二、基本功能图:正常的计时功能正常的调时功能正常的显示功能扩展功能图:※整点报时功能※闹钟定时功能3、整体上有几个模块计时功能模块:它是由两个60进制计数器和一个24进制计数器连接成的。

构成了时钟正常的计时功能。

当到达59秒钟的时候,当再来一个CP脉冲的时候,将自动进位,使分针上加一。

分针也是一样。

当时针到达23点59分59秒的时候,当再次来一个CP脉冲时候,又转化为0点0分0秒。

调时功能模块:调分有效时,按动分钟调节键,分针加一;调时有效,按动小时调节键,时针加一。

整点报时与闹钟功能模块:时间每走到一个整点,蜂鸣器发出响声;扩展部分可以按预定的时间让蜂鸣器鸣叫。

在闹钟定时显示状态下,按下set键,进入闹钟的“时”设置状态,之后按下闹钟的‘k’键,进入闹钟的分设置状态,再按下‘k’键进入秒设置状态,再次按下‘k’键,又回到闹钟的定时显示状态。

三、各模块程序、符号图、仿真图模块一:24进制library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity v_cnt24 isport(clk,en,reset : in std_logic;ql,qh : buffer std_logic_vector(3 downto 0);co : out std_logic );end v_cnt24 ;architecture one of v_cnt24 isbeginco<='1' when(ql="0011"and qh="0010"and en='1') else '0' ;process (clk,reset)beginif(reset='0')thenql<="0000";qh<="0000";elseif(clk'event and clk='1' ) thenif( en='1')thenif(ql="0011"and qh="0010") thenql<="0000";qh<="0000";elsif(ql="1001") thenql<="0000";qh<=qh+'1';elseql<=ql+'1';end if;end if;end if;end if ;end process;end one ;模块二:60进制library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity v_cnt60 isport(clk,reset,en : in std_logic;ql,qh : buffer std_logic_vector(3 downto 0);co : out std_logic );end v_cnt60;architecture one of v_cnt60 isbeginco<='1' when (ql="1001" and qh="0101" and en='1' ) else'0';process(clk,reset)beginif(reset='0') thenql<="0000";qh<="0000";elsif (clk'event and clk='1')thenif(ql="1001"and qh="0101")thenql<="0000";qh<="0000";elsif(ql="1001")thenql<="0000";qh<=qh+1;elseql<=ql+1;end if ;end if;end process ;end one;模块三:二选一选择器;当sel=’1’时,选择输出a,否则输出b。

数字逻辑EDA电子钟课程设计报告

数字逻辑EDA电子钟课程设计报告

多功能数字钟设计说明:1.系统顶层框图:各模块电路功能如下:1.秒计数器、分计数器、时计数器组成最根本的数字钟,其计数输出送7段译码电路由数码管显示。

2.基准频率分频器可分频出标准的1HZ频率信号,用于秒计数的时钟信号;分频出4HZ频率信号,用于校时、校分的快速递增信号;分频出64HZ频率信号,用于对按动"校时〞,"校分〞按键的消除抖动。

2.多功能数字钟构造框图:一、系统功能概述已完成功能1.完成时/分/秒的依次显示并正确计数,利用六位数码管显示;2.时/分/秒各段个位满10正确进位,秒/分能做到满60向前进位,有系统时间清零功能;3.定时器:实现整点报时,通过扬声器发出上下报时声音;4.时间设置,也就是手动调时功能:当认为时钟不准确时,可以分别对分/时钟进展调整;5.闹钟:实现分/时闹钟设置,在时钟到达设定时间时通过扬声器响铃。

有静音模式。

待改良功能:1. 系统没有万年历功能,正在思考设计方法。

2. 应添加秒表功能。

二、系统组成以及系统各局部的设计1.时计数模块时计数模块就是一个2位10进制计数器,记数到23清零。

VHDL的RTL描述如下:----t_h.vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entityt_h isport(en,clk,clr:in std_logic;dout:out std_logic_vector(7 downto 0);c:out std_logic);endt_h;architecture rtl oft_h issignal t:std_logic_vector(7 downto 0);beginprocess(en,clk,clr)variable t:std_logic_vector(7 downto 0);beginif en='1' then --异步使能if clk 'event and clk='1' thent:=t+1;if t(3 downto 0)=*"A" then --个位等于10则十位加1t(7 downto 4):=t(7 downto 4)+1;t(3 downto 0):=*"0"; --个位清零end if;if t>*"23" then --大于23清零t:=*"00";end if;end if;if clr='1' then --异步清零t:=*"00";end if;end if;dout<=t;end process;end rtl;时计数器模块仿真波形如下从仿真波形可知,当计数到23时,下一个时钟上升沿到来时就清零了,符合设计要求。

多功能数字钟电路设计 - 多功能数字中电路设计

多功能数字钟电路设计 - 多功能数字中电路设计

多功能数字钟电路设计一功能要求1 基本功能:⑴准确计时,以数字形式显示时、分、秒的时间;⑵小时的计时要求为24进位,分和秒的计时要求为60进位;⑶校正时间,时、分快校(1HZ)。

2 扩展功能:⑴定时报,时间自定,闹1分钟(1KHZ);⑵仿广播电台正点报时;⑶报整点时数;二主体电路设计数字钟电路系统由主体电路和扩展电路两大部分组成。

其中,主体电路完成数字钟的基本功能,扩展电路完成数字钟的扩展功能。

其组成框图如下:显示器及译码器部分为板载,因此只需要设计计数器,校时电路和扩展电路。

1.小时计数器时计数器是一个24进制计数器,其计数规律为00—01—…—22—23—00…即当数字钟运行到23时59分59秒时,秒的个位计数器再输入一个秒脉冲时,数字钟应自动显示为00时00分00秒。

原理图如下:使用了两片74LS161(4位二进制同步加法计数器)来实现小时计数,即模24的计数器。

HOUR[0]~HOUR[3]为小时个位,HOUR[4]~HOUR[7]为小时十位。

2. 分秒计数器分和秒计数器都是模60的计数器。

其计数规律为00—01—…—58—59—00…其原理图如下:秒计数器与上图相同,图略。

分别使用了两片74LS161来实现分和秒的计数,均为。

其中MIN[0]~MIN[3]为分个位,MIN[4]~MIN[7]为分时位,SEC[0]~SEC[3]为秒个位,SEC[4]~SEC[7]为秒时位。

3. 校时电路当数字钟接通电源或者计数出现误差时,需要校正时间(或称校时)。

校时是数字中应具备的基本功能。

为使电路简单,这里只进行分和小时的校时。

对校时电路的要求是,在小时校正时不影响分和秒的正常计数;再分校正时不影响秒和小时的正常计数。

校时方式有“快校时”和“慢校时”两种,“快校时”是,通过开关控制,使计数器对1Hz的校时脉冲计数。

“慢校时”使用手动产生单脉冲作校时脉冲。

本实验只要求实现“快校时”。

其原理图如下:4. 定时控制电路数字钟在指定的时刻发出信号,或驱动音响电路“闹时”。

数字逻辑电路设计-多功能数字钟综述

数字逻辑电路设计-多功能数字钟综述

数字逻辑电路设计-多功能数字钟多功能数字钟摘要:实验作品名为多功能数字钟,具有校时、清零、保持、整点报时、闹钟五大功能。

整个实验以QuartusII 7.0为软件设计基础,结合Altera公司研发的Cyclone系列可编程逻辑器件工具箱进行实际测试。

整个数字钟的开发完全遵照自顶向下的设计方法,这个设计因为该方法可移植性强、逻辑符合一般规律、可多人共做等优点而得以为设计人员省去大量时间和精力。

本作品在防抖动电路和蜂鸣器鸣响时长控制上拥有一定的自主创新性和理论证明,同时由于整个设计过程当中适当地对每个器件进行了有机的封装,所以电路图的逻辑关系较为清晰。

现在数字钟因其在日常生活生产中的作用而成为可盈利的商品,在金钱的驱动下数字钟的设计方法与本实验作品相比功能和效率上都有非常大的提升,故本实验的目的在于让设计者充分了解数字逻辑电路设计的流程和具体软件的使用方法。

关键词:数字钟,可编程逻辑器件,防抖动电路,学习型设计The design of Multifunctional digital clock Abstract: This experimental product is called Multifunctional digital clock. It has five major functions such as time setting, resetting, holding, alarming, andbeeping when it comes to an addition to the hour. The whole experiment isbased on the software of design called Quartus II 7.0 and is tested bycombining the Cyclone series of programmable logical device provided byAltera. The clock is designed under the process of ‘from the top to the end’.The method spares designers lots of time and energy for its flexibility to betransplanted, easiness for ordinary logic reasoning and availability forcooperative designing. The product is self-creative and provable in terms ofturbulence muting and manipulation of the period of beeping. At the sametime, the diagrams of the circuits are apparently logical thanks towell-organized sealing of each part of device during the design. In this eraof common concept of inexpensiveness of digital clocks, methods andeffectiveness of designing a clock are improved due to its profitability.Hence, this experimental design is aimed at letting the participants tounderstand the process of digital logic circuits designing and to get tofamiliar with the usage of particular software.Keyword: Digital Clock, programmable logic device, mute circuit, design for learning目录一.设计要求与说明 (4)二.方案论证 (4)1.设计整体思路2.设计大体流程三.各子模块设计原理与调试仿真 (5)1.时钟发生器 (5)2.计时电路 (7)3.显示电路 (9)4.校分电路和清零电路 (12)5.报时电路 (13)6.储时电路 (15)7.选择电路 (16)8.闹钟比较电路 (16)9.其他 (17)四.编程下载1.整体电路图 (18)2.管脚配置 (19)3.编译调试 (19)五.实验感想一.设计要求与说明1、能进行正常的时、分、秒计时功能2、分别由六个数码管显示时分秒的计时3、使能开关4、清零开关5、校分开关6、校时开关7、使时钟具有整点报时功能(当时钟计到59’53”时开始报时,在59’53”, 59’55”,59’57”时报时频率为512Hz,59’59”时报时频率为1KHz, )8、闹表设定功能9、自己添加其他功能二.方案论证1.设计整体思路图1数字钟的功能设计思路大致如图1时钟发生电路:位计时电路提供频率为1HZ的稳定脉冲,该电路是整个时钟是否精准的关键计时电路:由时钟发生器驱动,存储并演绎时间的流逝储时电路(闹钟):储存一个固定的时间选择电路:由输入端控制调校或显示储时电路和计时电路中的一个显示电路:将两个时间电路的输出信号调制成可输出的信号报时电路:根据时间信号以一定的模式输出符合要求的蜂鸣器驱动信号校分电路:使时间电路脱离时钟驱动并以累加的方式分别调校时与分清零电路:使时钟电路的所有信号归零2设计大体流程1)设计时钟发生电路与计时电路2)连接两个模块并调试电路,分别用LED灯检测时分秒的运行状况3)设计显示电路并单独调试4)连接时钟电路和显示电路并调试,整体调试时钟电路5)设计校分电路和清零电路并连接调试6)设计报时电路并单独调试7)连接报时与时钟电路,利用已调校好的调分清零电路调校报时电路的功能8)设计储时电路(在计时电路上适当修改)9)设计选择电路将计时电路和储时电路连接,调校选择电路以保证时间与调校显示的接口功能正常10)整体调试并增加诸如防抖动等优化电路三.各子模块的设计原理与调试1.时钟发生器图2时钟发生器设计思路大致如图21)十六分频电路由四个T触发器异步连接而成2)图3实时(timing)仿真如图4图4有仿真图波形可初步断定用4*T触发器一步连接对高频信号进行16分频是不会产生明显延迟和错位现象3)一千分频电路由三个十进制加法计数器连接而成,连接方式是:低位计数器的QD端与高位计数器的CLK端相连图5为方便今后对十分频器的使用在此对其进行了封装,仿真波形图如下图6输入波周期为10ns,由图6所示仿真图中的时间条可看出,在Timing 模式下1000分频电路对高频信号几乎无延迟与错位,同时可看出该分频器的占空比为1:10。

课程设计--多功能数字钟电路设计

课程设计--多功能数字钟电路设计

2009—2010学年第二学期数字电子技术课程设计报告专业班级自动化08—2班姓名学号开课系室电工电子学教学中心设计日期 2010年8月23日~27日设计题目:多功能数字钟电路设计一、设计任务及要求:本次课程设计任务是设计一个多功能数字钟。

具体要求是:1.钟表的工作机理,整个钟表的工作应该是在1Hz信号的作用下进行,这样每来一个时钟信号,秒增加1秒,当秒从59秒跳转到00秒时,分钟增加1分,同时当分钟从59分跳转到00分时,小时增加1小时,但是需要注意的是,小时的范围是从0~23时。

2.小时-分钟-秒钟。

3.整点报时,在整点前5秒LED开始按照1HZ频率闪烁,过整点后,停止闪烁。

4.调整时间的按键用按键模块的S1和S2,S1调节小时,每按下一次,小时增加一个小时,S2调整分钟,每按下一次,分钟增加一分钟。

另外用S8按键作为系统时钟复位,复位后全部显示00-00-00。

二、设计原理与方案:(一)、顶层设计方案:(包括原理框图及其工作原理说明等内容)图1 原理框图工作原理说明:clk用于输入50MHZ时钟,s1用于给小时加1,s2用于给分钟加1,s8用于复位。

分频器分出三个频率的时钟,clkout1输出1HZ,clkout2输出1千HZ,clkout1输出2HZ。

控制器输入端口t1用于控制灯闪烁,输出端口led接小灯,ss1、ss2、reset分别储存s1、s2、s8的值并将其传给计数器。

计数器输出端口shis表示小时的十位,shig表示小时的各位,mins表示分钟的十位,ming表示分钟的个位。

secs表示秒的十位,secg表示秒的个位。

显示器输出端口leds接七段数码管,wei接数码管的控制端。

当clkout1出现上升沿时,秒执行加1或进位操作,若秒进位,则分钟执行加1或进位操作,若分秒都进位,则小时进行加1或进位操作。

小时进位前5秒,灯开始以1HZ频率闪烁。

按下s1时小时加1或进位,按下s2时分钟加1或进位,若分钟进位,小时同时进行加1或进位操作。

多功能数字钟电路设计指导书及仿真图

多功能数字钟电路设计指导书及仿真图

课题一数字电子钟逻辑电路设计一、简述数字电了钟是•种用数字显示秒、分、时、日的计时装置,与传统的机械钟相比,它具有走时准确,显示宜观、无机械传动装置等优点,因而得到了广泛的应用。

小到人们日常生活中的电f•手农,大到车站、码头、机场等公共场所的大型数显电了钟。

数字电了钟的电路组成方框图如图所示。

显示器显示器显示器显示器译码器译码器译码器译码器7进制周24进制时60进制分60进制秒计数器计数器计数器计数日时分秒1H分频晶体振荡单次或连续脉冲图敌字电子钟框图由图可见,数字电了钟由以下几部分组成:石英晶体振荡器和分频器组成的秒脉冲发生器:校时电路: 六十进制秒、分计数器,二十四进制(或十二进制)计时计数器:秒、分、时的译码显示部分等。

二、设计任务和要求用中、小规模集成电路设计•台能显示日、时、分、秒的数字电了•钟,要求如下:1.由晶振电路产生1Hz标准秒信号。

2.秒、分为00、59六十进制计数器。

3.时为00〜23二十四进制计数器。

4.周显示从1〜日为七进制计数器。

可手动校时:能分别进行秒、分、时、日的校时。

只要将开关置于手动位置,可分别对5・秒、分、时、日进行手动脉冲输入调整或连续脉冲输入的校正。

6.整点报时。

整点报时电路要求在每个整点前呜叫五次低音(500Hz),整点时再呜叫•次高音(1000Hz)o三.可选用器材1.通用实验底板2.直流稳压电源3.集成电路:CD4060、74LS74. 74LS161. 74LS248 及门电路4.晶振:32768 Hz5•电容:100 U F/16V> 22pF、3〜22pF 之间6•电阻:200 Q x 10KQ、22MQ7.电位器:Q或Q8.数显:共阴显示器LC5011-119.开关:单次按键10.三极管:8050喇叭:1W/4, 8Q四、设计方案提示根据设计任务和耍求,对照数字电/钟的框图,可以分以下几部分进行模块化设计。

1.秒脉冲发生器脉冲发生器是数字钟的核心部分,它的持度和稳定度决定了数字钟的质量,通常用晶体振荡器发出的脉冲经过整形、分频获得1HZ的秒脉冲。

数字逻辑与数字系统课程设计--多功能数字钟

数字逻辑与数字系统课程设计--多功能数字钟

一、设计要求1.具有以二十四小时制计时、显示、整点报时、时间设置公能。

2.精度要求为1s。

二、系统功能简介1.计时:正常工作状态下每天按24小时制计时并显示,蜂鸣器无声,逢整点报时。

2.整点报时:蜂鸣器在59分钟的51、53、55、57、59秒时发出频率为512hz的低音,在59秒时发出1024hz的高音,结束时为整点。

3.显示:要求采用扫描显示方式驱动8个LED数码管显示小时、分、秒、横线。

4.调时和校时:当开关处于“k1”、“k2”处于“1”时正常计时,当k1处于“0”位置时可以对小时校时,当k2处于“0”位置时可以对分钟进行校时。

另外对六十进制计数器加了一个清零端,可以进行秒的复位。

三、系统简介1.开发系统:windows xp/982.开发软件:MAX+PIUS II3.开发芯片:EP1K10TC100—3四、主要模块简介此系统由计时调时模块、闹钟模块、定时模块、动显模块和分频模块组成。

数字钟系统总体结构框图:1 分频器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fenpin isport (clk :in std_logic;f1024,f512,f4,f1 :out std_logic);end fenpin ;architecture behav of fenpin issignal q:std_logic_vector(9 downto 0);beginprocess(clk,q)beginif(clk'event and clk='1')thenif(q="1111111111")thenq<="0000000000";elseq<=q+1;报时 控制电路 控 计时校时 控制电路 显示 控制电路 整点报时 电路扫描显示 电路end if ;end if ;f1024<=clk;f512<=q(0);f4<=q(7);f1<=q(9);end process;end behav;2 二选一数据选择器library ieee;use ieee.std_logic_1164.all;entity mux2_1 isport(d0,d1,sel:in std_logic;q :out std_logic);end mux2_1;architecture amux of mux2_1 issignal temp1,temp2,temp3 :std_logic; begincale:blockbegintemp1<=d0 and sel;--1正常计时temp2<=d1 and (not sel);--0调时temp3<=temp1 or temp2;q<=temp3;end block cale;end amux;324进制计数器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mo24 isport(clk:in std_logic;qh,ql:out std_logic_vector(3 downto 0));end mo24;architecture wc of mo24 issignal qhh,qll:std_logic_vector(3 downto 0); beginprocess(clk)beginif(clk'event and clk='1') thenif(qll="0010" and qhh="0011")thenqhh<="0000";qll<="0000";elsif(qhh="1001")thenqll<=qll+1;qhh<="0000";else qhh<=qhh+1;end if;end if;qh<=qhh;ql<=qll;end process;end wc;460进制计数器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity m60 isport(clk,clr:in std_logic;qh,ql:out std_logic_vector(3 downto 0);co:out std_logic);end m60;architecture wc of m60 issignal qhh,qll:std_logic_vector(3 downto 0); beginprocess(clk)beginif(clr='0') thenqll<="0000";qhh<="0000";elsif(clk'event and clk='1') thenif(qll="0101" and qhh="1001")thenqhh<="0000";qll<="0000";co<='1';elsif(qhh="1001")thenqll<=qll+1;co<='0';qhh<="0000";else qhh<=qhh+1;co<='0';end if;end if;qh<=qhh;ql<=qll;end process;end wc;58进制器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mo8 isport(clk:in std_logic;qh:out std_logic_vector(2 downto 0));end mo8;architecture wc of mo8 issignal qhh:std_logic_vector(2 downto 0);beginprocess(clk)beginif(clk'event and clk='1') thenif( qhh="111")thenqhh<="000";elseqhh<=qhh+'1';end if;end if;qh<=qhh;end process;end wc;68选1数据选择器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity mux81 isport(a0,a1,a2,a3,a4,a5,a6,a7:in std_logic_vector(3 downto 0);b:in std_logic_vector(2 downto 0);q:out std_logic_vector(3 downto 0));end mux81;architecture wc of mux81 issignal qq:std_logic_vector(3 downto 0); beginprocess(b)begincase b iswhen "000"=>qq<=a0;when "001"=>qq<=a1;when "010"=>qq<=a2;when "011"=>qq<=a3;when "100"=>qq<=a4;when "101"=>qq<=a5;when "110"=>qq<=a6;when "111"=>qq<=a7;when others=>qq<="0000";end case;q<=qq;end process;end wc;77段译码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity yima7 isport(d:in std_logic_vector(3 downto 0);y:out std_logic_vector(6 downto 0)); end yima7;architecture wc of yima7 isbeginprocess(d)begincase d iswhen"0000"=>y<="1111110";when"0001"=>y<="0110000";when"0010"=>y<="1101101";when"0011"=>y<="1111001";when"0100"=>y<="0110011";when"0101"=>y<="1011011";when"0110"=>y<="1011111";when"0111"=>y<="1110000";when"1000"=>y<="1111111";when"1001"=>y<="1111011";when others=>y<="0000001";end case;end process;end wc;8报时器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity baoshi isport (m1,m0,s1,s0: in std_logic_vector(3 downto 0); clk:in std_logic;q: out std_logic);end baoshi;architecture rt of baoshi isbeginprocess(m0,m1,s1,s0)beginif rising_edge(clk) thenif m1="0101"and m0="1001" and s1="0101" thenif s0="0001"or s0="0011"or s0="0101" or s0="0111"or s0="1001" thenq<='1';else q<='0';end if;else q<='0';end if;end if;end process;9 顶层模块组合:五相关图形(一) 1.控制模块仿真图2.计时控制模块仿真图4.显示驱动模块仿真图:5.动态显示仿真图:6.闹铃模块仿真图:五、设计感言。

数字逻辑课程设计数字时钟课程设计数电课程设计 数字电子技术

数字逻辑课程设计数字时钟课程设计数电课程设计 数字电子技术

数字逻辑课程设计课题名称数字时钟班级姓名指导教师日期 2008-6-24前言自从它被发明的那天起,就成为人们生活中必不可少的一种工具,尤其是在现在这个讲究效率的年代,时钟更是在人类生产、生活、学习等多个领域得到广泛的应用。

然而随着时间的推移,人们不仅对于时钟精度的要求越来越高,而且对于时钟功能的要求也越来越多,时钟已不仅仅是一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。

诸如闹钟功能、日历显示功能、温度测量功能、湿度测量功能、电压测量功能、频率测量功能、过欠压报警功能等。

钟表的数字化给人们的生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。

诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。

可以说,设计多功能数字时钟的意义已不只在于数字时钟本身,更大的意义在于多功能数字时钟在许多实时控制系统中的应用。

在很多实际应用中,只要对数字时钟的程序和硬件电路加以一定的修改,便可以得到实时控制的实用系统,从而应用到实际工作与生产中去。

因此,研究数字时钟及扩大其应用,有着非常现实的意义。

数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路.目前,数字钟的功能越来越强,并且有多种专门的大规模集成电路可供选择.目录前言 (2)目录 (2)题目 (2)摘要 (2)关键字 (3)设计要求 (3)正文 (3)1电路结构与原理图 (3)2数码显示器 (3)60进制计数和24进制计数 (4)校时 (7)振荡器 (8)3.计算、仿真的过程和结果 (9)鸣谢 (11)元器件清单 (11)参考文献 (11)总结与体会 (11)教师评语 (12)数字时钟的课程设计摘要:数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字逻辑电路设计课程设计多功能数字钟姓名:学号:班级:一、设计任务及要求 (2)二、多功能数字钟的总体设计框图 (2)三、设计方案 (3)计时模块 (3)校时模块 (4)整点报时模块+闹钟报时模块 (5)分频模块 (6)闹钟模块 (7)动态显示模块 (9)四、实验结果 (10)五、心得体会 (10)附录、顶层原理图 (11)一、设计任务及要求(1)拥有正常的时、分、秒计时功能。

(2)能利用实验板上的按键实现校时、校分及秒清零功能。

(3)能利用实验板上的扬声器做整点报时。

(4)闹钟功能。

(5)在maxplus Ⅱ中采用层次化设计方法进行设计。

(6)完成全部电路设计后在实验板上下载,验证设计课题的正确性。

二、多功能数字钟的总体设计框图秒模块reset分模块reset时模块reset 闹钟模块clk选择输出模块译码输出模块分频模块响铃模块三、设计方案根据总体框图,可以将整个系统分为6个模块来实现:分别是计时模块、校时模块、整点报时模块、分频模块、动态显示模块及闹钟模块。

计时模块此模块包括秒计数器、分计数器、时计数器以及功能按键的设计。

程序说明:用一个二十四进制计数器和两个六十进制计数器构成了时钟模块,只要给秒计数器一个1Hz时钟脉冲,则可以正常计时。

分的时钟脉冲以秒的进位来计,时的时钟脉冲以分的进位来计。

1)、六十进制计数器,我采用的是图形输入方式,采用同步置数的方式:生成器件后的图:2)、二十四进制计数器:生成器件后:校时模块校时模块设计实现校时、校分及秒清零功能:1)按下校时键,小时计数器迅速递增以调至所需小时位。

2)按下校分键,分计数器迅速递增以调至所需分位。

3)按下清零键,将秒计数器清零。

校时模块VHDL语言代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity set_54 isport(clk:in std_logic;setc:in std_logic;en:in std_logic;clk_out:out std_logic);end set_54;architecture one of set_54 isbeginprocess(en)begincase en iswhen '1'=>clk_out<=setc; ---当开关信号为1时,给设置时钟的频率脉冲when others=>clk_out<=clk; ---当其他情况正常。

end case;end process;end one;整点报时模块+闹钟报时模块计时到59分50秒时,每两秒一次低音报时,整点时,进行高音报时。

以不同频率的脉冲信号区分低音和高音报时。

我将闹钟报时的模块也加入了此模块中:给一个开关,当闹钟模块的输出信号naozhong为1时,进行闹钟报时。

整点(闹钟)报时模块的VHDL语言代码:library ieee;use ieee.std_logic_1164.all;entity ring_54 isport(clk1,clk2:in std_logic;naozhong:in std_logic;miaog,miaos,feng,fens:in std_logic_vector(3 downto 0);ring:out std_logic);end ring_54;architecture one of ring_54 isbeginprocess(miaog,miaos,feng,fens)beginif(feng = "1001" and fens ="0101" and miaog ="0000" and miaos ="0101")then ring<=clk1;elsif(feng = "1001" and fens ="0101" and miaog ="0010" and miaos ="0101")thenring<=clk1;elsif(feng = "1001" and fens ="0101" and miaog ="0100" and miaos ="0101")thenring<=clk1;elsif(feng = "1001" and fens ="0101" and miaog ="0110" and miaos ="0101")thenring<=clk1;elsif(feng = "1001" and fens ="0101" and miaog ="1000" and miaos ="0101")thenring<=clk1;elsif(feng = "0000" and fens ="0000" and miaog ="0000" and miaos ="0000")thenring<=clk2;elsif(naozhong='1')then ---闹钟模块的输出信号连接这,为1时进行闹钟报时ring<=clk2;elsering<='0';end if;end process;end one;分频模块在本时钟中需要很多不同频率的时钟脉冲信号,所以这里用一个分频模块来解决不同需求,我设置了1Hz来给时钟,4Hz来设置时钟,256Hz和512Hz来报时。

还有256Hz给动态显示的扫描频率。

另外一个16Hz备用。

分频模块VHDL语言代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fenpin_54 isport( clk:in std_logic;hz_1: out std_logic;hz_4: out std_logic;hz_16: out std_logic;hz_256:out std_logic;hz_512:out std_logic);end fenpin_54;architecture one of fenpin_54 isbeginprocess(clk)variable a: std_logic_vector(10 downto 0);variable b: std_logic_vector(6 downto 0);variable c: std_logic_vector(8 downto 0);variable e: std_logic_vector(2 downto 0);variable d: std_logic_vector(1 downto 0);beginif clk'event and clk='1' thenif d<"01" then d:=d+1; hz_512<='0';else d:=(others=>'0');hz_512<='1';end if;if b<"0111111" then b:=b+1; hz_16<='0';else b:=(others=>'0');hz_16<='1';end if;if e<"011" then e:=e+1; hz_256<='0';else e:=(others=>'0');hz_256<='1';end if;if a<"01111111111" then a:=a+1;hz_1<='0';else a:=(others=>'0');hz_1<='1' ;end if;if c<"011111111" then c:=c+1; hz_4<='0';else c:=(others=>'0');hz_4<='1';end if;end if;end process;end one;闹钟模块闹钟模块要求数字钟:1)设定闹钟的时间应使用新的计数器进行存储。

与正常计数器互不干扰。

2)与正常计时状态的显示切换。

可以设定一个按键来切换。

3)应设定一个比较模块,当计时到与闹钟设定时间相等时,驱动扬声器报时。

4)闹钟响声应在一定的时间内,这里设定的是1分钟,而且在这段时间内可以通过按键来取消响声。

这里设置的闹钟设定是另外一组计数器。

闹钟模块:闹钟模块VHDL语言代码:library ieee;use ieee.std_logic_1164.all;entity naozhong2_54 isport(naoshig,naoshis,naofeng,naofens,shig,shis,feng,fens:in std_logic_vector(3 downto 0);ring:out std_logic);end naozhong2_54;architecture one of naozhong2_54 isbeginprocess(naoshig,naoshis,naofeng,naofens,shig,shis,feng,fens)beginif((naoshig = shig) and (naoshis = shis) and (naofeng = feng) and (naofens =fens)) then ---比较计时与闹钟设定时间ring<='1';elsering<='0';end if;end process;end one;动态显示模块时间的显示需要用到6个数码管,静态显示不够用,在动态方式下,所有数码管对应同一组七段码,每一个数码管由一个选择控制端点亮或熄灭。

相关文档
最新文档