61阅读

ds1302中文资料-ds1302中文资料

发布时间:2018-01-02 所属栏目:信息与通信

一 : ds1302中文资料

1 DS1302 简介:

DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~

5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302的外部引脚分配如图1所示及内部结构如图2所示。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。

图1 DS1302的外部引脚分配

各引脚的功能为:

Vcc1:主电源;Vcc2:备份电源。当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电。 SCLK:串行时钟,输入,控制数据的输入与输出; I/O:三线接口时的双向数据线;

CE:输入信号,在读、写数据期间,必须为高。该引脚有两个功能:第一,CE开始控制字访问移位寄存器的控制逻辑;其次,图2 DS1302的内部结构

CE提供结束单字节或多字节数据传输的方法。

DS1302有下列几组寄存器:

① DS1302有关日历、时间的寄存器共有12个,其中有7个寄存器(读时81h~8Dh,写时80h~8Ch),存放的数据格式为BCD码形式,如图3所示。

图 3 DS1302有关日历、时间的寄存器

小时寄存器(85h、84h)的位7用于定义DS1302是运行于12小时模式还是24小时模式。当为高时,选择12小时模式。在12小时模式时,位5是 ,当为1时,表示PM。在24小时模式时,位5是第二个10小时位。

秒寄存器(81h、80h)的位7定义为时钟暂停标志(CH)。当该位置为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位置为0时,时钟开始运行。

控制寄存器(8Fh、8Eh)的位7是写保护位(WP),其它7位均置为0。在任何的对时钟和RAM的写操作之前,WP位必须为0。当WP位为1时,写保护位防止对任一寄存器的写操作。

②DS1302有关RAM的地址

DS1302中附加31字节静态RAM的地址如图4所示。

图4

③ DS1302的工作模式寄存器

所谓突发模式是指一次传送多个字节的时钟信号和RAM数据。突发模式寄存器如图5所示。

2 读写时序说明

DS1302是SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。

要想与DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如图6。 图5 ④此外,DS1302还有充电寄存器等。

图6 控制字(即地址及命令字节)

控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。

位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;

位5至位1(A4~A0):指示操作单元的地址;

位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。

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

具体操作见驱动程序。

3 电路原理图:

电路原理图如图8,DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。 图7 数据读写时序

图8

4 驱动程序

//寄存器宏定义

#define WRITE_SECOND 0x80

#define WRITE_MINUTE 0x82

#define WRITE_HOUR 0x84

#define READ_SECOND 0x81

#define READ_MINUTE 0x83

#define READ_HOUR 0x85

#define WRITE_PROTECT 0x8E

//位寻址寄存器定义

sbit ACC_7 = ACC^7;

//管脚定义

sbit SCLK = P3^5; // DS1302时钟信号 7脚

sbit DIO= P3^6; // DS1302数据信号 6脚

sbit CE = P3^7; // DS1302片选 5脚

//地址、数据发送子程序

void Write1302 ( unsigned char addr,dat )

{

unsigned char i,temp;

CE=0; //CE引脚为低,数据传送中止

SCLK=0; //清零时钟总线

CE = 1; //CE引脚为高,逻辑控制有效

//发送地址

for ( i=8; i>0; i-- ) //循环8次移位

{

SCLK = 0;

temp = addr;

DIO = (bit)(temp&0x01); //每次传输低字节

addr >>= 1; //右移一位

SCLK = 1;

}

//发送数据

for ( i=8; i>0; i-- )

{

SCLK = 0;

temp = dat;

DIO = (bit)(temp&0x01);

dat >>= 1;

SCLK = 1;

}

CE = 0;

}

//数据读取子程序

unsigned char Read1302 ( unsigned char addr )

{

unsigned char i,temp,dat1,dat2;

CE=0;

SCLK=0;

CE = 1;

//发送地址

for ( i=8; i>0; i-- ) //循环8次移位 {

SCLK = 0;

temp = addr;

DIO = (bit)(temp&0x01); //每次传输低字节

addr >>= 1; //右移一位

SCLK = 1;

}

//读取数据

for ( i=8; i>0; i-- )

{

ACC_7=DIO;

SCLK = 1;

ACC>>=1;

SCLK = 0;

}

CE=0;

dat1=ACC;

dat2=dat1/16; //数据进制转换 dat1=dat1%16; //十六进制转十

