电子万年历论文

电子万年历论文
电子万年历论文

目录

第一章电子技术的发展 (1)

第二章电子时钟系统设计思想 (2)

§2-1 设计要求 (2)

§2-2 硬件电路设计 (2)

§2-3 工作原理 (2)

第三章电子时钟硬件系统设计 (4)

§3-1 元器件明细表 (4)

§3-2 电路设计框图 (4)

§3-3 系统硬件概述 (5)

§3-4 主要单元电路的设计 (5)

3-4-1单片机主控制模块的设计 (5)

3-4-2时钟电路模块的设计 (6)

§3-5 DS1302与CPU的连接 (6)

§3-6 电路原理及说明 (7)

3-6-1 时钟芯片DS1302的工作原理 (7)

3-6-2 DS1302的控制字节 (7)

3-6-3 数据输入输出(I/O) (8)

3-6-4 DS1302的寄存器 (8)

第四章系统的软件设计 (9)

§4-1 程序流程框图 (9)

§4-2 模块的对外接口 (11)

4-2-1 时钟分频模块 (11)

4-2-2 计时模块 (12)

4-2-3 按键模块 (12)

4-2-4 显示模块 (12)

§4-3 电子钟顶层VHDL设计 (12)

§4-4 电子钟的底层模块 (14)

§4-5 DS1302介绍 (15)

第五章安装与调试 (18)

第六章总结 (20)

参考文献 (21)

第一章电子技术的发展

国内外发展:单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机具有体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,录象机、摄象机,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。电子钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许多场合可以看到数字电子钟。在城市的主要营业场所、车站、码头等公共场所使用数字电子钟已经成为一种时尚。但目前市场上各式各样的LCD数字电子钟大多数用全硬件电路实现,电路结构复杂,功率损耗大等缺点。因此有必要对数字电子钟进行改进。

系统由石英晶体振荡器,分频器,计数电路,校时电路,整点报时电路组成。

第二章电子时钟系统设计思想

设计了用T2518DD3+DS1302的电子万年历.该万年历的特点是:动态显示;能接多位数码管成多点输出。采用DS1302时钟模块,走时准确、停电能继续计时(精度±5秒/日左右,输入接口由三个按键来实现,用这三个按键可以对日期和时间进行调整,并可以对闹铃的开关和闹铃的时间进行设置。闹铃功能通过蜂鸣器来实现。软件控制程序实现所有的功能。采用有源晶振,如DS32Hz,走时精度甚至可达到年误差小于2分钟)。整机电路使用+5V稳压电源,可稳定工作。

§2-1 设计要求

1、“时”、“ 分”(23小时59分)显示且有校时功能。(设计秒脉冲发生器)有日历功能和显示星期、农历功能。

2、有整点报时功能。(选:上下午、日期、闹钟等)

3、用中规模、小规模集成电路及模拟器件实现。

4、供电方式:AC220V 50HZ。(设计5V直流稳压电源)

§2-2 硬件电路设计

T2518DD3作为数据处理,DS1302作为计时处理及停电继续走时,用15只LED数码管显示年、月、日、星期、时、分,采用1838V为遥控接收.74LS595作为数码管笔画显示选择移位。

§2-3 工作原理

初始化后,DS1302开始走时。T2518DD3读取时间数据并处理后,通过2级8位移位寄存器(74LS595将数码管的选通数据送至显示驱动,SRCLK是移位脉冲。上升沿有RCLK是输出锁存器的锁存信号,其上升沿将移位寄存器的输出锁存到输出锁存器伟是选通信号,只有e为低电平时锁存器的输出才开放。

所有数码管的同一笔画是连在一起的,由T2518DD3对DS1302读回的时间数据进行拆分处理,然后转换成要显示的数字代码,再由SER T2518DD3的P3.5脚)逐位输出到IC1的(14)脚。以完成对需要显示笔画的数0-9,对一个数码管的同一笔画进行扫描,第一笔画点亮延时,继续把第二笔画的代码移位至74LS595进行第二个笔画的扫描,直至七个笔画全部显示完为止。

例如,耍显示的时间为07-02-23.则各数的代码分别为3FH、07H、3FH、5BH、BH、4FH。先通过74LS595把3F、07、3F、5B、5B、4F的DO,即低位右移一位,通过74LS595至驭动三极管的菇极,如果某位为0,则相应的位就不点亮.然后从P1.1输出0,那么该笔画中相

应为1的笔画就被点亮,各数相应代码就变为:3FH-1FF,07H-3H、3FI3-1FIi、511H-2DH、5BH-2DH、4F H-27H。

继续通过74LS595把IF,3,1F,2D,2D,27的最低位送至三极管的基极。然后P1.2输出0,数码管的第二笔画相应的位被点亮。各数代码则变为:FH,IH,FH,16H,16H,13H。重复上面的移位及扫描,直至7个显示完成,就完成了07-02-03的全部显示。这种显示电路的特点是能够同屏显示多位数码管及多位输出。图中还可增加秒闪烁和驱动报时蜂呜器等电路功能。

第三章 电子时钟硬件系统设计

§3-1 元器件明细表

元件明细表如表3.1所示:

表3.1 元器件明细表

序号 元件名称 数量

序号 元件名称

数量 1 电阻10Ω 1 22 稳压器7805 1 2 电阻33Ω 8 23 晶振32.768 1 3 电阻47Ω 3 24 芯片T2518DD3 1 4 电阻75Ω 7 25 0.5’数码管 11 5 电阻100Ω 1 26 0.8’数码管 4 6 电阻150Ω 8 27 电池卡

1 7 电阻330Ω 7 28 圆片电池(可装可不装) 1 8 电阻1.5K 4 29 微动开关 4 9 电阻10K

2 30 5P 线 1 10 电阻390K 1 31 喇叭 1 11 电阻470K 1 32 变压器 1 12 电容22P 2 3

3 电源线 1 13 电容102P 1 3

4 细线 2 14 电容181P 1 3

5 3*6自动螺丝 8 15 电容104P 2 3

6 3*6带垫自攻螺丝 2 16 电容470U/16V 3 3

7 3*10自攻螺丝 6 17 二极管4004 5 3

8 电路板 2 18 二极管1N60 2 3

9 面板 4 19 发光二极管 4 40 机壳 1套 20 三极管8550 8 41 21

三极管8050

1 42

§3-2 电路设计框图

电路设计框图如图3.1所示:

图3.1电路设计框图

主控制模 块

时钟模块

数码管动态扫描显示模块

键盘模块

§3-3 系统硬件概述

本电路是由T2518DD3单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM 数据。DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的采集由DS18B20构成;显示部份由15个数码管,74ls138、74ls47译码器构成。使用动态扫描显示方式对数字的显示。

§3-4 主要单元电路的设计

