DS1302

news2025/1/23 17:35:39

DS1302时钟芯片简介

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

DS1302的内部结构

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

图3 DS1302封装图

X1,X2

32.768kHz晶振引脚

GND

RST

复位

I/O

数据输入/输出

SCLK

串行时钟

VCC1

电池引脚

VCC2

主电源引脚

    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

6

5

4

3

2

1

0

1

RAM/CK

A4

A3

A2

A1

A0

RD/W

秒寄存器

1

0

0

0

0

0

0

分寄存器

1

0

0

0

0

0

1

小时寄存器

1

0

0

0

0

1

0

日寄存器

1

0

0

0

0

1

1

月寄存器

1

0

0

0

1

0

0

星期寄存器

1

0

0

0

1

0

1

年寄存器

1

0

0

0

1

1

0

写保护寄存器

1

0

0

0

1

1

1

慢充电寄存器

1

0

0

1

0

0

0

时钟突发寄存器

1

0

1

1

1

1

1

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

**后一位RD/W为“0”时表示进行写操作,为“1”时表示读操作。

DS1302内部寄存器列表如表2所示:

寄存器名称

命令字

取值范围

各位内容

7

6

5

4

3

2

1

0

秒寄存器

80H

81H

00-59

CH

10SEC

SEC

分寄存器

82H

83H

00-59

0

10MIN

MIN

小时寄存器

84H

85H

01-12或00-23

12/24

0

A

HR

HR

日期寄存器

86H

87H

01-28,29,30,31

0

0

10DATE

DATE

月份寄存器

88H

89H

01-12

0

0

0

10M

MONTH

周寄存器

8AH

8BH

01-07

0

0

0

0

0

DAY

年份寄存器

8CH

8DH

00-99

10YEAR

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的命令字结构

硬件原理图

程序流程图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/433986.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度分析Netflix的投资价值,虽面临激烈竞争,但前景无限光明

来源:猛兽财经 作者:猛兽财经 公司介绍 Netflix(NFLX)是一家在视频流媒体领域非常成功的公司,运营着全球最大的视频流媒体订阅平台之一(目前已经有超过2.3亿的付费会员),它的商业模式也比较简单&#xff0…

Linux环境jdk安装教程及详细步骤

下载jdk包: 下载地址:https://www.oracle.com/cn/java/technologies/javase/javase8u211-later-archive-downloads.html 这里点击下载后,需要登录才可以下载,没有帐号就注册一下即可。 将下载的文件放至服务器/usr/local/jdk目录…

4.13~4.17(PE文件结构预习+hook+进程hellow)