进制

dat1=dat1+dat2*10;

return (dat1);

}

//初始化DS1302

void Initial(void)

{

Write1302 (WRITE_PROTECT,0X00); //禁止写保护

Write1302 (WRITE_SECOND,0x56); //秒位初始化

Write1302 (WRITE_MINUTE,0x34); //分钟初始化 Write1302 (WRITE_HOUR,0x12); //小时初始化

Write1302 (WRITE_PROTECT,0x80); //允许写保护

}

51单片机综合学习系统之 DS1302时钟应用篇 《电子制作》2008年10月 站长原创,如

需引用请注明出处

大家好,通过以前的学习,我们已经对51单片机综合学习系统的使用方法及学习方式有所了解与熟悉,学会了使用AD模数转换的基本知识,体会到了综合学习系统的易用性与易学性,这一期我们将一起学习DS1302时钟的基本原理与应用实例。

先看一下我们将要使用的51单片机综合学习系统能完成哪些实验与产品开发工作:分别有流水灯,数码管显示,液晶显示,按键开关,蜂鸣器奏乐,继电器控制,IIC总线,SPI总线,PS/2实验,AD模数转换,光耦实验,串口通信,红外线遥控,无线遥控,温度传感,步进电机控制等等。主体系统如图1所示,其配套书本教程《单片机快速入门》如图2所示。

图1 51单片机综合学习系统主机部分图片

图2 51单片机综合学习系统配套书本教程——《单片机快速入门》

上图是我们将要使用的51单片机综合学习系统硬件平台,如图1所示,本期实验我们用到了综合系统主机、板载的DS1302时钟芯片,综合系统其它功能模块原理与使用详见前几期《电子制作》杂志及后期连载教程介绍。

在很多单片机系统中都要求带有实时时钟电路,如最常见的数字钟、钟控设备、数据记录仪表,这些仪表往往需要采集带时标的数据,同时一般它们也会有一些需要保存起来的重要数据,有了这些数据,便于用户后期对数据进行观察、分析。本小节就介绍市面上常见的时钟芯片DS1302的应用。DS1302是美国DALLAS公司推出的一款高性能、低功耗、带内部RAM的实时时钟芯片(RTC),也就是一种能够为单片机系统提供日期和时间的芯片。通过本小节的学习,我们将会把RTC相关的一些技术粗略介绍一下,然后介绍DS1302与单片机之间的软硬件应用。

DS1302时钟芯片简介

DS1302是DALLAS公司推出的涓流充电时钟芯片,内含一个实时时钟/日历和31字节静态RAM,可以通过串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM标志位决定采用24或12小时时间格式。DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需三根I/O线:复位(RST)、I/O数据线、串行时钟(SCLK)。时钟/RAM的读/写数据以一字节或多达31字节的字符组方式通信。DS1302工作时功耗很低,保持数据和时钟信息时,功耗小于1mW。

DS1302的内部结构

DS1302的外部引脚功能说明如图3所示:

X1,X2

GND

RST

I/O

SCLK

VCC1 32.768kHz晶振引脚 地 复位 数据输入/输出 串行时钟 电池引脚

VCC2

图3 DS1302封装图 主电源引脚

DS1302的内部结构如图4所示,主要组成部分为:移位寄存器、控制逻辑、振荡器、实时时钟以及RAM。虽然数据分成两种,但是对单片机的程序而言,其实是一样的,就是对特定的地址进行读写操作。

图4 DS1302的内部结构图

DS1302含充电电路,可以对作为后备电源的可充电电池充电,并可选择充电使能和串入的二极管数目,以调节电池充电电压。不过对我们目前而言,最需要熟悉的是和时钟相关部分的功能,对于其它参数请参阅数据手册。 DS1302的工作原理

DS1302工作时为了对任何数据传送进行初始化,需要将复位脚(RST)置为高电平且将8位地址和命令信息装入移位寄存器。数据在时钟(SCLK)的上升沿串行输入,前8位指定访问地址,命令字装入移位寄存器后,在之后的时钟周期,读操作时输出数据,写操作时输出数据。时钟脉冲的个数在单字节方式下为8+8(8位地址+8位数据),在多字节方式下为8加最多可达248的数据。 DS1302的寄存器和控制命令