3-4-1单片机主控制模块的设计

T2518DD3单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。

单片机的最小系统如图3.2所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端。

图3.2 主控制系统图

3-4-2时钟电路模块的设计

DS1302的引脚排列如图3.3所示,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS 置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。中有在SCLK 为低电平时,才能将RST置为高电平,I/O 为串行数据输入端(双向)。SCLK始终是输入端。

图3.3 DS1302的引脚图

§3-5 DS1302与CPU的连接

实际上,在调试程序时可以不加电容器,只加一个32.768kHz的晶振即可。只是选择晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS18B20,同时显示实时温度。只要占用CPU一个口线即可。LCD还可以换成LED,还可以使用北京卫信杰科技发展有限公司生产的10位多功能8段液晶显示模块LCM101,内含看门狗(WDT)/时钟发生器及两种频率的蜂鸣器驱动电路,并有内置显示RAM,可显示任意字段笔划,具有3-4线串行接口,可与任何单片机、IC接口。功耗低,显示状态时电流为2μA(典型值),省电模式时小于1μA,工作电压为2.4V~3.3V,显示清晰。DS1302与CPU的连接的原理图如图3.4所示。

图3.4 DS1302与CPU的连接的原理图

§3-6 电路原理及说明

3-6-1 时钟芯片DS1302的工作原理

DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图3-5所示。表3-1为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表3-2为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。

3-6-2 DS1302的控制字节

DS1302的控制字如表3.1所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM 数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。

表3.1 DS1302的控制字格式

RAM RD

1 A4 A3 A

2 A1 A0

/ CK /WR

3-6-3 数据输入输出(I/O )

在控制指令字输入后的下一个SCLK 时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK 脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。如下图3.5

所示

图3.5 DS1302读/写时序图

3-6-4 DS1302的寄存器

DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD 码形式,其日历、时间寄存器及其控制字如表3.2所示。

表3.2 DS1302的日历、时间寄存器

此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM 相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM 相关的寄存器分为两类:一类是单个RAM 单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H ~FDH ,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM 寄存器,此方式下可一次性读写所有的RAM 的31个字节,命令控制字为FEH(写)、FFH(读)。

写寄存器 读寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0

82H 83H 10分 分 84H

85H

12/24 0

10 时

AM/PM

86H 87H 0 0 10日

日 88H 89H 0 0 0 10月 月 8AH 8BH 0 0 0 0

星期

8CH 8DH 10 年

8EH

8FH

WP

图3.6 电路原理图

第四章系统的软件设计§4-1 程序流程框图

程序流程图如图4.1;4.2;4.3;4.4所示:

图4.1 主程序流程图

开始

初始化

分离日期\时间

显示子程序

日期、时间修改

子程序

农历自动更新

闰月子

定时闹铃子

返回

图4.2计算阳历序流程图

图4.3时间调整程序流程图

图4.4 农历程序流程图

根据系统的设计要求和工作原理以及图(如图3.6所示电路原理图)。所示的各个模块之间的连接关系,可以看出系统的输入输出信号包括:

1)外部输入的时钟信号clk:输入信号;

2)复位开关信号reset:输入信号;

3)时/分调整信号sethr10、sethr、setmin10、setmin:输入信号;

4) LED六段显示数码管的选通信号choose[5:0]:输出信号;

5) LED七段显示数码管的输出信号segment[6:0]:输出信号。

由于外部始终信号clk的频率为10Hz,而实际需要的内部计时时钟频率为1Hz。因此需要一个时钟分频电路。通过这个分频电路,对外部时钟信号clk进行分频操作,用来产生频率分别为1Hz的时钟信号。

由于时间显示是由6个LED七段显示数码管组成,因此需要产生6位的计时信息:小时十位信号、小时各位信号、分十位信号、分各位信号、秒十位信号、秒各位信号。这个定时计数可以采用一个定时计数器来完成,他的功能就是用来产生6位计时信息。这里采用循环点亮LED七段显示数码管的方法来显示时间输出。通过信号choose (7 DOWNTO 0)来进行6个LED七段显示数码管的选择。从而将输出信号segment(6 DOWNTO 0)送到相应的 LED 七段显示数码管上以完成秒表计时的显示。

§4-2 模块的对外接口

时钟分频模块、计时模块、按键模块和显示模块四个部分组成。

4-2-1 时钟分频模块

1)复位开关信号reset:输入信号;

2)外部时钟信号clk:输入信号;

3)内部计时时钟信号clk0:输出信号。

4-2-2 计时模块

1)内部计时时钟信号clk0:输入信号;

2)复位关信号reset:输入信号;

3)小时十位信号hr10:输出信号;

4)小时个位信号hr:输出信号;

5)分十位信号min10:输出信号;

6)分个位信号min:输出信号;

7)秒十位信号sec10:输出信号;

8)秒个位信号sec:输出信号。

4-2-3 按键模块

1)复位开关信号reset:输入信号;

2) 时调整按键sethr10、sethr:输入信号;

3) 分调整按键setmin10、setmin:输入信号;

4)小时十位信号hr10:输出信号;

5)小时个位信号hr:输出信号;

6)分十位信号min10:输出信号;

7)分个位信号min:输出信号。

4-2-4 显示模块

1)外部时钟信号clk:输入信号;

2)小时十位信号hr10:输入信号;

3)小时个位信号hr:输入信号;

4)分十位信号min10:输入信号;

5)分个位信号min:输入信号;

6)秒十位信号sec10:输入信号;

7)秒个位信号sec:输入信号。

8)LED七段显示数码管的选通信号choose:输出信号;

9)LED七段显示数码管的输出信号segment:输出信号。

§4-3 电子钟顶层VHDL设计

划分的四个模块以元件的形式给出,因此首先在结构的说明部分进行元件说明,然后才呢功能够在结构体中进行例化调用,另外,结构的说明部分还定义了许多中间信号,他们的功能是用来在模块之间传诵信息。

电子钟顶层VHDL设计程序:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity stopwatch is

port(reset :in std_logic;

Shi_on :in std_logic;

fen_on :in std_logic;

clk :in std_logic;

choose :out std_logic_vector(5 downto 0);

segment :out std_logic_vector(6 downto 0));

end stopwatch;

architecture structure of stopwatch is

component clk_div

port(clk :in std_logic;

clk0 :out std_logic);

end component;

component time_counter

port(reset :in std_logic;

enable :in std_logic;

clk0 :in std_logic;

hr10 :out std_logic_vector(3 downto 0);

hr :out std_logic_vector(3 downto 0);

min10 :out std_logic_vector(2 downto 0);

min :out std_logic_vector(3 downto 0);

sec10 :out std_logic_vector(2 downto 0);

sec :out std_logic_vector(3 downto 0));