常见PE文件结构 常见的PE文件:exe、dll、sys Ag: exe就不用多说,就是可执行文件 dll动态链接库 对于 Windows 操作系统,操作系统的大部分功能都由 DLL 提供 (https://learn.microsoft.com/zh-cn/troubleshoot/window…

三:slab分配器

目录 slab分配器 基本概念 slab分配内存 主要结构体 kmem_cache per cpu freelist slab分配器 基本概念 针对小粒度内存分配 伙伴系统以页4kb为最小分配单位,但对于一些时候,这太大了,会造成严重的内存浪费,产生大量内存碎…

【mac】iterm2通过rz命令往服务器上传文件

需要的资源文件在这里iterm2-zmodem,设置的0积分,如果csdn给调了,点这里下载bak 1、通过命令行打开bin文件夹 cd /usr/local/binopen . 2、把上面下载的俩文件复制进去 3、还是在/usr/local/bin下调整权限 cd /usr/local/binchmod 777 ite…

华为云上云实践:Windows环境下优化云硬盘EVS的创建、挂载和初始化

本文主要讲解华为云云硬盘 EVS 的在 Windows 服务器上创建、挂载及云硬盘初始化等基本操作,快速掌握华为云云硬盘 EVS 操作方法。 文章目录 一、前言二、前期准备:华为云 EVS 采购三、挂载非共享云硬盘 EVS五、初始化云硬盘 EVS 一、前言 华为云 EVS&am…

C嘎嘎~~【初识C++ 上篇】

初识C 上篇 🫅1. C关键字🫅 2.命名空间🤷‍♂️2.1命名空间的定义🤷‍♂️2.2命名空间的使用 🫅 3.C输入 & 输出 转眼间, 就进入C这个新的篇章啦! 我带着些许心悸 和 激动: 心悸…

Wing IDE 解决鼠标悬浮

Wing IDE 解决鼠标悬浮 通过修改文件配置,解决鼠标悬浮没有出现变量值和函数没有自动提示的问题。 配置文件路径查看: 打开该文件夹下的下图配置文件: 添加下图两行配置,然后重启wingide即可。 Wing IDE 常用快捷键 调节字…

【JS】Es6无法注销事件 | class构造函数里无法注销事件解决方法(亲测有效)

错误删除事件 class Goods {addEv() {// 添加mousemove事件// document.addEventListener(mousemove, this.changeEv.bind(document)) //错误一// document.addEventListener(mousemove, this.changeEv) //错误二document.addEventListener(mousemove, this.changeEv.bind(thi…

(数字图像处理MATLAB+Python)第五章图像增强-第一节:图像增强概述和基于灰度级变换的图像增强

文章目录 一:图像增强概述二:基于灰度级变换的图像增强(1)线性灰度级变换A:基本线性灰度级变换B:分段线性灰度级变换①:定义②:截取式灰度变换③:窗切片 (2&a…

【权限维持】LinuxOpenSSHPAM后门SSH软链接公私钥登录

文章目录 权限维持-Linux-替换版本-OpenSSH后门拓展玩法:OpenSSH后门的防范方法 权限维持-Linux-更改验证-SSH-PAM后门配置环境 权限维持-Linux-登录方式-软链接&公私钥&新帐号SSH软链接公私钥后门帐号 参考 权限维持-Linux-替换版本-OpenSSH后门 这里复现…

java 获取时间的方法

Java的时间是通过字节码指令来控制的,所以 java程序的运行时间是通过字节码指令来控制的。但是由于 Java程序在运行时, JVM会产生一些状态,所以在执行 JVM指令时, JVM也会产生一些状态。 我们在执行 java程序时,主要是…

JVM(面试问题简析)学习笔记

文章目录 1. JVM中有哪几块内存区域?Java 8 之后对内存分代做了什么改进?2. 你知道JVM是如何运行起来的吗?堆内存中对象的分配的基本策略?3. 说说 JVM 在哪些情况下会触发垃圾回收?JVM 的年轻代垃圾回收算法&#xff1…

【杂凑算法篇】密码杂凑算法的安全强度

【杂凑算法篇】密码杂凑算法的安全强度 杂凑(哈希)算法安全强度—【蘇小沐】 文章目录 【杂凑算法篇】密码杂凑算法的安全强度(一)安全强度(Security Strength)(二)杂凑算法的安全强度与对比总…

x86汇编

寄存器 常规 AX累加,算术运算或函数返回值存储 基址寄存器(BX),指向数据的指针 计数寄存器CX,移位,循环,一些量 数据寄存器DX,运算超过16位,高16位放在DX 堆栈指针寄存器SP,用于指向…

系统设计访谈-业内人事指南 《System Design Interview-An insider‘s guide》中文版

前言: We are delighted that you have decided to join us in learning the system design interviews. System design interview questions are the most difficult to tackle among all the technical interviews. The questions require the interviewees to de…

(Qt) 重定向内置日志

文章目录 前言代码.pri 独立的包log.priLOG_Config.hppLOG.hLOG.cpp examplelog_test.promain.cpp 使用效果debug模式release模式 分析Qt内部结构核心函数核心配置 END 前言 在软件开发过程中&#xff0c;避免不了日志的使用。 在Qt中&#xff0c;我们平常用的#include <Q…

Django | 解决admin增加新用户只有用户名密码和确认密码的问题

文章目录 如图所示&#xff0c;下面给出解决方案&#xff1a; 如果您使用 使用 Django 默认的后台管理界面添加用户时&#xff0c;只看到了三个字段&#xff08;通常是 username、password和 repassword&#xff09;&#xff0c;那么可以通过定义 add_fieldsets 属性来增加更多…

Jenkins关联GitLab

1、Jenkins、GitLab服务器上面生成公钥、私钥 ssh-keygen -t ecdsa # 回车 指到没有交互式2、GitLab WEB端添加 刚刚生成的公钥 cat ~/.ssh/id_ecdsa.pub # 查看密钥登入gitlab > 右上角头像 > 偏好设置 > SSH秘钥 使用相同方法 添加Jenkins秘钥 3、Jenkins创建一…

Graph push pull

图数据的存储结构 键值对存储因具有可扩展强、结构简单、查找迅速等特点被广泛应用于图查询系统中&#xff0c;如Wukong、Trinity.RDF。在Wukong系统中&#xff0c;图上的边会转换成键值对进行存储&#xff0c;将顶点编号、边的类型、边的方向、值的地址和大小等信息组合成键&…