多时钟系统设计

合集下载

基于51单片机的多功能电子钟设计

基于51单片机的多功能电子钟设计

基于51单片机的多功能电子钟设计1. 本文概述随着现代科技的发展,电子时钟已成为日常生活中不可或缺的一部分。

本文旨在介绍一种基于51单片机的多功能电子钟的设计与实现。

51单片机因其结构简单、成本低廉、易于编程等特点,在工业控制和教学实验中得到了广泛应用。

本文将重点阐述如何利用51单片机的这些特性来设计和实现一个具有基本时间显示、闹钟设定、温度显示等功能的电子钟。

本文的结构安排如下:将详细介绍51单片机的基本原理和特点,为后续的设计提供理论基础。

接着,将分析电子钟的功能需求,包括时间显示、闹钟设定、温度显示等,并基于这些需求进行系统设计。

将详细讨论电子钟的硬件设计,包括51单片机的选型、时钟电路、显示电路、温度传感器电路等。

软件设计部分将介绍如何通过编程实现电子钟的各项功能,包括时间管理、闹钟控制、温度读取等。

本文将通过实验验证所设计的电子钟的功能和性能,并对实验结果进行分析讨论。

通过本文的研究,旨在为电子钟的设计提供一种实用、经济、可靠的方法,同时也为51单片机的应用提供一个新的实践案例。

2. 51单片机概述51单片机,作为一种经典的微控制器,因其高性能、低功耗和易编程的特性而被广泛应用于工业控制、智能仪器和家用电器等领域。

它基于Intel 8051微处理器的架构,具备基本的算术逻辑单元(ALU)、程序计数器(PC)、累加器(ACC)和寄存器组等核心部件。

51单片机的核心是其8位CPU,能够处理8位数据和执行相应的指令集。

51单片机的内部结构主要包括中央处理单元(CPU)、存储器、定时器计数器、并行IO口、串行通信口等。

其存储器分为程序存储器(ROM)和数据存储器(RAM)。

程序存储器通常用于存放程序代码,而数据存储器则用于存放运行中的数据和临时变量。

51单片机还包含特殊功能寄存器(SFR),用于控制IO端口、定时器计数器和串行通信等。

51单片机的工作原理基于冯诺伊曼体系结构,即程序指令和数据存储在同一块存储器中,通过总线系统进行传输。

多功能电子时钟实训报告

多功能电子时钟实训报告

一、实训目的本次实训旨在通过学习单片机技术,设计并实现一个基于单片机的多功能电子时钟系统。

通过实训,使学生掌握以下知识和技能:1. 熟悉单片机的基本原理和编程方法;2. 掌握电子时钟系统的硬件设计、软件编程和调试方法;3. 提高动手能力和实际应用能力。

二、实训内容1. 系统硬件设计(1)核心控制器:选用AT89C51单片机作为系统的核心控制器。

(2)时钟芯片:使用DS1302实时时钟芯片,提供精确的时间信号。

(3)液晶显示屏:选用1602液晶显示屏,用于显示时间、日期、温度等信息。

(4)按键模块:设计包含时间设置键、日期设置键、闹钟设置键等的按键模块。

(5)温度传感器:使用DS18B20温度传感器,用于检测环境温度。

(6)电源模块:为整个系统提供稳定的工作电压。

2. 系统软件设计(1)主程序:负责系统初始化、时钟显示、闹钟提醒、温度检测等功能。

(2)中断程序:负责时钟中断、闹钟中断、温度中断等。

(3)显示程序:负责液晶显示屏的显示内容更新。

(4)按键处理程序:负责按键扫描、按键消抖、按键功能处理等。

三、实训过程1. 硬件搭建(1)根据设计图纸,焊接电路板。

(2)连接单片机、时钟芯片、液晶显示屏、按键模块、温度传感器和电源模块。

(3)检查电路连接是否正确,确保系统硬件正常工作。

2. 软件编程(1)编写主程序、中断程序、显示程序和按键处理程序。

(2)使用C语言进行编程,并利用Keil软件进行编译。

(3)将编译好的程序烧录到单片机中。

3. 调试与优化(1)在Proteus仿真软件中,对系统进行仿真调试。

(2)检查程序运行是否正常,优化程序代码。