对DS1302的操作就是对其内部寄存器的操作,DS1302内部共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器以外的寄存器。日历、时间寄存器及控制字如表1所示:

7

寄存器名称 秒寄存器 分寄存器 小时寄存器 日寄存器 月寄存器 星期寄存器 年寄存器 写保护寄存器

1 1 1 1 1 1 1 1 1

6 RAM/CK 0 0 0 0 0 0 0 0

5 A4 0 0 0 0 0 0 0 0

4 A3 0 0 0 0 0 0 0 0

3 A2 0 0 0 0 1 1 1 1

2 A1 0 0 1 1 0 0 1 1

1 A0 0 1 0 1 0 1 0 1

0 RD/W

慢充电寄存器 时钟突发寄存器 1 1 0 0 0 1 1 1 0 1 0 1 0 1

表1:日历、时钟寄存器与控制字对照表

最后一位RD/W为“0”时表示进行写操作,为“1”时表示读操作。 DS1302内部寄存器列表如表2所示: 寄存器名称 秒寄存器 分寄存器 小时寄存器 日期寄存器 月份寄存器 周寄存器 年份寄存器

命令字 写 读 80H 81H 82H 83H 84H 85H 86H 88H 8AH 8CH

87H 89H 8BH 8DH

取值范围 00-59 00-59 01-12或00-23 01-28,29,30,31

01-12 01-07 00-99

7 CH 0 12/24 0 0 0

各位内容 6 5 4 3 2 1 0

10SEC SEC 10MIN MIN 0 A HR HR 0 10DATE 0 0 10M 0 0 0 10YEAR

DATE MONTH 0 DAY YEAR

表2:DS14302内部主要寄存器分布表

DS1302内部的RAM分为两类,一类是单个RAM单元,共31个,每个单元为一个8位的字节,其命令控制字为COH~FDH,其中奇数为读操作,偶数为写操作;再一类为突发方式下的RAM,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 我们现在已经知道了控制寄存器和RAM的逻辑地址,接着就需要知道如何通过外部接口来访问这些资源。单片机是通过简单的同步串行通讯与DS1302通讯的,每次通讯都必须由单片机发起,无论是读还是写操作,单片机都必须先向DS1302写入一个命令帧,这个帧的格式如表1所示,最高位BIT7固定为1,BIT6决定操作是针对RAM还是时钟寄存器,接着的5个BIT是RAM或时钟寄存器在DS1302的内部地址,最后一个BIT表示这次操作是读操作抑或是写操作。

物理上,DS1302的通讯接口由3个口线组成,即RST,SCLK,I/O。其中RST从低电平变成高电平启动一次数据传输过程,SCLK是时钟线,I/O是数据线。具体的读写时序参考图5,但是请注意,无论是哪种同步通讯类型的串行接口,都是对时钟信号敏感的,而且一般数据写入有效是在上升沿,读出有效是在下降沿(DS1302正是如此的,但是在芯片手册里没有明确说明),如果不是特别确定,则把程序设计成这样:平时SCLK保持低电平,在时钟变动前设置数据,在时钟变动后读取数据,即数据操作总是在SCLK保持为低电平的时候,相邻的操作之间间隔有一个上升沿和一个下降沿。

图5 DS1302的命令字结构

DS1302的软硬件设计实例

本例将实现对DS1302的读写操作,将时钟数据在LED数码管上显示出来。调试时将功能选择开关调到DS1302的状态上。

图6 DS1302实验演示图

硬件原理图

图10-46 硬件原理图

程序流程图

图10-47 软件流程图

二 : ds1302中文资料

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

1 DS1302 简介:

DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。[www.61k.com]实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~

5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302的外部引脚分配如图1所示及内部结构如图2所示。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。

图1 DS1302的外部引脚分配

各引脚的功能为:

Vcc1:主电源;Vcc2:备份电源。当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电。 SCLK:串行时钟,输入,控制数据的输入与输出; I/O:三线接口时的双向数据线;

CE:输入信号,在读、写数据期间,必须为高。该引脚有两个功能:第一,CE开始控制字访问移位寄存器的控制逻辑;其次,图2 DS1302的内部结构

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

CE提供结束单字节或多字节数据传输的方法。(www.61k.com]

DS1302有下列几组寄存器:

① DS1302有关日历、时间的寄存器共有12个,其中有7个寄存器(读时81h~8Dh,写时80h~8Ch),存放的数据格式为BCD码形式,如图3所示。