end component;

component keyin

port(clk :in std_logic;

sethr10:in std_logic;

sethr :in std_logic;

setmin10:in std_logic;

setmin:in std_logic;

reset :in std_logic;

hr10 :out std_logic_vector(3 downto 0);

hr :out std_logic_vector(3 downto 0);

min10 :out std_logic_vector(2 downto 0);

min :out std_logic_vector(3 downto 0));

end component;

component display

port(clk :in std_logic;

reset :in std_logic;

hr10 :in std_logic_vector(3 downto 0);

hr :in std_logic_vector(3 downto 0);

min10 :in std_logic_vector(2 downto 0);

min :in std_logic_vector(3 downto 0);

sec :in std_logic_vector(3 downto 0);

choose :out std_logic_vector(5 downto 0);

segment :out std_logic_vector(6 downto 0));

end component;

signal clk0 :std_logic;

signal enable :std_logic;

signal hr10 :std_logic_vector(3 downto 0);

signal hr :std_logic_vector(3 downto 0);

signal min10 :std_logic_vector(2 downto 0);

signal min :std_logic_vector(3 downto 0);

signal sec10 :std_logic_vector(2 downto 0);

signal sec :std_logic_vector(3 downto 0);

begin

u0:clk_div

port map(clk,clk0);

u1:time_counter

port map(reset,enable,clk0,hr10,hr,min10,min,sec10,sec);

u2:keyin

port map(clk,Shi_on,fen_on,reset,

hr10,hr,min10,min,sec10,sec);

u3:display

port map(clk,reset,hr10,hr,min10,min,sec10,sec,

choose,segment);

end structure;

完成电子钟的顶层VHDL设计程序后,接下来就进行底层模块的设计了,因为顶层设计完全是靠底层模块来支持的。另外,对于顶层VHDL设计程序的仿真验证也需要在底层模块的设计完成后才能进行。

§4-4 电子钟的底层模块

4-2-1 时钟分频模块

时钟分频模块的功能是将输入的外部时钟信号clk进行分频,从而产生用来内部定时计数的1Hz的时钟信号clk0。采用10分频电路就可以完成相应功能。

下面给出10分频电路的VHDL设计程序。

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity clk_div is

port(clk :in std_logic;

clk0:out std_logic);

end clk_div;

architecture rtl of clk_div is

begin

process(clk)

begin