(3)对硬件电路进行调整,确保系统稳定运行。

四、实训结果1. 系统功能实现(1)显示当前时间、日期和温度。

(2)设置闹钟时间,并在设定时间响起。

(3)计时器功能,可以记录时间。

(4)温度检测功能,实时显示环境温度。

2. 系统稳定性通过仿真和实际测试,系统稳定运行,满足设计要求。

时钟系统设计及仿真

时钟系统设计及仿真

黑龙江科技学院 综合性、设计性实践报告实践项目名称时钟系统设计及仿真所属课程名称ASIC实践日期2011.9.13-2011.9.16班级学号姓名成绩电气与信息工程学院实践基地实践概述:【实践目的及要求】实践目的:1、学习软件Max+plusⅡ的使用方法;2、掌握使用Max+plusⅡ进行编译和仿真的方法与技巧;3、掌握基本的VHDL语言并编写程序4、了解实践箱的各部分基本构造并使用它完成程序下载。

实验要求:1、应用VHDL语言设计一个具有时、分、秒功能的计时系统。

2、应用Max+plusⅡ开发进行编译,仿真,装配,并下载到实践箱。

3、计时系统可采用模块设计,并连接成顶层原理图。

4.可自行扩展功能。

【实践环境】(使用的软件)Max+plusⅡ【实验原理】实践内容: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 xsecond1;architecture xsecond_arch of xsecond1 issignal sec:STD_LOGIC_vector(6 downto 0);signal sec1:STD_LOGIC;signal emin:STD_LOGIC;beginprocess(reset,sec,emin,setmin,clkset)beginif reset ='0' thenenmin<='0';secout<="0000000";sec1<='0';elsesec1<='1';secout<=sec;if clkset='1'and clkset'event thenif setmin='0' thenenmin<='1';elseenmin<=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); beginif sec1='0' thensec<="0000000";elseif (clk='1'and clk'event)thenif lcount=9 thenlcount<="0000";if hcount/=5 thenhcount<=hcount+1;elsehcount<="000";emin<='1';end if;elselcount<=lcount+1;emin<='0';end if;end if;end if;end process;end xsecond_arch;分60程序如下:Library ieee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_arith.ALL;USE ieee.std_logic_unsigned.ALL;entity xminute isport(clk:in std_logic;clkmin:in std_logic;sethour:in std_logic;reset:in std_logic;minout:out STD_LOGIC_vector(6 downto 0); enhour:out std_logic);end xminute;architecture xminute_arch of xminute issignal min:STD_LOGIC_vector(6 downto 0);signal ehour:STD_LOGIC;signal min1:STD_LOGIC;beginprocess(reset,clk,sethour,min,ehour)beginif reset ='0' thenenhour<='0';minout<="0000000";min1<='0';elsemin1<='1';if clk='1'and clk'event thenif sethour='0' thenenhour<='1';elseenhour<=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); beginif min1='0' thenmin<="0000000";elseif (clkmin='1'and clkmin'event)thenif lcountm=9 thenlcountm<="0000";if hcountm/=5 thenhcountm<=hcountm+1;ehour<='0';elsehcountm<="000";ehour<='1';end if;elselcountm<=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_arith.ALL;USE ieee.std_logic_unsigned.ALL;entity xhour isport(clkhour:in std_logic;reset:in std_logic;hourout:out STD_LOGIC_vector(5 downto 0));end xhour;architecture xhour_arch of xhour issignal hour:STD_LOGIC_vector(5 downto 0);beginprocess(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); beginif reset='0' thenhourout<="000000";hour<="000000";elseif (clkhour='1'and clkhour'event)thenif lcount=9 thenlcount<="0000";hcount<=hcount+1;elseif hour="100011"thenhour<="000000";elselcount<=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_arith.ALL;USE ieee.std_logic_unsigned.ALL;entity xsettime isport(reset:in std_logic;hour:in STD_LOGIC_vector(5 downto 0);min:in STD_LOGIC_vector(6 downto 0);sec:in STD_LOGIC_vector(6 downto 0);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 issignal sel1: STD_LOGIC_vector(2 downto 0); beginprocess(clk,reset,sel1,hour,min,sec)beginif reset='0' thensel<="000";d_out<="0000";sel1<="000";elseif (clk='1'and clk'event)thenif sel1<5 thensel1<=sel1+1;elsesel1<="000";end if;end if;sel<=sel1;case sel1 iswhen "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 isport(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;architecture xdeled_arch of xdeled isbeginprocess(d_in)type data_out is array(0 to 6)of std_logic; variable outp:data_out;begincase d_in iswhen "0000"=>outp:="1111110";when "0001"=>outp:="0110000";when "0010"=>outp:="1101101";when "0011"=>outp:="1111001";when "0100"=>outp:="0110011";when "0101"=>outp:="1011011";when "0110"=>outp:="1011111";when "0111"=>outp:="1110000";when "1000"=>outp:="1111111";when "1001"=>outp:="1111011";when "1010"=>outp:="1110111";when "1011"=>outp:="0011111";when "1100"=>outp:="1001110";when "1101"=>outp:="0111101";when "1110"=>outp:="1001111";when "1111"=>outp:="1000111";when others=>null;end case;a<=outp(0);b<=outp(1);c<=outp(2);d<=outp(3);e<=outp(4);f<=outp(5);g<=outp(6);end process;end xdeled_arch;指示灯与报警模块程序:Library ieee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_arith.ALL;USE ieee.std_logic_unsigned.ALL;entity xalert isport(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 istype state is(s1,s2,s3,s4);signal next_state,current_state:state;beginprocess(clk,current_state,d_in)beginif d_in/="0000000" thenspeak<='0';next_state<=s1;current_state<=s1;d_out<="000";elseif (clk='1'and clk'event)thenspeak<='1';current_state<=next_state;end if;case current_state iswhen 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;entity d_time isport(clk:in std_logic;qlk:out std_logic);end d_time;architecture d_time of d_time issignal x:std_logic;beginprocess(clk)variable cnt:integer range 0 to 77; beginif clk'event and clk='1'thenif cnt<77 thencnt :=cnt+1;elsecnt:=0;x<=not x;end if;end if;qlk<=x;end process;end d_time;【实践过程】(实践步骤、记录、数据、分析)1、完成各个模块程序的调试编译利用所得的图完成系统的设计结果如原理图所示,该系统的输入信号为时钟信号、被测频率输入信号、数码管7个段位数码管段位译码输出信号。

