数字电子时钟的设计
设计原理 计数时钟由模为60的秒计数器模块、模为60的分计数模块、模为24的小时计数器模块、指示灯与报警器的模块、分/小时设定模块及输出显示模块等组成。秒计数器模块的进位输出为分计数器模块的进位输入,分计数器模块的进位输出为小时计数器模块的进位输入。其中秒计数器模块中应有分钟的设定,分计数器模块中应有小时的设定。 内容 设计一个计数时钟,使其具有24小时计数功能。通过“多功能复用按键F1-F12”信号接线组“F1_12(T)”的F9~F12的任意引线插孔可设置小时和分钟的值,并具有整点报时的功能。 电路原理图 模块说明:计数时钟由60秒计数器模块XSECOND、60分计数器模块XMINUTE、24小时计数器模块XHOUR等六个模块构成。秒计数器模块的进位输出为分计数器模块的进位输入,分计数器模块中有小时的设定。通过SW1、SW2、SW3、SW4可设定小时和分钟的值,并具有整点报时的功能。 输入信号:SETMIN为分钟设置信号;SETHOUR为小时设置信号;RESET为全局复位信号;CLK为全局时钟信号;CKDSP为数码管动态扫描信号。 输出信号:SPEAK为蜂鸣器报时信号;LAMP[2..0]为指示灯信号;A~G为数码管七个段位信号;SS[2..0]为数码管段位译码控制信号。 说明与电路连线 指示灯信号LAMP2~LAMP0为独立扩展下载板上CPLD器件的第11、10、9脚,内部已连接并已锁定,无需外接连线。 蜂鸣器报时信号SPEAK为独立扩展下载板CPLD器件的第31脚,内部已连接并已锁定,无需外接连线。 拨码开关SW1~SW7内部已连接并已锁定,无需外接连线。 数码管七个段位信号A~G为独立扩展下载板上CPLD器件的第86、87、88、89、90、92、93脚,应接数码管段位引线接线组KPL_AH,从左到右依次对应的A、B、C、D、E、F、G引线插孔。 数码管段位译码控制信号SS0、SS1、SS2为独立扩展下载板上CPLD器件的第68、69、70脚,为数码管的位选扫描信号,分别接信号接线组DS1-8A(T)的SS0、SS1、SS2引线插孔(即在电源引线插孔组GND孔处)。 复位信号RESET为独立扩展下载板上CPLD器件的第71脚,应接“多功能复用按键F1-F12”信号接线组“F1_12(T)”的F9~F12的任意一个插孔。 小时设置信号SETHOUR为独立扩展下载板CPLD器件的第73脚,应接“多功能复用按键F1-F12”信号接线组“F1_12(T)”的F9~F12的任意一个插孔。 分钟设置信号SETMIN为独立扩展下载板上CPLD器件的第74脚,应接“多功能复用按键F1-F12”信号接线组“F1_12(T)”的F9~F12的任意一个插孔。 时钟信号CLK为独立扩展下载板上CPLD器件的183脚(即GCLK2),应接时钟信号接线组“CLOCK(T)”的“FRQ(21)”引线插孔。 数码管动态扫描信号CKDSP为独立扩展下载板上CPLD器件的79脚(即GCLK1),应接时钟信号接线组“CLOCK(T)”的“FRQ(11)”引线插孔。 参考源程序 library IEEE; use IEEE.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity xsecond is port ( clk: in STD_LOGIC; clkset: in STD_LOGIC; setmin: in STD_LOGIC; reset: in STD_LOGIC; secout: out STD_LOGIC_VECTOR (6 downto 0); enmin: out STD_LOGIC ); end xsecond; architecture xsecond_arch of xsecond is signal sec : std_logic_vector(6 downto 0); signal emin : std_logic; signal sec1 : std_logic; begin – <> process(reset,sec,emin,setmin,clkset) begin if reset=’0′ then enmin<='0'; secout<="0000000"; sec1<='1'; else sec1<='0'; secout<=sec; if clkset='1' and clkset'event then if setmin='0' then enmin<='1'; else enmin<=emin; end if; end if; end if; end process; process(clk,sec1) alias lcount : std_logic_vector(3 downto 0) is sec(3 downto 0); alias hcount : std_logic_vector(2 downto 0) is sec(6 downto 4); begin if sec1='1' then sec<="0000000"; else if (clk='1' and clk'event) then if lcount=9 then lcount<="0000"; if hcount/=5 then hcount<=hcount+1; emin<='0'; else hcount<="000"; emin<='1'; end if; else lcount<=lcount+1; emin<='0'; end if; end if; end if; end process; end xsecond_arch; library IEEE; use IEEE.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity xminute is port ( clkmin: in STD_LOGIC; reset: in STD_LOGIC; sethour: in STD_LOGIC; clk: in STD_LOGIC; minout: out STD_LOGIC_VECTOR (6 downto 0); enhour: out STD_LOGIC ); end xminute; architecture xminute_arch of xminute is signal min : std_logic_vector(6 downto 0); signal ehour : std_logic; signal min1 : std_logic; begin -- <> process(reset,clk,sethour,min,ehour) begin if reset=’0′ then enhour<='0'; minout<="0000000"; min1<='0'; else min1<='1'; minout<=min; if clk='1' and clk'event then if sethour='0' then enhour<='1'; else enhour<=ehour; end if; end if; end if; end process; process(clkmin,min1) alias lcountm : std_logic_vector(3 downto 0) is min(3 downto 0); alias hcountm : std_logic_vector(2 downto 0) is min(6 downto 4); begin if min1='0' then min<="0000000"; else if (clkmin='1' and clkmin'event) then if lcountm=9 then lcountm<="0000"; if hcountm/=5 then hcountm<=hcountm+1; ehour<='0'; else hcountm<="000"; ehour<='1'; end if; else lcountm<=lcountm+1; ehour<='0'; end if; end if; end if; end process; end xminute_arch; library IEEE; use IEEE.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity xhour is port ( clkhour: in STD_LOGIC; reset: in STD_LOGIC; hourout: out STD_LOGIC_VECTOR (5 downto 0) ); end xhour; architecture xhour_arch of xhour is signal hour : std_logic_vector(5 downto 0); begin -- <> process(reset,clkhour,hour) alias lcount : std_logic_vector(3 downto 0) is hour(3 downto 0); alias hcount : std_logic_vector(1 downto 0) is hour(5 downto 4); begin if reset=’0′ then hourout<="000000"; hour<="000000"; else if (clkhour='1' and clkhour'event) then if lcount=9 then lcount<="0000"; hcount<=hcount+1; else if hour="100011" then hour<="000000"; else lcount<=lcount+1; end if; end if; end if; hourout<=hour; end if; end process; end xhour_arch; library IEEE; use IEEE.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity xalert is port ( clk: in STD_LOGIC; d_in: in STD_LOGIC_VECTOR (6 downto 0); speak: out STD_LOGIC; d_out: out STD_LOGIC_VECTOR (2 downto 0) ); end xalert; architecture xalert_arch of xalert is type state is (s1,s2,s3,s4); signal next_state,current_state : state; begin -- <> process(clk,current_state,d_in) begin if d_in/=”0000000″ then speak<='0'; next_state<=s1; current_state<=s1; d_out<="000"; else if clk='1' and clk'event then speak<='1'; current_state<=next_state; end if; case current_state is when s1 => d_out<="000"; next_state<=s2; when s2 => d_out<="001"; next_state<=s3; when s3 => d_out<="010"; next_state<=s4; when s4 => d_out<="100"; next_state<=s1; when others => d_out<="000"; null; end case; end if; end process; end xalert_arch; library IEEE; use IEEE.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity xsettime is port ( hour: in STD_LOGIC_VECTOR (5 downto 0); min: in STD_LOGIC_VECTOR (6 downto 0); sec: in STD_LOGIC_VECTOR (6 downto 0); reset: in STD_LOGIC; clk: in STD_LOGIC; sel: out STD_LOGIC_VECTOR (2 downto 0); d_out: out STD_LOGIC_VECTOR (3 downto 0) ); end xsettime; architecture xsettime_arch of xsettime is signal sel1 : std_logic_vector(2 downto 0); begin -- <> process(clk,reset,sel1,hour,min,sec) begin if reset=’0′ then sel<="000"; d_out<="0000"; sel1<="000"; else if (clk='1' and clk'event) then if sel1<5 then sel1<=sel1+1; else sel1<="000"; end if; end if; sel<=sel1; case sel1 is when "000" => d_out(3)<='0'; d_out(2)<='0'; d_out(1)<=hour(5); d_out(0)<=hour(4); when "001" => d_out<=hour(3 downto 0); when "010" => d_out(3)<='0'; d_out(2)<=min(6); d_out(1)<=min(5); d_out(0)<=min(4); when "011" => d_out<=min(3 downto 0); when "100" => d_out(3)<='0'; d_out(2)<=sec(6); d_out(1)<=sec(5); d_out(0)<=sec(4); when "101" => d_out<=sec(3 downto 0); when others => null; end case; end if; end process; end xsettime_arch; library IEEE; use IEEE.std_logic_1164.all; entity xdeled is port ( d_in: in STD_LOGIC_VECTOR (3 downto 0); a: out STD_LOGIC; b: out STD_LOGIC; c: out STD_LOGIC; d: out STD_LOGIC; e: out STD_LOGIC; f: out STD_LOGIC; g: out STD_LOGIC ); end xdeled; 才五分啊,太少了吧
数字电路 – –多位显示的数字钟设计
一个6位数字显示计时钟电路,小时为24进
如何设计一个类似石英钟的数字显示的电子钟
数字时钟的设计与制作
摘要:本系统是采用555构成的多协振荡器、74LS90芯片组合做成的数子时钟系统。其中用555构成的多协振荡器产生震荡频率,再用74LS 90芯片组合成分频电路对震荡频率进行分频,然后对选用74LS92和74LS90分别作为时计数器和分、秒计数器,再加一个校时电路。能让该数子时钟准确计时,以数字形式显示时、分、秒的时间,小时的计时为“24翻1”分,秒的计时为60进位 ,和时间校正功能。
关键字: 震荡器 分频 计数器 74LS90 校时
一、数字时钟的总体设计
1 数字时钟的原理方框图如图1所示:
图1数字时钟的原理方框图
该电路系统由秒信号发生器、“时”、“分”、“秒”计数器、译码器及显示器等组成。秒信号产生器是整个系统是时基信号,它直接决定计数系统的精度。将标准秒信号送入“秒计数器”,“秒计数器”采用六十进制计数器,每累积60秒发出一个分脉冲信号,该信号将作为“分计数器”的时钟脉冲,“分计数器”也采用60进制计数器,每累积60分钟,发出一个“时脉冲”信号,该信号将被送入“时计数器”。“时计数器”采用24进制计数器,可实现对一天24小时的计数。译码显示电路将“时”、“分”、“秒”计数器的输出状态经7段译码显示器译码,通过7段显示器显示出来。
二、模块的设计与比较
1. 振荡电路及分频电路
方案一:
(1)采用石英晶体振荡器
石英晶体振荡器的特点是振荡频率准确,电路结构简单,频率易高调整。它还具有压电效应,在晶体某一方向加一电场,则在与此垂直的方向产生机械振动和电场互为因果,这种循环过程一直持续到晶体的机械强度限制时,才达到最后的稳定,这种压电谐振的频率就是晶体振荡的固有频率。
图2 石音晶体振荡电路
图2所示电路通过CMOS非门构成的输出为方波的数字式晶体振荡电路,这个电路中,CMOS非门U1与晶体、电容和电阻构成晶体振荡器电路,U2实现整形功能,将振荡器输出的近似于正弦波的波形转换为较理想的方波。输出反馈电阻R1为非门提供偏置,使电路工作于放大区域,即非门的功能近似于一
个高增益的反相放大器。电容C1、C2与晶体构成一个谐振型网络,完成对振荡频率的控制功能,同时提供了一个180度相移,从而和非门构成一个正反馈网络,实现了振荡器的功能。由于晶体具有较高的频率稳定性及准确性,从而保证了输出频率的稳定和准确。晶体X1的频率选为32768HZ。该元件专为数字钟电路而设计,其频率较低,有利于减少分频器级数。C1、C2均选择为30pF。当要求频率准确度和稳定度更高时,还可接入校正电容并采取温度补偿措施。由于CMOS电路的输入阻抗极高,因此反馈电阻R1可选为10MΩ。较高的反馈电阻有利于提高振荡频率的稳定性。
(2) 用CD4060计数作分频器
数字钟的晶体振荡器输出频率较高,为了得到1Hz的秒信号输入,需要对振荡器的输出信号进行分频。本实验中采用CD4060来构成分频电路。CD4060在数字集成电路中可实现的分频次数最高,而且CD4060还包含振荡电路所需的非门,使用更为方便。CD4060计数为14级2进制计数器,可以将32768HZ的信号分频为2HZ,其次CD4060的时钟输入端两个串接的非门,因此可以直接实现振荡和分频的功能。
方案二:
(1)采用555构成的多偕振荡电路
振荡器电路选用555构成的多偕振荡器,设振荡频率f=1000HZ,其中的电位器可以微调振荡器的输出频率。
图5 多偕振荡电路
(2)用74LS90作分频器
通常实现分频器的电路是计数器电路,一般采用多级10进制计数器来实现。分频器的功能有两个:一是产生标准秒脉冲信号;二是提供功能扩展电路所需的信号。选用中规模集成电路74LS90可以完成以上功能。如图所示,将3片74LS90级联,每片为1/10分频,三片级联正好获得1HZ的标准秒脉冲。
图 6 分频电路
比较: 秒信号发生器是数字电子钟的核心部分,它的精度和稳度决定了数字钟的质量,但是我们做实验考虑到用石音晶体振荡电路时分频电路用的元件较多 且价格较贵,而用555构成的电路元件容易得,电路简单且易于实现,故选方案二
2. 秒、分、时计数器设计
秒脉冲信号经过6级计数器,分别得到“秒”个位,十位、“分”个位、十位、“时”个位,十位的计时,秒分计数器为60进制,小时为24进制。
(1)60进制计数电路:秒计数器电路与分计数器电路都是60进制,它由一级10进制计数器和一级6进制计数器连接构成,如图7、8所示,采用两片中规模集成电路7490串联接起来构成的秒、分计数器。
IC2是十进制计数器,作为十进制的进位信号,7490计数器是十进制异步计数器,用反馈归零方法实现十进制计数。IC1和非门组成六进制计数。7490是在一秒时钟或进位信号的下降沿翻转计数, IC1的QA和QC相与0101的下降沿作为“分”或者“时”计数器的输入信号。IC1的QB和QC高电平1分别送到计数器的清零RO1、RO2,7490内部的RO1 和RO2与非后清零而使计数器归零,完成六进制计数。由此可见串联实现了六进制计数。
图7 秒计数电路
图8 分计数电路
(2)24进制计数电路:小时计数电路是由和组成的24进制计数电路,采用两片中规模集成电路7490串联接起来构成。如图9所示:
当“时”个位IC4计数输入端CKA来到第10个触发信号时,IC4计数器复零,进位端QD向IC3“时”十位计数器输出进位信号,当第24个“时”脉冲到达时,IC4计数器的状态为0100,IC3计数器的状态为0100,此时“时”个位计数器的QC和“时”十位计数器的QB输出为1。把它们分别送到IC4和IC3计数器的清零端RO1 和RO2通过7490内部的RO1 和RO2与非后清零,计数器复位,完成24进制计数。
图9 时计数电路
3. 校时电路
校时电路实现对时分的校准。在电路中设有正常计时和校时位置。分、时的校准开关分别通过触发器控制。通常,校正时间的方法是:首先截断正常的计数通路,然后再进行人工出触发计数或将频率较高的方波信号加到需要校正的计数单元的输入端,校正好后,再转入正常计时状态即可。根据要求,数字钟应具有分校正和时校正功能,因此,应截断分个位和时个位的直接计数通路,并采用正常计时信号与校正信号可以随时切换的电路接入其中。
图8所示为本实验所用的完整的校时电路图。
图10 校时电路
4. 显示器
本系统用七段发光二极管来显示译码器输出的数字,显示器有两种:共阳极或共阴极显示器。74LS48译码器对应的是显示器是共阴显示器。
三、调试要点
我觉得假设在实际的实验箱上组装电子钟时,注意器件管脚的连接一定要准确。“悬空端“、“清0端”、“置1端”要正确处理,调试步骤和方法如下:。
(1)、将频率为1000HZ的信号送入分频器,并用示波器检查各级分频器的输出频率是否符合设计要求。
(3)、将1秒信号分别送入“时”、“分”、“秒”计数器,检查各级计数器的工作情况。
(4)、观察校时电路的功能是否满足校时要求。
(5)、当分频器和计数器调试正常后,观察电子钟是否准确正常地工作。
四、供参考的元器件
(1)、七段显示器(共阴极)6片 (2)、74LS90 9片 (3)、555多谐振荡器 1片 (4)、74LS00 8片 (5)、74LS04 4片
(6)、电阻、电容、导线等。
五、收获体会
该电路的设计让我对数字钟的设计有了一定的了解。我知道了如何设计出1HZ的信号,也对时分秒的设计有了一定的了解。并且在实际电路一般步骤为由数字钟系统组成框图按照信号的流向分级安装,逐级级联,这里的每一级是指组成数字钟的各功能电路。级联时如果出现时序配合不同步,或尖峰脉冲干扰,引起逻辑混乱,可以增加多级逻辑门来延时。经过联调并纠正设计方案中的错误和不足之处后,再测试电路的逻辑功能是否满足设计要求。最后画出满足设计要求的总体逻辑电路图。
参考文献:
1.谢自美,电子线路设计*实验*测试.武汉:华中科技大学出版社,2007
2.康光华,电子技术基础(第五版)。北京:高等教育出版社,2006
3.蒋焕文,孙续。电子测量。北京:计量出版社,1998
4.P.F.格拉夫。电子电路百科全书。张殿等译。北京:科学出版社,1999
5.王兴亮主编现代音响和调音技术。西安电子科技大学出版,2006
基于数字电子设计一个时钟
基于数字电子设计一个时钟,电路框图如图所示 设计方案:采用CD4060做振荡分频,输出秒脉冲,供秒计数器使用. 将秒脉冲送入秒计数器进行60分频输出分脉冲供分计数器 使用 将分脉冲送入分计数器进行60分频输出小时脉冲供时计数器 使用 将分脉冲送入时计数器进行12(或24)分频 将各计数器的数据送入译码显示电路进行显示.
数字电路数字钟设计
根据设计任务和要求,对照数字电子钟的框图,可以分以下几部分进行模块化设计。
1. 秒脉冲发生器
脉冲发生器是数字钟的核心部分,它的精度和稳定度决定了数字钟的质量,通常用晶体振荡器发出的脉冲经过整形、分频获得1Hz的秒脉冲。如晶振为32768 Hz,通过15次二分频后可获得1Hz的脉冲输出.
2. 计数译码显示
秒、分、时、日分别为60、60、24、7进制计数器、秒、分均为60进制,即显示00~59,它们的个位为十进制,十位为六进制。时为二十四进制计数器,显示为00~23,个位仍为十进制,而十位为三进制,但当十进位计到2,而个位计到4时清零,就为二十四进制了。
周为七进制数,按人们一般的概念一周的显示日期“日、1、2、3、4、5、6”,所以我们设计这个七进制计数器,应根据译码显示器的状态表来进行,如表1.1所示。
按表1.1状态表不难设计出“日”计数器的电路(日用数字8代替)。
所有计数器的译码显示均采用BCD—七段译码器,显示器采用共阴或共阳的显示器。
Q4 Q3 Q2 Q1
显示
1 0 0 0
日
0 0 0 1
1
0 0 1 0
2
0 0 1 1
3
0 1 0 0
4
0 1 0 1
5
0 1 1 0
6
表1.1 状态表
3. 校时电路
在刚刚开机接通电源时,由于日、时、分、秒为任意值,所以,需要进行调整。
置开关在手动位置,分别对时、分、秒、日进行单独计数,计数脉冲由单次脉冲或连续脉冲输入。
4. 整点报时电路
当时计数器在每次计到整点前六秒时,需要报时,这可用译码电路来解决。即
当分为59时,则秒在计数计到54时,输出一延时高电平去打开低音与门,使报时声按500Hz频率呜叫5声,直至秒计数器计到58时,结束这高电平脉冲;当秒计数到59时,则去驱动高音1KHz频率输出而鸣叫1声。
五、参考电路
数字电子钟逻辑电路参考图如图1.3所示。
参考电路简要说明
1. 秒脉冲电路
由晶振32768Hz经14分频器分频为2Hz,再经一次分频,即得1Hz标准秒脉冲,供时钟计数器用。
2. 单次脉冲、连续脉冲
这主要是供手动校时用。若开关K1打在单次端,要调整日、时、分、秒即可按单次脉冲进行校正。如K1在单次,K2在手动,则此时按动单次脉冲键,使周计数器从星期1到星期日计数。若开关K1处于连续端,则校正时,不需要按动单次脉冲,即可进行校正。单次、连续脉冲均由门电路构成。
3. 秒、分、时、日计数器
这一部分电路均使用中规模集成电路74LS161实现秒、分、时的计数,其中秒、分为六十进制,时为二十四进制。从图3中可以发现秒、分两组计数器完全相同。当计数到59时,再来一个脉冲变成00,然后再重新开始计数。图中利用“异步清零”反馈到/CR端,而实现个位十进制,十位六进制的功能。
时计数器为二十四进制,当开始计数时,个位按十进制计数,当计到23时,这时再来一个脉冲,应该回到“零”。所以,这里必须使个位既能完成十进制计数,又能在高低位满足“23”这一数字后,时计数器清零,图中采用了十位的“2”和个位的“4”相与非后再清零。
对于日计数器电路,它是由四个D触发器组成的(也可以用JK触发器),其逻辑功能满足了表1,即当计数器计到6后,再来一个脉冲,用7的瞬态将Q4、Q3、Q2、Q1置数,即为“1000”,从而显示“日”(8)。
4.译码、显示
译码、显示很简单,采用共阴极LED数码管LC5011-11和译码器74LS248,当然也可用共阳数码管和译码器。
1. 整点报时
当计数到整点的前6秒钟,此时应该准备报时。图3中,当分计到59分时,
将分触发器QH置1,而等到秒计数到54秒时,将秒触发器QL置1,然后通过QL与QH相与后再和1s标准秒信号相与而去控制低音喇叭呜叫,直至59秒时,产生一个复位信号,使QL清0,停止低音呜叫,同时59秒信号的反相又和QH相与后去控制高音喇叭呜叫。当计到分、秒从59:59—00:00时,呜叫结束,完成整点报时。
2. 呜叫电路
呜叫电路由高、低两种频率通过或门去驱动一个三极管,带动喇叭呜叫。1KHz
和500Hz从晶振分频器近似获得。如图中CD4060分频器的输出端Q5和Q6。Q5输出频率为1024Hz,Q6输出频率为512Hz。
设计一个数字时钟电路.要求: 具有时,分,秒,计数显示功能,以24小时循环计时.
http://wenku.baidu.com/view/85d9ca1ab4daa58da1114a2a.html
求数字钟电路课程设计(需要带图)
一、实验目的:
1、用中大规模集成电路设计出数字钟
2、掌握具有特殊进制的设计方法。
3、掌握计数,译码,显示设计。
二、实验任务:
1、用中规模集成电路设计一个数字钟的计数,译码,显示电路。
2、设计六十进制的秒计数器和分计数电路。
3、时计数器采用二十四进制,从00开始计数到23后再回到00。
4、设计校时装置,能对时分秒分别校正。
5、设计整点报时电路。
三、电路总设计:
1、电路组成及原理:
2、实验器材:
(1)集成电路:555定时器一片、CT74LS161 九片、CT74LS47六片。
(2)门电路: CT74LS00四片、CT74LS08一片、CT74LS20一片。
(3)电源电压+5V。
(4)数字显示:共阳极数码管六片。
(5)电阻:5.1K、2K各一个,100K四个。
(6)电容:104PF两个。
四、单元电路设计:
1、 多谐振荡器
该555多谐振荡器输出频率为1000HZ。
2、分频器:
分频器将CT74LS161接成10进制计数器,这样每过一级频率会变为原来的1/10。如图所示,经过3级分频后能得到1HZ的秒信号。
3、计数器:
(1)分秒计数器:
将两片CT74LS161接成60进制计数器,分(秒)个位片为10进制,十位片为6进制。
(2)时计数器:
先将两片CT74LS161接成30进制计数器,分(秒)个位片为10进制,十位片为3进制。再用24(既00011000)反馈置0,则符合24进制计数。
4、译码器与数码管:
5、校时电路:
当开关K1、K2闭合、K3接左边门电路时,秒信号加至秒个位计数器,数字钟正常计时。当K1断开、K2闭合、K3接左边门电路时,秒信号送入时个位计数器,进行时校对。当K1闭合、K2 断开、K3接左边门电路时,秒信号送入分个位计数器,进行分校对。当K1和K2闭合、K3接右边门电路时, 0.1s脉冲进行秒校对。当秒校对后, K3接左边门电路,数字钟按校对后的时间工作。电路中运用基本RS触发器,以防止开关K3抖动。利用0.1s校对秒位计数器,能够很方便的校对成功,也十分准确。
你可以在这个 http://www.lunwen.com/pages/2006/05/29/D201738.html下载完整的
数字电子时钟电路图
NE555可以用来产生’标准计时时钟’给计数器,再用集成电路74LS160 设计产生2个60进制计数器,一个24进制计数器,再有CD4511 对BCD码译码产生数码显示的7段(a~g)或门和非门在设计计数器时用到
求数字电子钟设计
由于集成电路制造技术日新月异,电子电路的设计日 趋复杂。为了能在电路付诸实现之前,完全掌握操作环境因素(如电源电压、温度等)对电路的影响,利用电脑辅助设计进行电模拟与分析,并进行输入与输出信号响应的验证,可有效地节省产品开发的时间与成本。 Simulation Program with Integrated Circuit Emphasis (PSPICE)软件是专门用于电子电路仿真的“虚拟电子工作台PSPICE软件具有强大的电路图绘制功能、电路模拟仿真功能、图形后处理功能和元器件符号制作功能,以图形方式输入,自动进行电路检查,生成图表,模拟和计算电路。它的用途非常广泛,不仅可以用于电路分析和优化设计,还可用于电子线路、电路和信号与系统等课程的计算机辅助教学。与印制版设计软件配合使用,还可实现电子设计自动化。被公认是通用电路模拟程序中最优秀的软件,具有广阔的应用前景。这些特点使得PSPICE受到广大电子设计工作者、科研人员和高校师生的热烈欢迎,国内许多高校已将其列入电子类本科生和硕士生的辅修课程。 2 设计目的 2.1掌握数字钟的工作原理及其设计方法 2.2熟悉常用数字集成电路的使用方法 2.3应用pspice软件进行仿真 3 设计内容及要求 3.1设计一个有“时”、“分”、“秒”(23小时59分59秒)显示的数字时钟。(“时”和“分”的校准电路部分为选做内容) 3.2用中小规模集成电路(PSpice9.1中的74161或74390;EWB5.0中的74163加上4511以及LED等)组成数字电子钟,进行组装调试,并进行仿真。 3.3画出原理框图和逻辑电路图,写出设计实验总结报告。
基于VHDL的数字钟设计
(二)设计方案及工作原理 数字电子钟的逻辑框图如图1所示.它由石英晶体振荡器、分频器、计数器、译码器显示器和校时电路组成.振荡器产生稳定的高频脉冲