图 3 DS1302有关日历、时间的寄存器

小时寄存器(85h、84h)的位7用于定义DS1302是运行于12小时模式还是24小时模式。当为高时,选择12小时模式。在12小时模式时,位5是 ,当为1时,表示PM。在24小时模式时,位5是第二个10小时位。

秒寄存器(81h、80h)的位7定义为时钟暂停标志(CH)。当该位置为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位置为0时,时钟开始运行。

控制寄存器(8Fh、8Eh)的位7是写保护位(WP),其它7位均置为0。在任何的对时钟和RAM的写操作之前,WP位必须为0。当WP位为1时,写保护位防止对任一寄存器的写操作。

②DS1302有关RAM的地址

DS1302中附加31字节静态RAM的地址如图4所示。

图4

③ DS1302的工作模式寄存器

所谓突发模式是指一次传送多个字节的时钟信号和RAM数据。突发模式寄存器如图5所示。

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

2 读写时序说明

DS1302是SPI总线驱动方式。[www.61k.com)它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。

要想与DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如图6。 图5 ④此外,DS1302还有充电寄存器等。

图6 控制字(即地址及命令字节)

控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。

位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;

位5至位1(A4~A0):指示操作单元的地址;

位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。

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

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

具体操作见驱动程序。[www.61k.com]

3 电路原理图:

电路原理图如图8,DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。 图7 数据读写时序

ds1302中文资料 ds1302中文资料

图8

ds1302中文资料 ds1302中文资料

4 驱动程序

//寄存器宏定义

#define WRITE_SECOND 0x80

#define WRITE_MINUTE 0x82

#define WRITE_HOUR 0x84

#define READ_SECOND 0x81

#define READ_MINUTE 0x83

#define READ_HOUR 0x85

#define WRITE_PROTECT 0x8E

//位寻址寄存器定义

sbit ACC_7 = ACC^7;

//管脚定义

sbit SCLK = P3^5; // DS1302时钟信号 7脚

sbit DIO= P3^6; // DS1302数据信号 6脚

sbit CE = P3^7; // DS1302片选 5脚

//地址、数据发送子程序

void Write1302 ( unsigned char addr,dat )

{

unsigned char i,temp;

CE=0; //CE引脚为低,数据传送中止

SCLK=0; //清零时钟总线

CE = 1; //CE引脚为高,逻辑控制有效

//发送地址

for ( i=8; i>0; i-- ) //循环8次移位

{

SCLK = 0;

temp = addr;

DIO = (bit)(temp&0x01); //每次传输低字节

addr >>= 1; //右移一位

SCLK = 1;

}

ds1302中文资料 ds1302中文资料

//发送数据

for ( i=8; i>0; i-- )

{

SCLK = 0;

temp = dat;

DIO = (bit)(temp&0x01);

dat >>= 1;

SCLK = 1;

}

CE = 0;

}

//数据读取子程序

unsigned char Read1302 ( unsigned char addr )

{

unsigned char i,temp,dat1,dat2;

CE=0;

SCLK=0;

CE = 1;

//发送地址

for ( i=8; i>0; i-- ) //循环8次移位 {

SCLK = 0;

temp = addr;

DIO = (bit)(temp&0x01); //每次传输低字节

addr >>= 1; //右移一位

SCLK = 1;

}

//读取数据

for ( i=8; i>0; i-- )

{

ACC_7=DIO;

SCLK = 1;

ACC>>=1;

SCLK = 0;

}

CE=0;

dat1=ACC;

dat2=dat1/16; //数据进制转换 dat1=dat1%16; //十六进制转十

ds1302中文资料 ds1302中文资料

进制

dat1=dat1+dat2*10;

return (dat1);

}

//初始化DS1302

void Initial(void)

{

Write1302 (WRITE_PROTECT,0X00); //禁止写保护

Write1302 (WRITE_SECOND,0x56); //秒位初始化

Write1302 (WRITE_MINUTE,0x34); //分钟初始化 Write1302 (WRITE_HOUR,0x12); //小时初始化

Write1302 (WRITE_PROTECT,0x80); //允许写保护

}

51单片机综合学习系统之 DS1302时钟应用篇 《电子制作》2008年10月 站长原创,如

需引用请注明出处