多功能数字电子钟_VHDL

多功能数字电子钟_VHDL

四、各功能模块的源程序代码 :
-- CONTOR 模块 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity contor is
1 )“小时” 校时状态: 进入“小时”校时状态后,显示 “小时” 的数码管闪烁,每按动“ k” 键一次,“小时” +1,若不按动“ k”键 则小时数不变,一直按下“ k” 键则小时数一 4Hz 的频率递增计数。
2 )“分”校时状态:进入“分”校时状态后,显示“分”的数 码管闪烁,每按动“ k” 键一次,“分” +1,若不按动“ k”键则分数 不变,一直按下“ k” 键则分数一 4Hz的频率递增计数。
chs,cms,css,f4 :in std_logic; bsg,bmg,bhg,bsd,bmd,bhd :buffer std_logic_vector(3 downto 0); comout :out std_logic); end time_com; architecture time_comx of time_com is begin com:process(hh,mh,sh,hl,ml) begin if(bhg=hh and bhd=hl and bmg=mh and bmd=ml and bsg=sh)then comout<='1'; else comout<='0'; end if; end process; set:process(f4) begin if(f4'event and f4='1')then if(chs='1'and k='0')then if(bhg="0010" and bhd="0011")then bhd<="0000";bhg<="0000"; elsif(bhd="1001")then bhd<="0000";bhg<=bhg+1; elsif(bhd="0000"or bhd="0001" or bhd="0010"or bhd="0011"or bhd="0100"or bhd="0101"or bhd="0110"or bhd="0111"or bhd="1000")then bhd<=bhd+1; end if; end if; end if; end process; process(f4) begin if(f4'event and f4='1')then if(cms='1'and k='0')then if(bmg="0101" and bmd="1001")then

时钟系统方案

时钟系统方案

时钟系统方案第1篇时钟系统方案一、方案背景随着信息化建设的不断深入,时钟系统已成为各类业务系统中不可或缺的组成部分。