if(clk'event and clk='1')then

if(count="1001")then

count<=(others=>'0');

else

count<=count+1;

end if;

end if;

end process;

process(clk)

begin

if(clk'event and clk='1')then

if(count="1001")then

clk0<='1';

else

clk0<='0';

end if;

end if;

end process;

end rtl;

完成VHDL设计程序后,接下来可以对其仿真,以验证VHDL设计的逻辑是否正确,下图3.3给出了10分频电路的仿真波形。为了能够在图上看的清楚,仿真时钟选择的是clk周期为200ns。

电子种计时模块主要是用来实现内部定时计数功能。计时模块的输入信号包括内部计时时钟信号clk0,输出信号就是计时信息,包括小时十位信号hr10、小时个位信号hr、分十位信号min10、分个位信号min、秒十位信号sec10、秒个位信号sec。通过分析,计时模块可以采用2个六进制计数器、2个十进制计数器和1个二十四进制计数器串联在一起来实现。

§4-5 DS1302介绍

//bcd hex //此函数用于将8421BCD码转换为十进制数,从函数参数可以看出此BCD 码是由两位十进制数组成的。BCD码是用二进制数对十进制数的各个位数进行编码,比如十进制数58,那么转换为BCD码为0x58,356对应BCD码就是0x356。注意这是编码不是数进制间的转换,他们之间不存在等价关系。只是进行编号,为了方便对编号后的数据用十六进制数表示。对应编码规则如下:

十进制数---8421BCD码----编码后用等价的十六进制数表示:

0-----------0000----------0x0

1-----------0001----------0x1

2-----------0010----------0x2

3-----------0011----------0x3

4-----------0100----------0x4

5-----------0101----------0x5

6-----------0110----------0x6

7-----------0111----------0x7

8-----------1000----------0x8

9-----------1001----------0x9

知道了编码规则,那么将2位8421bcd码编号的数,还原为十进制数也就方便了。函数参数是一个字节那么决定了此8421BCD码是两位码即高四位是一个码值、低四位是一个码值,将高四位乘以10加上低四位码值就得到了十进制数。

byte bcd2_hex(byte val)

{

byte i;

i = val&0x0f; //按位与,i得到低四位数。

val >>= 4; //右移四位,将高四位移到低四位的位置,得到高四位码值。

val &= 0x0f; //防止移位时高位补进1,只保留高四位码值。

val *= 10; //高位码值乘以10 。

i += val; //然后与第四位码值相加。

return i; //将得到的十进制数返回。

}

//*****************************************************************

//这个应该是一个类似I2C协议的字节写操作。

static void DS1302_WriteByte(byte val)

{

byte i;

//MinCardClk(0); //stop clk

//Sys_SetCpuClk(clockdiv1);

for(i = 0; i < 8; i++) //通过循环将1字节也即8位二进制数送给i2c数据线。

{

if(val&0x01)DS1302_SDA_W(1); //如果此位是1,那么送给数据线1 。

else DS1302_SDA_W(0); //如果是0,那么给数据线0 。

DS1302_SCK(0); //时钟线置0也即拉低。

DS1302_SCK(1); //时钟线置1,通过这两个动作时钟线产生一个从低到高的跳变,作用是通知从器件取走数据线上的数据。

val >>= 1;// FOR DELAY AND SHIFT //右移数据,接着发送下一位数据,数据是从低位到高位发送。

}

//DS1302_SCK(0);

//Sys_SetCpuClk(clockdiv0);

//MinCardClk(1); //start clk

}

//*****************************************************************

//同理i2c读字节

static byte DS1302_ReadByte(void)

{

byte i,val;

//MinCardClk(0); //stop clk

//Sys_SetCpuClk(clockdiv1);

val=0;

DS1302_SDA_W(1);

for(i = 0; i < 8; i++) //循环从数据线上读取8位数据,然后凑成一字节。

{

DS1302_SCK(1);

DS1302_SCK(0); //时钟一个从高到低的跳变,通知从器件将数据放到数据线上。

val >>= 1; //接收完1位后右移数据,准备接收下一位,这里也是从低位到高位接收数据。

if(DS1302_SDA_R())val |= 0x80; //如果是1那么与0x80或后就得到了1,如果是0,就不用管了因为在移位时直接补的是0。

}

//Sys_SetCpuClk(clockdiv0);

//MinCardClk(1); //start clk

return val;

}

根据本人在调试中遇到的问题,特作如下说明:

DS1302 与微处理器进行数据交换时,首先由微处理器向电路发送命令字节,命令字节最高位MSB(D7)必须为逻辑1,如果D7=0,则禁止写DS1302,即写保护;D6=0,指定时钟数据,D6=1,指定RAM数据;D5~D1指定输入或输出的特定寄存器;最低位LSB(D0)为逻辑0,指定写操作(输入), D0=1,指定读操作(输出)。

在DS1302的时钟日历或RAM进行数据传送时,DS1302必须首先发送命令字节。若进行单字节传送,8位命令字节传送结束之后,在下2个SCLK周期的上升沿输入数据字节,或在下8个SCLK周期的下降沿输出数据字节。

DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H~FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM寄存器,在此方式下可一次性读、写所有的RAM的31个字节。要特别说明的是备用电源B1,可以用电池或者超级电容器(0.1F以上)。虽然DS1302在主电源掉电后的耗电很小,但是,如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。100 μF就可以保证1小时的正常走时。DS1302在第一次加电后,必须进行初始化操作。初始化后就可以按正常方法调整时间。

第五章安装与调试

1.安装顺序与要求:首先安装43只电阻和7个二极管,用剪下来的电阻或二极管的脚制作15条过线并焊接在板上,再焊圆片电容、三极管、数码管……;三只电解电容器和三端稳压器(7805)这四个件不能高过数码的高度,所以应让这四个件平躺在电路板上焊接。最后CPU芯片,焊CPU芯片时最好是断电焊接,以主感应电压击穿UPU。安装备电路图如图5.1所示:

图5.1 安装图

2.连接:(1)大板与小板用5P线连接,注意大、小板之间的连接要1连1、2连2……;(2)用两条细线连大板与喇叭。(3)变压器副边的两条线焊在标有AC12V的两个焊盘上,原边与电源线连接好,并用胶布包好确保安全。

3.通电调试:焊接完毕后,先不要装机壳,平放在桌面上,接通电源,这时数码管显示出时间、喇叭也会给您播放一曲。但是所显示的时间性不是当时的时间,很可能显示:03年某月某日(应该是芯片出厂的日期)……。这时按小板上的设置键,会看到“年份”闪烁,再按修改键,将年份调到当时的年份。再按设置键,“月份”闪烁,按修改键将月份调正确。再按设置键,“日期”闪烁,按修改键将日期调正确。再按设置键,“小时|”闪烁,按修改键将小时调正确。再按设置键,“分钟”闪烁,按修改键将分钟调正确。再按一下设置键,即时间高整完毕。这时中间的两个发光管闪烁,即秒闪。农历和星期自动跟踪。

4.定闹钟设定:按定闹键进入定闹钟设定状态,这时按设置键“小时”闪烁,按修改键高定小时。再按设置键“分钟”闪烁,按修改键设定分钟,再按退出键恢复正常显示这时定闹钟批示灯常亮即定闹钟设置完毕。

5.取消定闹钟:按定闹键显示设定的定闹时间,这时连续按修改键直到时间显示“-—:——”再按退出键定闹钟指示灯熄灭即定闹钟被整点报时被取消。

6.整点报时:在在状态下按修改键,整点指示灯亮,表示整点报时已设定完毕。再按一下修改键整点指示灯熄灭表示整点报时衩取消。在设置状态下,如果超过10秒无操作将

自动退出设置状态恢复正常显示,所有数据有效。

7.电池的作用与安装:电池只起断电后保持数据的作用,可以不装,只是断电后再通电要重新调整时间。安装时将圆片电池推入电池卡,注意正极和电池卡连接,负极与其下边的一条过线连接。

8.成装:断电,把电源线与变压器的连接断开。将喇叭、变压器、小板、大板都用螺丝固定在后壳内,把电源线从后壳侧面的小孔穿入(打一个结以防外力拉断电源线与变压器的连接)与变压器原边连接好并用胶布包好确保安全。这时在通电试一下如果没有设置的时间还正确,说明主板上的电池起作用了,(如果时间又恢复了设置前的显示说明电池也电或D3接反)。这时即可放上面板盖上前壳,用6条螺丝拧紧即安装成功。

万年历电子钟设计报告

课程设计报告课程设计名称 SOPC原理及应用专业电子科学与技术 班级电子13-1班 学号 姓名郑航 指导教师冯丽 成绩

2016年1月13日

目录 一、设计目的 (1) 二、设计内容要求 (1) 三、系统软、硬件需求分析 (1) 1. 硬件系统组成规划 (1) 2. 软件系统规划 (2) 四、设计步骤 (3) 3. 新建工程“count_binary” (3) 4. 添加ip核 (4) 5. 添加SDRAM Controller (5) 6. 添加flash (6) 7. 添加外部RAM总线(Avalon三态桥) (7) 8. 添加pio核 (7) 9. 添加cpu核 (8) 10. 添加LCD核 (9) 11. 自动分配基地址并生成系统 (9) 12. 设置顶层模块图 (10) 13. 管脚分配并编译 (11) 14. 启动Nios II IDE,新建工程 (12)

15. 导入设计程序 (12) 16. 编译工程并烧录 (13) 五、设计结果 (14) 六、源程序 (16) 1. 程序......................................... 错误!未定义书签。 2. 程序......................................... 错误!未定义书签。 3. 程序......................................... 错误!未定义书签。 4. 程序 (16) 七、实验心得 (28)

项目基于NiosII系统的电子钟设计 一、设计目的 1.掌握基本的开发流程。 2.熟悉QUARTUS II软件的使用。 3.熟悉NIOS II软件的使用。 4.掌握SOPC硬件系统的搭建和NIOSII软件编程方法。 5.掌握SOPC系统设计方法。 6.进一步了解简单的设置及其编程。 二、设计内容要求 NiosII系统的硬件设计,软件设计,该系统能实现一个电子钟功能。 三、系统软、硬件需求分析 1.硬件系统组成规划 根据系统要实现的功能和开发板配置,本项目中需要用到的Cyclone II开发板上的外围器件有: LCD:电子钟显示屏幕 按钮:电子钟设置功能键 Flash存储器:存储软、硬件程序 SRAM存储器:程序运行时将其导入SRAM 根据所用到的外设和器件特性,在SOPC Builder中建立系统要添加的模块包括:NiosII CPU定时器,按键PIO,LCD,外部RAM总线(Avalon三态桥),

推荐-电子万年历的设计与制作课程设计 精品

华南农业大学 电子工程学院应用物理系 课程设计(报告)任务书 设计题目:电子万年历的设计与制作 任务与要求(请按所选题目自行总结) 任务:设计一个电子万年历,利用实时时钟芯片ds1302和51单片机制作实时时钟。 要求: 1.使用LCD1602显示屏显示日期和时间; 2.能够显示新历和农历; 3. 包括时钟模块,能够显示实时时钟; 4. 要有时间设置按键部分; 5. 完成硬件电路的设计后,编写程序,实现时间和日期的显示等功能; 6. 调试程序,完成功能验证,写出完整的课程设计。 实验器材: 1.单片机最小系统:单片机(插座),晶振,电阻,电容,按键; 2.电源模块:自锁开关,LED灯,USB插座; 3.按键模块:按键; 4.1602显示模块:1602(排母),电位器,电容; 5.RTC模块:DS1302芯片(插座),晶振,CR2032电池(插座); 6.DIY小部件:漆包线,杜邦线,排针,排母,IC插座,电阻包,电容包,烙铁套装; 开始日期20XX 年 3 月 4 日完成日期20XX 年3 月 23 日

电子万年历设计 摘要:本系统是由单片机最小系统、电源模块、按键模块、LCD1602显示模块及RTC模块组成的电子万年历系统。通过时钟模块实时进行时间和日期的计数,进而传递给单片机处理,单片机再将其传递给LCD1602模块显示当前时间,另设有按键模块可以完成时间设置以及日期查询等功能操作。其设计简单,性能优良,时间设置可调,同时同步显示农历和星期,具有较强的实用性。本文先简要介绍每个模块的工作原理,再作整个系统电路的综合分析,说明该电子万年历的实现过程。 Summary:This system,electronic calendar system,is posed of SCM minimum system, power supply module, keys module, LCD1602 display module and RTC module .Through RTC module for counting the time and date, and then transmit to SCM for processing,and then send it to the LCD1602 module to show the current time, also operates key modules can be pleted time setting and operating date query function.Its simple design, excellent performance, adjustable time setting, synchronous display lunar calendar and week at the same time, has strong practicability.This paper first briefly introduces the working principle of each module, and then a prehensive analysis of the circuit.The last,illustrate the whole system implementation process of the electronic calendar. 关键词:万年历,计时,显示,农历 Keywords: calendar、timing、display、

电子时钟万年历设计

计算机科学与技术学院硬件课程设计报告

在日常生活中,手表,闹钟是不可或缺的。在实际生活生产活动中,也要考虑时间的因素,如工时的计算,霓虹灯的亮灭。 因为集成电路制造技术的不断提高,出现了高性能、高可靠的集成芯片。电子时钟在工业领域,日常生活中得到了广泛的应用。电子时钟在性能方面具有精度高,实时性好,易于调整等优点。这些使得温度控制系统的研究和开发得到的各方面的广泛关注和支持。 本次课程设计,我利用8254计数芯片,8255芯片,4*4小键盘,12864LCD 液晶显示器,蜂鸣器制作了一个带有闹钟功能的电子时钟万年历。它可以实现由4*4小键盘输入初始时间(包括年月日时分秒星期),利用8254计数,通过程序处理进位,判断闰年,在液晶显示屏上实时显示时间。还可以由小键盘选择不同的闹钟模式,设定闹钟时间。 关键词: 电子时钟; 8255A芯片; 8254芯片; 12864LCD液晶显示器;键盘输入;蜂鸣器;闹钟功能;万年历

1.设计任务与要求...........................................................................6- 1.1实验目的 (6) 1.2具体要求 (6) 2.总体方案与说明...........................................................................6- 2.1使用硬件 (6) 2.1流程设计 (6) 2.1.1系统程序模块 (6) 2.1.1系统流程图 (7) 3.硬件方案 (7) 3.1硬件说明 (7) 3.1.1计数芯片8254 (7) 3.1.2可编程外围接口芯片8255A (8) 3.1.2 128×64字符液晶显示器 (11) 3.2电路原理图与说明 (12) 3.2.1键盘电路 (13) 3.2.2 8254计数电路 (13) 3.2.3 液晶显示电路 (14) 3.3电路连接图 (14) 3.3.1 8254计数芯片 (14) 3.3.2 整体电路 (15) 4.软件方案 (15) 4.1软件主要模块流程图 (15) 4.1.1输入子程序模块流程图 (16) 4.1.2显示子程序模块流程图 (18) 4.1.2闰年子程序模块流程图 (18) 4.1.2蜂鸣器子程序模块流程图 (18) 4.1.2时间进位程序模块流程图 (19) 4.1.2主程序模块流程图 (20) 4.2源程序清单与注释 (21) 5.分析与测试 (38) 6.运行结果 (38) 6.1试验线路图 (39) 6.2实验结果 (39) 6.2.1欢迎界面 (39)

基于单片机电子万年历的毕业设计说明

单片机课程设计报告 电子万年历设计 姓名:建强 学号: 专业班级: 08电气(2)班指导老师:吴永 所在学院:科技学院 2011年6月30日

摘要 随着科技的快速发展,时间的流逝,至从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。 综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。 具体实现功能: (1)显示年月日时分秒及星期信息 (2)具有可调整日期和时间功能 (3)与即时时间同步

目录 1方案论证 (3) 1.1单片机芯片的选择方案和论证 (3) 1.2显示模块选择方案和论证 (3) 1.3时钟芯片的选择方案和论证 (4) 1.4电路设计最终方案决定 (4) 2系统的硬件设计与实现 (5) 2.1电路设计框图 (5) 2.2系统硬件概述 (5) 2.3主要单元电路的设计 (5) 2.3.1单片机主控制模块的设计 (5) 2.3.2时钟电路模块的设计 (6) 2.3.3电路原理及说明 (7) 2.3.4显示模块的设计 (8) 3系统的软件设计 (9) 3.1程序流程框图 (9) 4测试与结果分析 (11) 4.1硬件测试 (10) 4.2软件测试 (10) 4.3测试结果分析与结论 (10) 4.3.1 测试结果分析 (10) 4.3.2 测试结论 (10) 5prodeus软件仿真........................................ ..........错误!未定义书签。 5.1Proteus ISIS简介 (12) 5.2Proteus运行流程 (13) 5.3Proteus功能仿真 (13) 6课程设计总结与体会.......................................... .....错误!未定义书签。 参考文献...........................................................错误!未定义书签。 附录一:系统电路图.................................................错误!未定义书签。 附录二:系统程序...................................................错误!未定义书签。

51单片机万年历毕业设计论文

专科毕业设计(论文) 题目51单片机电子万年历论文 51单片机电子万年历论文 摘要: 电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。 本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。在编写程序过程中发现

以现有的相关知识要独自完成编写任务困难重重,在老师和同学的帮助下才完成 了程序部分的编写。 万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,LED显示电路,以及调时按键电路等组成。在单片机的选择上本人使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用2片7SEG-MPX8-CA和一片7SEG-MPX4-CA。7SEG-MPX8-CA是一种八个共阳二极管显示器,7SEG-MPX4-CA是一种四个共阳二极管显示器。为了能更轻松的控制这三片显示器,本人使用了3片74HC164来驱动。74HC164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。软件方面主要包括日历程序、时间调整程序,公历转阴历程序,显示程序等。程序采用汇编语言编写,以便更简单地实现调整时间及阴历显示功能。所有程序编写完成后,在wave软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。最后总在老师同学的帮助以及自己的努力下完成了此次电子万年历的设计。 关键词: 时钟电钟;DS1302;DS18B20;动态扫描;单片机 Abstract E-calendar day time is a very wide range of tools, increasingly popular in modern society. It can be year, month, day, Sunday, hours, minutes, seconds for time, but also has a leap year compensation to a variety of functions, and the DS1302's long life, small error. For the digital electronic calendar using an intuitive digital display can simultaneously display year, month, day, Sunday, hours, minutes, seconds, and temperature and other information, but also a time-calibration and other functions. The circuit uses AT89S52 microcontroller as the core, power consumption, low-voltage work in 3V, the voltage can choose 3 ~ 5V voltage supply. The design is based on 51 series of microcontrollers to the design of electronic calendar, you can display date information on when the minutes and seconds, and weeks, with adjustable date and time functions. At the same time in the design of the theoretical basis of the MCU and peripheral expansion of knowledge of the more comprehensive preparation. The hardware and software design, there is no good basic knowledge and practical experience will be greatly limited, each feature is required to achieve the kind of hardware, procedures, how to write, how to implement such algorithms, there is no certain foundation can not be good implementation. Found during the preparation process to the existing knowledge to complete the preparation of the task alone difficult, In the help of teachers and students to complete the program part of the preparation. Calendar of the design process in hardware and software to synchronize the design. Hardware mainly by the AT89C52 microcontroller, LED display circuit, and the tune composed of the circuit when the button. In the SCM choice I used the AT89C52 microcontroller, which is suitable for many of the more complex control applications. Monitor the use of two 7SEG-MPX8-CA and a 7SEG-MPX4-CA. 7SEG-MPX8-CA is a total

多功能时钟(万年历)设计

多功能时钟(万年历) 设 计 报 告 专业电子信息科学与技术 班级13级电子专升本 姓名韩科峰 学号130522012 考勤成绩设计成绩 调试成绩报告成绩 总成绩

一、课题名称 多功能时钟(万年历)设计 二、内容摘要 美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。 综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 本设计是基于单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。 关键词: 三、设计指标(要求); 1、显示时间、日期由按键选择显示(日期时间可调整)。 2、可设置闹钟功能; 3、制作PC机设置界面软件,由PC机可完成对时钟的各项设置 四、系统框图;

STC12C5A08S2 单片机 DS1302时钟模块 五、各单元电路设计、参数计算和元器件选择 4位共阴极数码管 按键

六、工作原理 DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲;DS1302的控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0,位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。 “CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”

基于51单片机电子万年历设计

基于51单片机电子万年历设计 专业:机电设备维修与管理姓名:杜洪浦指导老师: 摘要电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分和秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3到5V电压供电。 万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,液晶显示电路,复位电路,时钟电路,稳压电路电路以及串口下载电路等组成。在单片机的选择上使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用液晶LCD1602。软件方面主要包括日历程序、液晶驱动程序,显示程序等。程序采用汇编语言编写。所有程序编写完成后,在Keil C51软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。 关键词时钟电钟,DS1302,液晶LCD1602,单片机 目录 1设计要求与方案论证 (2) 1.1 设计要求 (2) 1.2 系统基本方案选择和论证 (2) 1.2.1单片机芯片的选择方案和论证 (2) 1.2.2 显示模块选择方案和论证 (3) 1.2.3时钟芯片的选择方案和论证: (3) 1.3 电路设计最终方案决定 (3) 2系统的硬件设计与实现 (3) 2.1 电路设计框图 (4) 2.2 系统硬件概述 (4) 2.3 主要单元电路的设计 (4) 2.3.1单片机主控制模块的设计 (4)

带语音报时功能的万年历的设计毕业设计

毕业设计(论文) 带语音报时功能的的万年历的设计

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

万年历_开题报告

xxxxx 毕业论文(设计) 开题报告 题目基于年历设计 学院电气工程学院 年级 xxx级 专业电子信息工程 姓名宋飞 学号 2011588693 指导教师欧阳飞 教务处制表 2012年12月10日

一、选题依据 课题来源、选题依据和背景情况;课题研究目的、学术价值或实际应用价值时间对人们来说总是那么宝贵,工作的忙碌和繁杂容易使人忘记当前的时间。然而遇到重大事情的时候,一旦忘记时间,就会给自己和他人带来很大的麻烦。平时我们要求上班准时,约会或召开会议必然要提及时间:火车要准点到达,航班要准点起飞;工业生产中,很多环节都需要用时间来确定工序替换时刻。所以说能随时准确的知道时间并利用时间,是我们生活和工作中必不可少的。 想知道时间,手表当然是一个很好的选择,但是,在忙碌当中,我们还需要个“助理”及时的给我们提醒时间。所以,计时器最好能够拥有个定时系统,随时提醒容易忘记时间的人。最早能够定时、报时的时钟属于机械式钟农,但这种时钟受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。 电子万年历是采用电子电路实现对时、分、秒进行数字显示的计时装置,广泛应用于个人家庭、车站、码头办公室等公共场所,成为人们日常生活中不可少的必须品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时报警、按时自动打铃、定时广播、自动启闭灯箱、通断动力设备、甚至各种定时电气的自动启动等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。单片机开发技术已成为电子信息、电气、通信、自动化、机电一体化等专业技术人员必须掌握的技术。在国内:单片机的学习呈上升趋势,但很多人学习是无头绪,不知道从何入手,行业发展迅速,国内生产技术不断提升。国内企业为了获得更大的投资收益,在生产规模和产品质量上不断提升,开发单片机呈必然趋势。我国生产的电子万年历有很多,总体上来说是研究多功能电子万年历为主,使万年历除了具有原来的时间、日期等基本功能外,还具有闹钟,报警等功能,商家生产的电子万年历更从质量、价格、实用上考虑不断改变电子万年历的设计,使其更有市场。在科技发达的今天,智能化必将是以后的发展趋势,所以开发活和学习单片机是社会发展的必然需求。

电子万年历设计

课程论文论文题目基于单片机的电子万年历设计 课程名称单片机原理及接口技术 专业年级 2014级自动化3班 学生姓名孙宏远贾腾飞 学号 2016年12 月3 日

摘要: 本文介绍了基于AT89C51单片机的多功能电子万年历的硬件结构和软硬件设计方法。系统以AT89C51单片机为控制器,以串行时钟日历芯片DS1302记录日历和时间,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。万年历采用直观的数字显示,可以在LED上同时显示年、月、日、周日、时、分、秒,还具有时间校准等功能。此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,具有广阔的市场前景。。 关键词:AT89C51单片机,DS1602时钟芯片,LCD1602显示屏。串口通信。 一:引言 本设计的基于单片机控制的电子万年历,具有年、月、日、星期、时、分、秒的显示等功能,实现过程就是由主控制发送信息给DS1302时钟芯片再由时钟芯片反馈给单片机,再由主控制器传送给LCD1602显示屏显示信息。并且可以在键盘设置模块输入修改时间,当键盘设置时间、日期时,单片机主控制根据输入信息,通过串口通信传送给DS1302时钟芯片,DS1302芯片读取当前新信息产生反馈传送给单片机,然后单片机根据控制最后输送显示信息到LCD1602液晶显示屏模块上显示。 二:硬件设计: 2.0.硬件的设计总框图 2.1 DS1032时钟电路 DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。芯片如图。 DS1302的内部主要由移位寄存器、指令和控制逻辑、振荡分频电路、实时时钟以及RAM组成。每次操作时,必须首先把CE置为高电平。再把提供地址和命令信息的8位装入移位寄存器。数据在SCLK的上升沿串行输入。无论是读周期还是写周期发生,也无论传送方式是单字节还是多字节,开始8位将指定内部何处被进行访问。在开始 8个时钟周期把含有地址信息的命令字装入移位寄存器之后。紧随其后的时钟在读操作时输出数据。 2.2 LCD1602与AT89C52的引脚接线 LCD1602采用总线式与单片机相连,AT89c52的P1口直接与液晶模块的数据总线D0~D7相连;P2 口的0,1,2脚分别与液晶模块的RS、RW、E脚相连。滑动变阻器用于调整液晶显示的亮度。电路如图

电子万年历的毕业设计

毕业设计(论文) 论文题目:基于AT89S51的电子万年历 所属系部: 专业: 学生姓名:班级 指导老师: 二零一一年五月二十七日

电子万年历 摘要:本设计以数字集成电路技术为基础,单片机技术为核心。软件设计采用模块化结构,汇编语言编程。系统通过LED显示数据,可以显示公历日期(年、月、日、时、分、秒)。在内容安排上首先描述系统硬件工作原理,着重介绍了各硬件接口技术和各个接口模块的功能;其次,详细的阐述了程序的各个模块和实现过程。 关键词:单片机;万年历 Electronic calendar LIU TAO Xian aviation technology college Abstract: The design is based on digital integrate circuit, microcontroller technology is the core of the system. The software design uses module structure and adapts microcontroller assemble language. The system can display calendar date, including year, month, week, hour, minute, second and week. The work principle of the system is discussed in this paper, hardware interface and module function are reported primarily in the system. 目录 前言……………………………………………………………………………………...II

多功能万年历毕业设计

目录 引言 (1) 1 系统功能与方案论证 (1) 1.1系统功能 (1) 1.2 系统基本方案选择和论证 (1) 1.2.1 单片机芯片的选择方案和论证 (2) 1.2.2 显示模块选择方案和论证 (2) 1.2.3 时钟芯片的选择方案和论证 (2) 1.2.4 温度传感器的选择方案与论证 (3) 1.3 电路设计最终方案决定 (3) 2 系统的硬件设计与实现 (3) 2.1 电路设计框图 (3) 2.2 系统硬件概述 (4) 2.3 各系统电路及工作原理 (4) 2.3.1 AT89S52单片机最小系统设计 (4) 2.3.2 时钟电路模块的设计 (6) 2.3.3 温度采集电路的设计 (7) 2.3.4 LCD1602液晶显示模块设计 (7) 2.3.5 电源电路 (9) 2.3.6 闹钟电路设计 (10) 2.3.7 键盘输入电路 (10) 3 软件设计 (11) 3.1 主程序框图 (12) 3.2 DS1302时间处理 (12) 3.3 环境温度采集 (15) 3.4 键盘扫描 (15) 3.5 音乐播放 (15) 3.6 公历转农历 (15) 结束语 (17) 参考文献 (18) 附录 (19) 附录A 程序 (19) 附录B 原理图 (41) 致谢..................................................... 错误!未定义书签。

多功能万年历毕业设计 引言 电子万年历是实现对年、月、日、时、分、秒数字显示的计时装置,广泛用于个人、家庭、车站、码头、办公室、银行大厅等场所,成为人们日常生活中的必需品。数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表。钟表的数字化给人们生产生活带来了极大的方便,在此基础上完成的电子万年历精度高,功能易于扩展,可扩展成为诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动启闭路灯等电路。因此,研究电子万年历及扩大其应用有着非常现实的意义。 1 系统功能与方案论证 1.1系统功能 ·LCD显示年、月、日、时、分、秒、星期、温度、农历等信息 ·手动调整年、月、日、时、分、星期、温度上限、闹铃时间 ·温度报警 ·闹铃播放音乐 ·日历时间掉电保护 ·公历与农历自动关联 ·闹铃可选择关闭、每天循环或只响应一次三种模式 ·可选用USB、直流12V或5V电源或交流9V电源对电路进行供电 1.2 系统基本方案选择和论证 由于现在市面上的电子万年历的种类比较多,因此到底选择什么样的方案在设计中是至关重要的。正确地选择方案就可以使产品更加人性化,并且可以减小开发的难度,缩短开发的周期,降低产品的成本等等,因此就会被人们普遍接受,并且能够更快地将产品推向市场实现其自身的价值。

万年历时钟电路设计报告word精品

阿坝师范学院 万年历设计报告姓名:李朝林 学号:20156045 班级:电子信息工程02班

阿坝师范学院物理与电子科学系 目录 1?设计任务与要求 (2) 2?主要器件讨论与选择 (2) 3.设计原理 (3) 4?单元电路设计 (3) 4.1显示电路 (3) 4.2时分秒设计............................................. .4 4.3星期天数设计 (5) 4.4闰年平年判断电路 (6) 4.5二月与大小月判断电路 (9) 4.6天数置数信号 (10) 4.7校正电路 (11) 4.8秒脉冲电路 (11) 5.完整的电路设计原理图 (12) 6.电路调试过程与方法 (13) 7.实验心得体会与总结 (13) 1. 设计任务与要求 用数字集成电路设计万年历电子钟逻辑电路 指标如下: 1)设计一个能直接显示“年”“月”“日”、“星期”、“时”、 “分”、“秒”的十进制万年历时钟显示器。 2)具有校时的功能,可分别对“年”、“月”、“日”、“星期”、 “时” “分” “秒”进行单独校时。 2. 主要器件讨论与选择 主要器件中显示模块选用74SEG_BCD数码管显示8421bcd码,计数模块统一选用74LS160作为计数芯片;74LS160具有同步置数异步清零功能,同时在有时钟脉冲的情况下进行加计数,无论采用同步置数还是异步清零都可以实现60s、60m、24h置数清零功能。因此