大家好,通过以前的学习,我们已经对51单片机综合学习系统的使用方法及学习方式有所了解与熟悉,学会了使用AD模数转换的基本知识,体会到了综合学习系统的易用性与易学性,这一期我们将一起学习DS1302时钟的基本原理与应用实例。[www.61k.com]

先看一下我们将要使用的51单片机综合学习系统能完成哪些实验与产品开发工作:分别有流水灯,数码管显示,液晶显示,按键开关,蜂鸣器奏乐,继电器控制,IIC总线,SPI总线,PS/2实验,AD模数转换,光耦实验,串口通信,红外线遥控,无线遥控,温度传感,步进电机控制等等。主体系统如图1所示,其配套书本教程《单片机快速入门》如图2所示。

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

图1 51单片机综合学习系统主机部分图片

ds1302中文资料 ds1302中文资料

ds1302中文资料 ds1302中文资料

图2 51单片机综合学习系统配套书本教程——《单片机快速入门》

上图是我们将要使用的51单片机综合学习系统硬件平台,如图1所示,本期实验我们用到了综合系统主机、板载的DS1302时钟芯片,综合系统其它功能模块原理与使用详见前几期《电子制作》杂志及后期连载教程介绍。[www.61k.com]

在很多单片机系统中都要求带有实时时钟电路,如最常见的数字钟、钟控设备、数据记录仪表,这些仪表往往需要采集带时标的数据,同时一般它们也会有一些需要保存起来的重要数据,有了这些数据,便于用户后期对数据进行观察、分析。本小节就介绍市面上常见的时钟芯片DS1302的应用。DS1302是美国DALLAS公司推出的一款高性能、低功耗、带内部RAM的实时时钟芯片(RTC),也就是一种能够为单片机系统提供日期和时间的芯片。通过本小节的学习,我们将会把RTC相关的一些技术粗略介绍一下,然后介绍DS1302与单片机之间的软硬件应用。

DS1302时钟芯片简介

DS1302是DALLAS公司推出的涓流充电时钟芯片,内含一个实时时钟/日历和31字节静态RAM,可以通过串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM标志位决定采用24或12小时时间格式。DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需三根I/O线:复位(RST)、I/O数据线、串行时钟(SCLK)。时钟/RAM的读/写数据以一字节或多达31字节的字符组方式通信。DS1302工作时功耗很低,保持数据和时钟信息时,功耗小于1mW。

DS1302的内部结构

DS1302的外部引脚功能说明如图3所示:

ds1302中文资料 ds1302中文资料

X1,X2

GND

RST

I/O

SCLK

VCC1 32.768kHz晶振引脚 地 复位 数据输入/输出 串行时钟 电池引脚

VCC2

图3 DS1302封装图 主电源引脚

DS1302的内部结构如图4所示,主要组成部分为:移位寄存器、控制逻辑、振荡器、实时时钟以及RAM。虽然数据分成两种,但是对单片机的程序而言,其实是一样的,就是对特定的地址进行读写操作。

ds1302中文资料 ds1302中文资料

(www.61k.com)

三 : ds1302中文资料 好

1/10

功能特色:

?时钟计数功能,可以对秒、分钟、小时、月、

星期、年的计数。(www.61k.com]年计数可达到2100年。

?有31*8位的额外数据暂存寄存器

?最少I/O引脚传输,通过三引脚控制

?工作电压:2.0-5.5V

?工作电流小于320纳安(2.0V)

?读写时钟寄存器或内部RAM(31*8位的额外

数据暂存寄存)可以采用单字节模式和突发模式

?

?

?

?8-pinDIP封装或8-pinSOICs兼容TTL(5.0V)可选的工业级别,工作温度-40–85摄氏度兼容DS1202较DS1202增加的功能:

1.可通过Vcc1进行涓流充电

2.双重电源补给

3.备用电源可采用电池或者超级电容(0.1F

以上),可以用老式电脑主板上的3.6V充电电池。

如果断电时间较短(几小时或几天)时,就可以用漏电

较小的普通电解电容器代替。100μF就可以保证1

小时的正常走时。DS1302在第一次加电后,必须进行

初始化操作。初始化后就可以按正常方法调整时间。

功能简述:

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