为确保业务数据的准确性和系统运行的稳定性,需建立一套合法合规的时钟系统方案,以实现各系统间的时间同步和统一管理。

二、方案目标1. 确保时钟系统合法合规,遵循国家相关法律法规和行业标准。

2. 实现各业务系统间的时间同步,保证数据的一致性和准确性。

3. 提高时钟系统的可靠性和稳定性,降低系统故障风险。

4. 方便时钟系统的管理和维护,降低运维成本。

三、方案设计1. 时钟源选择采用我国国家标准时间源(如国家授时中心),确保时钟源的准确性和可靠性。

2. 时钟同步协议采用NTP(网络时间协议)或PTP(精确时间协议)等国际通用的时间同步协议,实现各业务系统间的时间同步。

3. 系统架构采用分布式架构,分为时钟源、时钟服务器、时钟客户端三级,确保时钟系统的可扩展性和高可用性。

4. 时钟服务器时钟服务器负责接收时钟源的时间信息,并进行本地时间同步。

建议采用双机热备的配置,提高系统可靠性。

5. 时钟客户端时钟客户端部署在各业务系统服务器上,定期从时钟服务器获取时间信息,实现业务系统的时间同步。

6. 网络设计采用专用网络或虚拟专用网络(VPN)实现时钟系统的数据传输,确保数据安全和传输效率。

7. 安全防护针对时钟系统进行安全防护,包括防火墙、入侵检测、数据加密等,确保系统安全。

四、实施步骤1. 需求分析调研现有业务系统对时钟系统的需求,明确时钟同步的范围、精度等要求。

2. 方案设计根据需求分析,设计时钟系统方案,包括硬件设备选型、软件配置、网络架构等。

3. 设备采购与安装采购符合国家标准的时钟设备,进行安装、调试,确保设备正常运行。

4. 系统部署按设计方案部署时钟系统,包括时钟源、时钟服务器、时钟客户端等。

5. 测试验证对时钟系统进行功能测试、性能测试、安全测试等,确保系统满足业务需求。

6. 培训与交付对运维人员进行时钟系统的培训,确保其具备管理和维护能力。

基于STC89C52多功能电子时钟系统程序+原理图

基于STC89C52多功能电子时钟系统程序+原理图

一、设计任务设计制作一台以控制器为核心的多功能电子时钟系统二、设计要求:①.系统具有3种工作模式状态(正常时钟显示模式、系统校准模式、秒表计时模式);系统所有功能,均能够通过上位PC机对其操作修改与实时动态显示。

(PC主机端可利用高级语言进行人机界面设计)②.在正常时钟显示模式时,时钟具有显示年、月、日、时、分、秒的功能。

③.在正常时钟显示模式时,系统具有整点报时的功能,在离整点前10秒时,自动发出鸣叫声,步长1秒,每间隔1秒鸣叫一次,前4响是低音,后1响为高音,共鸣叫5次,最后1响结束时为整点。

高音频率为1KHz;④.在系统校准模式时,系统具有快速校准时间的功能。

⑤.在秒表计时模式时,可兼做比赛时间记录表。

秒表记时的精度为0.1秒,由3个键分别控制秒表的启动、清零、记录功能,可连续记录3组时间,并能够显示记录时间。

⑥.系统显示器采用LCD液晶显示器1602或其它显示器件,并采用键盘对相关数据进行设置与操作。

原理图设计制作一台以控制器为核心的多功能电子时钟系统二、设计要求:①.系统具有3种工作模式状态(正常时钟显示模式、系统校准模式、秒表计时模式);系统所有功能,均能够通过上位PC机对其操作修改与实时动态显示。

(PC主机端可利用高级语言进行人机界面设计)(注:此三种模式可以通过SET键盘来回切换,在正常时钟模式,第二排显示S:time,校准模式显示S:adjst,秒表模式,是TN~T3:四个秒表模式);②.在正常时钟显示模式时,时钟具有显示年、月、日、时、分、秒的功能。

(注:这个已经全部显示了,含星期)③.在正常时钟显示模式时,系统具有整点报时的功能,在离整点前10秒时,自动发出鸣叫声,步长1秒,每间隔1秒鸣叫一次,前4响是低音,后1响为高音,共鸣叫5次,最后1响结束时为整点。

