(2) DS1302数据操作原理
DS1302在任何数据传送时必须先初始化,把RST脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被输入。无论是读周期还是写周期,开始8位指定40个寄存器中哪个被访问到。在开始8个时钟周期,把命令字节装入移位寄存器之后,另外的时钟周期在读操作时输出数据,在写操作时写入数据。时钟脉冲的个数在单字节方式下为8加8,在多字节方式下为8加字节数,最大可达248字节数。
图2.4 DS1302管脚图
如果在传送过程中置RST为低电平,则会终止本次数据传送,并且I/O引脚变为高阻态。上电运行时,在VCC 大于等于2.5V之前,RST脚必须保持低电平。只有在SCLK为低电平时,才能将 置为高电平。DS1302的管脚图如图3-3所示表3.1为各引脚的功能。
表2.2 DS1302引脚功能表
引脚号 引脚名称 功能
1
VCC2 主电源
2,3 X1,X2 振荡源,外接32768HZ晶振
4 GND 地线
复位/片选线
6 I/O 串行数据输入/输出端(双向)
7 SCLK 串行数据输入端
8 VCC1 后备电源
DS1302的控制字节的最高有效位(位7)必须是逻辑1;如果它为逻辑0,则不能把数据写入到DS1302中。位6如果为0,则表示存取日历时钟数据;为1表示存取RAM数据。位5~1(A4~A0)指示操作单元的地址。最低有效位(位0)如为0,表示要进行写操作;为1表示进行读操作。控制字节总是从最低位开始输入/输出。
为了提高对32个地址的寻址能力(地址/命令位1~5=逻辑1),可以把时钟/日历或RAM寄存器规定为多字节(burst)方式。位6规定时钟或RAM,而位0规定读或写。在时钟/日历寄存器中的地址9~31或RAM寄存器中的地址31不能存储数据。在多字节方式中,读或写从地址0的位0开始。必须按数据传送的次序写最先的8个寄存器。但是,当以多字节方式写RAM时,为了传送数据不必写所有31字节。不管是否写了全部31字节,所写的每一字节都将传送至RAM。数据读写程序如图2.5所示。
图2.5 数据读写程序
DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表3-3所示,其中奇数为读操作,偶数为写操作。
- 上一篇:基于薄膜体声波谐振传感器的生化检测技术研究
- 下一篇:H.264视频转码的设计与实现+文献综述
-
-
-
-
-
-
-
高警觉工作人群的元情绪...
C++最短路径算法研究和程序设计
浅析中国古代宗法制度
现代简约美式风格在室内家装中的运用
江苏省某高中学生体质现状的调查研究
NFC协议物理层的软件实现+文献综述
g-C3N4光催化剂的制备和光催化性能研究
上市公司股权结构对经营绩效的影响研究
巴金《激流三部曲》高觉新的悲剧命运
中国传统元素在游戏角色...