DS1302包括时钟/日历寄存器和31字节(8位)的数据暂存寄存器,数据通信仅通过一条串行输入输出口。实时时钟/日历提供包括秒、分、时、日期、月份和年份信息。闰年可自行调整,可选择12小时制和24小时制,可以设置AM、PM。

只通过三根线进行数据的控制和传递:

电源可以让芯片在小于1MW的功率下运作。、、。通过备用

HEYOUDONG

ds1302中文资料 ds1302中文资料 好

FANYI

ds1302中文资料 ds1302中文资料 好

2/10

工作过程:

主要工作原理图如Figure1所示:移位寄存器,控制逻辑,晶振,时钟和RAM

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

。(www.61k.com]在进行任何数据传输时,必须被制高电平(注意虽然将它置为高电平,内部时钟还是在晶振作用下走时的,此时,允许外部读写数据),在每个SCLK上升沿时

数据被输入,下降沿

时数据被输出,一次

只能读写一位,适度

还是写需要通过串行

输入控制指令来实现

(也是一个字节),通

过8个脉冲便可读取

一个字节从而实现串

行输入与输出。最初

通过8个时钟周期载

入控制字节到移位寄

存器。如果控制指令

选择的是单字节模

式,连续的8个时钟

脉冲可以进行8位数

据的写和8位数据的读操作,SCLK时钟的上升沿时,数据被写入DS1302,SCLK脉冲的下降沿读出DS1302的数据。8个脉冲便可读写一个字节。在突发模式,通过连续的脉冲一次性读写完7个字节的时钟/日历寄存器(注意时钟/日历寄存器要读写完),也可以一次性读写8~328位RAM数据(可按实际情况读写一定数量的位,不必全部读写,两者的区别)。

控制指令:

控制指令(8位)如Figure2所示:

每个字节的传输是有控制字节指定的,控制字节的最高位Bit7必须是‘1’,如果是‘0’,写入将被禁止,因此我们如果将这位置一,可以禁止写入。bit6为‘0’则指定对时钟/日历寄存器控制读写操作,为‘1’则为RAM区数据的控制读写操作,bir1~bit5指定相关寄存器待进行输入输出操作,最低位bit0指定是输入还是输出,为‘0’则为输入,相反则输入有效,输入输出根据脉冲的上升沿和下降沿串行进行(前面已经提到)。

HEYOUDONGFANYI

ds1302中文资料 ds1302中文资料 好

3/10

复位以及时钟控制:

所有的数据传输在置一时进行(反复强调),输入信号有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。(www.61k.com]当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc≥2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK始终是输入端。

ds1302中文资料 ds1302中文资料 好

数据的传输如下图所示:(注意两种模式)

数据输入:

经过8个时钟周期的控制字节的输入,一个字节的输入将在下8个时钟周期的上升沿完成,数据传输从字节最低位开始。

数据输出:

经过8个时钟周期的控制读指令的输入,控制指令串行输入后,一个字节的数据将在下个8个时钟周期的下降沿被输出,注意第一位输出是在最后一位控制指令所在脉冲的下降沿被输出,要求RST保持位高电平。

同理8个时钟周期的控制读指令如果指定的是突发模式,将会在脉冲的上升沿读入数据,下降沿读出数据,突

HEYOUDONGFANYI

ds1302中文资料 ds1302中文资料 好

4/10

发模式一次可进行多字节数据的一次性读写,只要控制好脉冲就行了。(www.61k.com)

突发模式:

上面已经提到过的突发模式可以指定为任何时钟/日历或RAM的寄存器,与以前一样,位6指定时钟或RAM,位0指定读或写。读取或写入的突发模式开始在位0地址0。

对于DS1202来说,在突发模式下写时钟寄存器,起始的8个寄存器用来写入相关数据,必须写完。然而,在突发模式下写RAM数据时,没有必要全部写完。每个字节都将被写入而不论31字节是否写完。

时钟/日历:

时钟/日历包含在7个寄存器中,如Figure4所示。数据在时钟/日历寄存器是二进制编码的十进制格式(BCD

ds1302中文资料 ds1302中文资料 好

码)。时钟停止标志:

HEYOUDONGFANYI

ds1302中文资料 ds1302中文资料 好

5/10

秒寄存器的bit7是时钟停止标志位,如果这位是‘1’,时钟晶振停止起振,DS1302进入低功耗待命模式,耗用电流小于100nanoamps,如果这位是‘0’,晶振开始起振。(www.61k.com]