[在此处键入] 数字电子技术万年历设计报告 74LS160是一个不错的选择。本次仿真通过 74LS160作为时分秒年月 日星期置数,通过秒计数的置数信号作为分计时的脉冲 cp ,取反作 为分计时的使能端,依次向高位进位达到显示目的。 通过闰年、平年、大月、小月、二月的判断电路来控制天计数的 多少。 校时电路,校时选用74LS74触发器作为跳变信号;74LS244存储 信号。起作用的只有一个,当校时有效时计时电路无效。 3. 设计原理 原理图如下: 万年加时种星示器框采禺P 4. 单元电路设计 4.1显示电路 振荡器 呈期廿数 楼时电路? 译码显示电路疋* 千 百 十个

基于AT89C51单片机的电子万年历的设计_课程设计报告

课程设计报告 设计名称:电子万年历设计 专业班级:自动化10101班 完成时间:2013年6月9日 报告成绩:

摘要 本文介绍了基于AT89C51单片机的多功能电子万年历的硬件结构和软硬件设计方法。系统以AT89C51单片机为控制器,以串行时钟日历芯片DS1302记录日历和时间,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。万年历采用直观的数字显示,可以在LED上同时显示年、月、日、周日、时、分、秒,还具有时间校准等功能。此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,具有广阔的市场前景。 关键字AT89C51;电子万年历; DS1302