高音频率为1KHz;(注:这个都实现了,要验证的话就是将时钟调整到59分后验证即可)④.在系统校准模式时,系统具有快速校准时间的功能。

时钟同步系统方案设计分享

时钟同步系统在福建某通信局投入使用由我公司自主研发生产的一套时钟同步系统在福建某通信局成功投入使用。

本次时钟同步系统,主要是根据福建某通信局发展需要,应对项目实施需求,具有针对性的配置的一套完整的时钟同步系统,分享如下:
1.时钟同步系统的需求原因
应对通信局客户对北斗GPS时钟同步系统的需求逐渐增多,现有槽道已无法满足未来的客户需求,后期运行也大大增加施工安全隐患。

经过市场调研,选由我公司自行配置一套北斗GPS时钟同步系统,要求各网段授时设备独立运行,可供多用户共同使用,同时楼顶线路只允许架设1套GPS北斗卫星天线。

2.时钟同步系统的配置方案
因工程配置的局限性,本次时钟同步系统需求配置6台北斗GPS
时钟同步设备,且只能共用一套卫星天线,因此我们在系统内配置了GPS北斗双模有源分配器将其分开,具体连接方式如下图:
时钟同步系统配置方案
3.时钟同步系统的授时方法(同步科技,小安,189********(微信同
时钟同步系统整体采用NTP授时方式,需要同步时间的授时终端,通过获取时间同步设备的IP地址,来实现局域网内所有网络设备
的时间统一,网络配置图如下所示:
时钟同步系统的网络配置图
4.时钟同步系统配置清单
鉴于以上需求,配置1套完整的时钟同步系统,清单如以下表格:
高精确的时间对于通信局系统的正常运行有着十分重要的意义,
本次时间同步系统主要是基于GPS北斗的时间同步系统,
能够实时地对主站计算机终端时间进行校正, 目前在通信局配置有着很大的需要。

以上为此次给通信局配置的时间同步系统的一个说明,相关用户可作为参考。

时钟系统施工方案

时钟系统施工方案时钟系统是指将时间信号通过有线或无线方式传输给各个时钟终端,实现时间同步显示的系统。

在不同的场所中,如学校、医院、商场、企事业单位等,都需要一个准确可靠的时钟系统来保证时间的同步和统一。

施工方案:一、系统设计:1. 需求调研:根据客户的需求和场所的特点,了解系统所需的功能和性能要求,进行需求调研。

2. 系统布局:根据场地平面图,确定时钟布放的位置,考虑信号传输距离和传输方式,合理布局时钟终端的位置。

3. 选型设计:根据场所要求和预算限制,选择合适的时钟终端、服务器和信号传输设备等。

4. 系统联网:根据现场情况确定有线或无线网络方案,将时钟系统与现有网络进行连接。

5. 系统配置:根据客户要求,对时钟终端进行设置和调试,确保时间同步和显示的准确性。

二、施工准备:1. 材料准备:准备所需的时钟终端、服务器、信号传输设备、布线材料等,确保施工的顺利进行。

2. 确定施工人员:根据施工需要,确定施工人员的数量和技术水平,保证施工的质量和进度。

3. 施工工具:准备各种必要的施工工具,如电钻、电缆剥皮器等,方便施工人员进行安装和调试。

三、施工步骤:1. 安装时钟终端:根据布局设计,将时钟终端按照规定的位置安装到墙壁上或悬挂在天花板上。

2. 布线连接:根据系统设计,将时钟终端与服务器、信号传输设备进行布线连接,保证信号的传输畅通。

3. 联网设置:对服务器进行设置和调试,使其能够正确接收时间信号并通过网络传输给时钟终端。

4. 确认同步:观察各个时钟终端的显示,在不同位置和距离下确认时间的同步和显示准确性。

5. 系统调试:对整个时钟系统进行功能和性能的调试,确保系统运行稳定和可靠。

四、施工验收:1. 功能测试:对时钟系统进行功能测试,如时间同步、显示准确性等,确保系统满足设计要求。

2. 效果评估:根据客户的评估标准,评估时钟系统在实际使用中的效果和用户体验。

3. 验收交付:满足客户要求的情况下,进行系统的验收和交付,完成时钟系统的施工任务。

毕业设计---基于STC89C52RC单片机多功能时钟设计论文

多功能数字钟设计报告目录第一部分摘要 (4)第二部分1.设计任务 (4)1.1基本要求 (4)1.2发挥部分 (4)1.3创新部分 (4)2.方案论证与比较 (4)2.1显示部分 (4)2.2数字时钟 (4)2.3温度采集 (5)2.4闹铃部分 (5)2.5电源模块 (5)3.总体方案 (5)3.1工作原理 (5)3.2总体设计 (5)4.系统硬件设计 (6)4.1 STC89C52RC单片机最小系统 (6)4.2测温模块 (6)4.3时钟模块 (7)4.4存储器模块 (7)4.5 LCD显示模块 (8)4.6电源模块 (8)4.7整体电路 (8)5.系统软件设计 (9)5.1主程序流程 (9)5.2时间设定程序流程 (10)5.3温度测量程序流程 (10)5.4闹铃设定程序流程 (11)5.5生日设定程序流程 (11)6.测试与结果分析 (12)6.1基本部分测试与分析 (12)6.2发挥部分测试与分析 (12)6.3创新部分测试与分析 (12)7.设计总结 (12)8.参考资料 (13)附录 (14)附一 (14)获取时钟芯片DS1302时间信息的程序 (14)附二 (15)多功能数字时钟使用方法 (15)摘要本设计采用LCD液晶屏幕显示系统,以STC89C52RC单片机为核心,由键盘、温度采集、定时闹铃、日期提醒等功能模块组成。

基于题目基本要求,本系统对时间显示、闹铃方式进和温度采集系统行了重点设计。

此外,扩展了整点报时、非易失闹铃信息存储、国内外重要节日提醒等功能。

本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。

本系统不仅成功的实现了要求的基本功能,多数发挥部分也得到了实现,而且还具有一定的创新功能。

关键字:STC89C52RC单片机、LCD液晶显示、双电源供电、温度采集、非易失定时闹铃、生日提醒、重要节日提醒、整点报时1、任务设计1.1基本要求:设计并制作一个多功能数字钟。

1-1数字钟的系统框图2、设计提示

教材:《VHDL硬件描述语言与数字逻辑电路设计》候伯亨 顾新西安电子科技大学参考书:《EDA与数字系统设计》李国丽等机械工业出版社一、多功能数字钟的设计1、数字系统设计问题设计一个能进行时、分、秒计时的12h制或24h制的数字钟,并具有定时与闹钟功能,能在设定的时间发出闹铃音,能非常方便地对时、分和秒进行手动调节,以校准时间,每逢整点.产生报时音报时。

其系统框图如图1-1所示。

1-1数字钟的系统框图2、设计提示此设计问题可分为主控电路、计数器模块和扫描显示三大部分,其中计数器部分的设计是已经非常熟悉的问题,只要掌握六十进制、十二进制的计数规律,用同步计数或异步计数都可以实现,扫描显示模块也已经介绍过,所以主控电路中各种特殊功能的实现是这个设计问题的关键。

用两个电平信号A、B进行模式选择,其中,AB=00为模式0,系统为计时状态;AB =01为模式1,系统为手动校时状态;AB=10为模式2,系统为闹钟设置状态。

设置一个turn信号,当turn=0时,表示在手动校对时,选择调整分部分;当turn=1 时,表示在手动校对时,选择调整时部分。

设置一个change信号,在手动校时或闹钟设置模式下,每按一次,计数器加1。

设置一个reset信号,当reset=0时,整个系统复位;当reset=1时,系统进行计时或其他特殊功能操作。

设置一个关闭闹钟信号reset1,当reset1=0时,关闭闹铃信号:reset1=1可对闹铃进行设置。

设置状态显示信号(发光二极管):LD_alert指示是否设置了闹铃功能;LD_h指示当前调整的是时信号;LD_m指示当前调整的是分信号。

当闹铃功能设置后(LD_atert=1,系统应启动一个比较电路,当计时与预设闹铃时间相等时,启动闹铃声,直到关闭闹铃信号有效。

整点报时由分和秒计时同时为0〔或60)启动,与闹铃声共用一个扬声器驱动信号out。

系统计时时钟为clk=1Hz,选择另—个时钟clk_1k=1024Hz作为产生闹铃声、报时音的时钟信号。

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