AM-PM/12-24模式选择:

小时寄存器的bit7是AM-PM/12-24模式选择选择位,这一位为‘1’时,选择了12小时制,为‘0’时,选择了24小时制,在12小时制下,bit为‘1’选择了PM,在24小时制下,bit5选择了20~23小时段。

写保护位:

控制字节的bit7是写保护位(前面已经提到),低7位(bit0~bit6),被置0,在任何写操作前,bit7都应该置‘0’。

涓流充电寄存器:

该寄存器决定了DS1302的充电特性,结构简图如下图所示,涓流充电选择位为bit4~7,置1010时使涓流充电,其他选择将禁止涓流充电。DS1302刚上电时无涓流充电。二极管选择位diodeselect(DS)bit2~3,将在Vcc1和Vcc2之间选择1或2个diode,如果DS是01,只有一个二极管被选择,如果DS四10,将选择两个diode,具体电路如下面图示,如果是00或11,无涓流充电能力。还有电阻选择位RS(bit0~1)将会选择Vcc1和Vcc2

ds1302中文资料 ds1302中文资料 好

之间的电阻,具体

ds1302中文资料 ds1302中文资料 好

如下表:

RS和DS是有外部Vcc1和Vcc2(如超级电容,第一页已经提到)最大充电电流来决定的,其最大充电电流由一下方法计算:例如Vcc2电压为5V,Vcc1连接一个超级电容,假如涓流充电禁止,且VCC1、VCC2之间只有一个二极管和一个电阻R1,则其最大电流为:

HEYOUDONGFANYI

ds1302中文资料 ds1302中文资料 好

6/10

显然,超级电容充电时,VCC1、VCC2之间的压降将会减少,其充电电流也将会减少。[www.61k.com)

时钟/日历突发模式:

由时钟/日历指令字节来指定其突发模式操作。在该模式下,其实的8个时钟/日历寄存器将被连续的读和写,详细见前面表格(“时钟/日历”处),起始与地址0和位0。

如果些保护位被置‘1’,则在突发模式下,无任何字节将会被读写,涓流充电不可以在突发模式下选择。RAM:

ThestaticRAMis31x8bytesaddressedconsecutivelyintheRAMaddressspace.

RAM突发模式:

由RAM控制指令字节来指定其突发模式操作。在该模式下,31个RAM静态寄存器将可以被连续的读或写,起始与地址0和位0.

寄存器概况:

详细见前面表格(“时钟/日历”处)

晶体振荡器的选择:

一个32.768KHZ的晶振可以直接接在DS1302的2、3管脚之间,可以设定规定载荷电容位6pF。

电源控制:

VCC1可提供单电源控制也可以用来作为备用电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。

最大绝对额定值:

管脚电压(相对于GND)

工作温度

存储温度

焊接温度-0.5V~7.5V0°C~70°C–55°C~125°C260°Cfor

ds1302中文资料 ds1302中文资料 好

10seconds

HEYOUDONG

ds1302中文资料 ds1302中文资料 好

FANYI

ds1302中文资料 ds1302中文资料 好

7/10

HEYOUDONG

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

FANYI

ds1302中文资料 ds1302中文资料 好

8/10

HEYOUDONG

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

FANYI

ds1302中文资料 ds1302中文资料 好

9/10

HEYOUDONG

ds1302中文资料 ds1302中文资料 好

ds1302中文资料 ds1302中文资料 好

FANYI

ds1302中文资料 ds1302中文资料 好

10/10

一般设计流程:(所有过程须将

?

?

?

?

?

?关闭写保护通过设置指控指令bit7串行输入控制指令根据需要输入控制指令,完成数据传输置‘1’)可以选择字节模式,即每输入一条控制指令,下8个脉冲完成相应一个字节的读写可以选择突发模式,对时钟/日历寄存器或31*8RAM进行一次性读写打开写保护

本文为字面翻译,版权归原公司所有,纯属学习交流之用,严禁用于商业用途,如有疑问和需要,或者文章有错误疏漏之处(本人水平有限)

请联系:

QQ:337072753

EMAIL:heyoudong1232006@126.com

HEYOUDONG

ds1302中文资料 ds1302中文资料 好

FANYI

本文标题:ds1302中文资料-ds1302中文资料
本文地址: http://www.61k.com/1122574.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1