1 绪论 1.1 课题研究的背景 随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89C51单片机作为核心,功耗小,能在3V 的低压工作,电压可选用3~5V电压供电。 此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。 1.2课题的研究目的与意义 二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。电子万年历的开发与研究在信息化时代的今天亦是当务之急,因为它应用在学校、机关、企业、部队等单位礼堂、训练场地、教学室、公共场地等场合,可以说遍及人们生活的每一个角落。所以说电子万年历的开发是国家之所需,社会之所需,人民之所需。 由于社会对信息交换不断提高的要求及高新技术的逐步发展,促使电子万年历发展并且投入市场得到广泛应用。 1.3课题解决的主要内容 本课题所研究的电子万年历是单片机控制技术的一个具体应用,主要研究内容包括以下几个方面: (1)选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。 (2)根据选用的电子万年历芯片设计外围电路和单片机的接口电路。 (3)在硬件设计时,结构要尽量简单实用、易于实现,使系统电路尽量简单。 (4)根据设计的硬件电路,编写控制AT89C51芯片的单片机程序。 (5)通过编程、编译、调试,把程序下载到单片机上运行,并实现本设计的功能。 (6)在硬件电路和软件程序设计时,主要考虑提高人机界面的友好性,方便用户操作等因素。 (7)软件设计时必须要有完善的思路,要做到程序简单,调试方便。

基于51单片机温湿度检测+电子万年历的毕业设计论文

毕业设计论文 基于51单片机温湿度检测+电子万年历的设计

[摘要]:温湿度检测是生活生产中的重要的参数。本设计为基于51单片机的温湿度检测与控制系统,采用模块化、层次化设计。用新型的智能温湿度传感器SHT10主要实现对温度、湿度的检测,将温度湿度信号通过传感器进行信号的采集并转换成数字信号,再运用单片机STC89C52RC进行数据的分析和处理,为显示提供信号,显示部分采用LCD1602液晶显示所测温湿度值。系统电路简单、集成度高、工作稳定、调试方便、检测精度高,具有一定的实用价值。 [关键字]:STC89C52RC SHT10 LCD1602 按键指示灯蜂鸣器电子万年历Based on 51 single chip microcomputer temperature and humidity detection + electronic calendar design Abstract:Temperature and humidity detection is important parameters in the production of life. This design is based on 51 single chip microcomputer temperature and humidity detection and control system, adopting modular, hierarchical design. With new type of intelligent temperature and humidity sensor SHT10 main realization about the detection of temperature, humidity, temperature humidity signal acquisition is converted into digital signals through the sensor signal, using SCM STC89C52RC for data analysis and processing, provides the signal for display, display part adopts LCD1602 LCD display the measured temperature and humidity values. Simple circuit, high integration, work stability, convenient debugging, high detection precision, has certain practical value. Key words:STC89C52RC SHT10 LCD1602 key indicator light buzzer The electronic calendar

基于单片机的多功能万年历毕业论文

基于单片机的多功能万年历毕业论文 目录 1 设计任务与要求 2 方案设计与论证 2.1方案一 (3) 2.2 方案二 (4) 2.3 方案三 (4) 2.4 方案论证 (5) 3 硬件单元电路设计与参数计算 3.1 主控制系统 (6) 3.2时钟振荡电路 (7) 3.3复位电路 (8) 3.4 DS1302时钟电路 (9) 3.5按键电路 (10) 3.6 显示电路 (10) 3.7蜂鸣器电路 (11) 4 流程图与各模块的程序 4.1 流程图 (12) 4.2 部分子程序 (13) 5 电路仿真调试 5.1 总原理图 (18) 5.2 整体电路仿真图以及仿真结果分析 (19) 5.3 调试 (20) 参考文献 (21) 致谢 (22) 附录 (23) 毕业设计(论文)工作容及完成时间:

工作安排如下: 1、查阅文献,翻译英文资料,书写开题报告第1---4周 2、相关资料的获取和必要知识的学习第5---9周 3、设计系统的硬件和软件模块并调试第10--14周 4、撰写论文第15--16周 5、总结,准备答辩第17周 参考文献 [1]朱月秀冷祖祁,单片机基础(第3版):航航天大学 [2] 华成英童诗白,模拟电子技术基础(第四版):高等教育 [3}建领薛园园,零基础学单片机C语言程序设计:机械工业 [4]楼然苗光飞. 单片机课程设计指导:航航天大学 [5]凤霞. C语言程序设计教程(第二版):理工大学 [6]亮侯国锐. 单片机C语言编程与实例:人民邮电 [7]义和王敏男许宏昌余春长 . 例说5单片机(C语言版):人民邮电 [8]郭天祥编.新概念51单片机C语言教程.:电子工业,2009. [9]周兴华编.手把手教你学单片机C程序设计.:航空航天大学,2008.6. [10] 谭浩强编.C程序设计:清华大学,2008.7. 信息工程系自动化专业类 0882021班 学生(签名): 填写日期:2012 年 5 月20日 指导教师(签名): 助理指导教师(并指出所负责的部分): 信息工程系主任(签名):

相关文档
最新文档