当前位置: 首页 > news >正文

【51单片机入门记录】RTC(实时时钟)-DS1302概述

目录

一、基于三线通信的RTC-DS1302

(1)简介

(2)特性

(3)引脚介绍

(4)控制字的格式

(5.0)日历时钟寄存器介绍

(5.1)日历时钟寄存器编写介绍

(5.2)什么是BCD码

(6)小时寄存器(85H和84H)的位7是12/24小时制切换控制位

二、三线通信协议概述

(1)引脚介绍

(2)接口时序的实现

(3)单字节写的时序

(4)单字节读的时序



一、基于三线通信的RTC-DS1302

(1)简介

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

(2)特性

  • 实时时钟计算秒、分、小时,日期,月,日、周,年与闰年补偿有效期至2100年
  • 31x8支持电池的通用RAM
  • 2.0V至5.5V都可运行
  • 在2.0V时使用小于300nA电流
  • 单字节或多字节(突发模式)用于时钟或计算机读-写的数据传输内存数据
  • 简单的3线接口
  • (3)引脚介绍

  • 引脚

    名字

    功能

    1

    Vcc2

    主电源引脚双电源配置。Vcc连接到备用电源,以在没有主电源的情况下保持时间和日期。

    2

    X1

    晶振引脚

    3

    X2

    晶振引脚

    4

    GND

    5

    CE

    输入。在读或写过程中必须将CE信号变为为高电平。这个引脚有一个内部的40k2(typ)下拉电阻到地。

    6

    1/0

    输入/推挽式输出。10引脚是3线接口的双向数据引脚。这个引脚有一个内部的40k2(typ)下拉电阻到地。

    7

    SCLK

    输入。SCLK用于同步串行接口上的数据移动。这个引脚有一个内部的40k2(typ)下拉电阻到地。

    8

    Vcc1

    单电源和电池供电系统的低功耗操作和低功耗电池备份。

(4)控制字的格式

DS1302将地址和读写控制放到一个字节里面,形成一个控制字,格式如下:

B7:必须为1,若为0,则不能把数据写入到DS1302中

B6:0为表示存取日历时钟数据,1表示存取RAM数据。

B5~B1:表示操作单元地址。

B0:0表示写操作,1表示读操作。

(5.0)日历时钟寄存器介绍

  • 时间和日历信息是通过读取适当的寄存器字节获得的。“通过写入适当的寄存器字节来设置或初始化时间和日历。
  • 时间和日历寄存器的内容采用二进制编码的十进制(BCD)格式与星期对应的值是用户定义的,必须是连续的(例如,如果1等于星期天,那么2等于星期一,以此类推)。不合逻辑的时间和日期条目会导致未定义的操作。
  • 当读取或写入时间和日期寄存器时,用户缓冲区用于防止内部寄存器更新时发生错误。当读取时间和日期寄存器时,用户缓冲区被同步到内部寄存器(CE的上升边缘)每当写入秒寄存器时,就会重置倒计时链
  • 第5位是第二个10小时(20-23 小时)位。小时数据必须在 12/24位改变时重新初始化

(5.1)日历时钟寄存器编写介绍

秒寄存器(80H和81H)的位7是时钟暂停标志

        ··CH为1时,时钟振荡停止CH为0时,时钟开始运行

控制寄存器(8EH和8FH)的位7(WP)是写保护位

        ··WP为0时,可以对任何的时钟和RAM寄存器进行写操作

        ··WP为1时,禁止对任意寄存器进行写操作

(5.2)什么是BCD码

用一位十六进制数表示十进制的0-9数字。例如,十六进制数0x13的值为19,但BCD码表示的是整数13。

举例:秒如何表示。

秒钟的个位放在81h的低四位,秒钟的十位放在4、5、6位。即假设我们要表示10秒,1就需要存在4、5、6位中,而0需要存在低四位中。

同理,日期的个位放在低四位,日期的十位放在4、5位表示。

同理,星期只用了0、1、2三位来表示。

同理,年份信息的低四位是个位,高四位是十位。

(6)小时寄存器(85H和84H)的位7是12/24小时制切换控制位

        ··该位为1时,代表12小时制,位5是上下午标识位:1为下午,0为上午

        ··该位为0时,代表24小时制。比赛时一般为24小时制度,如果考到12小时制,可以进行投机取巧(bushi),将给的时间减去12。

        ··小时数据必须在12/24小时制进行切换时必须重新进行初始化

(7)时钟\日期突发模式

二、三线通信协议概述

(1)引脚介绍

引脚

名字

功能

5

CE

输入。在读或写过程中必须将CE信号变为为高电平。这个引脚内部的40k2(typ)下拉电阻到地。

6

1/0

输入/推挽式输出。I0引脚是3线接口的双向数据引脚。这个引脚有一个内部的40k2(typ)下拉电阻到地。

7

SCLK

输入。SCLK用于同步串行接口上的数据移动。这个引脚有一个内部的40k2(typ)下拉电阻到地。

CE管脚:

驱动CE为高,则启动所有数据传输。如果CE输入低,所有的数据传输终止,I/O引脚进入高阻抗状态。CE输入有两个功能:CE打开控制逻辑,允许访问地址/命令序列的移位寄存器。E信号可以终止单字节或多字节数据传输。

I/O管脚:也称SDA引脚,数据传输管脚

SCLK管脚:时钟管脚;时钟周期是由上升沿和下降沿组成的序列。

(2)接口时序的实现

DS1302的基本操作实际上只有两个:其一是设定时间参数,其二是读取实时时间。不管是那个操作,MCU都要通过三线接口进行数据交互。无论是写入还是读出,控制字总是从最低位开始输出。

(3)单字节写的时序

  • CE引脚被设置为高电平的第一个时钟周期的上升沿开始,控制字节/数据被写入DS1302
  • 在控制字指令输入后的下一个SCLK时钟信号的上升沿,数据被写入DS1302数据的输入从最低位开始。

(4)单字节读的时序

  • 在CE引脚被设置为高电平的第一个时钟周期的上升沿开始,控制字节开始被写入DS1302。
  • 在控制字指令输入后的下一个SCLK时钟信号的下降沿,数据从DS1302读出,数据的读出也是从最低位到最高位。

相关文章:

【51单片机入门记录】RTC(实时时钟)-DS1302概述

目录 一、基于三线通信的RTC-DS1302 (1)简介 (2)特性 (3)引脚介绍 (4)控制字的格式 (5.0)日历时钟寄存器介绍 (5.1)日历时钟寄存…...

Lua热更新(AssetBundle)

AssetBundle 新版本导入ab包报错,则删除其中的Tests文件夹。 给资源分组 打包设置:平台、路径、重复打包清空文件夹、复制到streaming文件夹 建议勾选 建议使用LZ4压缩方式 用来观察文件中的包大小,不常用 参数总结: 这六个只做了解,重要的是上面的...

互联网人才现状分析

作者:哈哥撩编程(视频号、抖音、公众号同名) 新星计划全栈领域优秀创作者博客专家全国博客之星第四名超级个体COC上海社区主理人特约讲师谷歌亚马逊演讲嘉宾科技博主极星会首批签约作者 🏆 推荐专栏: 🏅…...

高级IO——多路转接

高级IO——五种IO模型 首先我们之前在基础IO部分就学过IO的过程分等待过程和读写过程! 比如我们的scanf除了从键盘缓冲区读取数据所花的时间,主要的时间花费放在了等你输入的过程! 所以我们如果想提高我们的IO效率,我们除了要缩…...

TypeScript常用知识点整理

介绍 TypeScript 是 JavaScript 的一个超集,添加了静态类型支持和更多现代编程特性,提高了代码的可靠性和可维护性。最终会被编译成标准的 JavaScript 代码运行。 使用npm install -g typescript进行全局安装 将编写好的ts代码进行运行,第…...

【Unity实战100例】Unity入门小地图位置同步(第一第三人称)

unity小地图制作包括第一人称控制器和第三人称控制器 目录 一.选择合适自身的人称控制器 二.小地图制作...

蓝桥杯简单模板

目录 最大公约数 两个数的最大公约数 多个数的最大公约数 最小公倍数 两个数的最小公倍数 多个数的最小公倍数 素数 ​编辑 位数分离 正写 ​编辑 反写 闰年 最大公约数 两个数的最大公约数 之前看见的是辗转相除法,例如现在让算一个49,21…...

单例模式(饿汉模型,懒汉模型)

在着里我们先了解什么是单例模式。 就是某个类在进程中只能有单个实例,这里的单例模式需要一定的编程技巧,做出限制,一旦程序写的有问题,创建了多个实例,编程就会报错。 如果我们学会了单例模式,这种模式…...

torchvision中的数据集使用

torchvision中的数据集使用 使用和下载CIFAR10数据集 输出测试集中的第一个元素(输出img信息和target) 查看分类classes 打断点–>右键Debug–>找到classes 代码 import torchvisiontrain_set torchvision.datasets.CIFAR10(root"./data…...

linux 迁移home目录以及修改conda中pip的目录,修改pip安装路径

1)sudo rsync -av /home/lrf /data/home/lrf 将/home目录下的文件进行复制(假设机械硬盘挂载在/data目录下)** 2)usermod -d /data/home/lrf -m lrf 修改用户$HOME变量** 3)vi /etc/passwd 查看对应用户的$HOME变量是…...

解析大语言模型训练三阶段

大语言模型的训练过程一般包括3个阶段:预训练(Pre-training)、SFT(有监督的微调,Supervised-Finetuning)以及RLHF(基于人类反馈的强化学习,Reinforcement Learning from Human Feedb…...

知识图谱的最新进展与未来趋势

知识图谱的最新进展与未来趋势 一、引言 在过去的几年中,知识图谱已经从一个前沿的研究概念发展成为现代信息技术不可或缺的一部分。作为结构化知识的存储和表示形式,知识图谱通过组织信息和数据提供了深刻的洞见,它已被广泛应用于搜索引擎优…...

Facebook直播延迟过高是为什么?

在进行Facebook直播 时,高延迟可能会成为一个显著的问题,影响观众的观看体验和互动效果。以下是一些导致Facebook直播延迟过高的可能原因: 1、网络连接问题 网络连接不稳定或带宽不足可能是导致Facebook直播延迟的主要原因之一。如果您的网络…...

CentOS 7.9 额外安装一个Python3.x版本详细教程

Centos7默认的python版本是2.7,根据需要我们额外安装一个Python3.x版本。 1、安装基础环境 yum update -yyum -y groupinstall "Development tools"yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc …...

uml时序图中,消息箭头和消息调用箭头有什么区别

在UML时序图中,消息箭头和消息调用箭头是用来表示不同类型的消息传递关系的符号。 1. 消息箭头:消息箭头用来表示消息在不同对象之间的传递,通常是实例方法之间的调用关系。消息箭头从消息发送者指向消息接收者,表示消息的传递方…...

12.C++常用的算法_遍历算法

文章目录 遍历算法1. for_each()代码工程运行结果 2. transform()代码工程运行结果 3. find()代码工程运行结果 遍历算法 1. for_each() 有两种方式&#xff1a; 1.普通函数 2.仿函数 代码工程 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<vect…...

hadoop:案例:将顾客在京东、淘宝、多点三家平台的消费金额汇总,然后先按京东消费额排序,再按淘宝消费额排序

一、原始消费数据buy.txt zhangsan 5676 2765 887 lisi 6754 3234 1232 wangwu 3214 6654 388 lisi 1123 4534 2121 zhangsan 982 3421 5566 zhangsan 1219 36 45二、实现思路&#xff1a;先通过一个MapReduce将顾客的消费金额进行汇总&#xff0c;再通过一个MapReduce来根据金…...

2024年华为OD机试真题-孙悟空吃蟠桃-Python-OD统一考试(C卷)

题目描述: 孙悟空爱吃蟠桃,有一天趁着蟠桃园守卫不在来偷吃。已知蟠桃园有N颗桃树,每颗树上都有桃子,守卫将在H小时后回来。 孙悟空可以决定他吃蟠桃的速度K(个/小时),每个小时选一颗桃树,并从树上吃掉K个,如果树上的桃子少于K个,则全部吃掉,并且这一小时剩余的时间…...

vue3 开发中遇到的问题

1. element-plus的el-popover内置el-select组件&#xff0c;如何避免关闭el-popover 在el-select内置上面添加:teleported"false"就可以避免在点击el-select时候&#xff0c;把el-popver给关闭了 2. validate-on-rule-change&#xff1a;是否在 rules 属性改变后…...

Vue input密码输入框自定义密码眼睛icon

我们用的饿了么UI组件库里,密码输入框的icon是固定不变的,如下所示: 点击"眼睛"这个icon不变,现在需求是UI给的设计稿里,密码输入框的"眼睛"有如下两种: 代码如下: <el-input:key="passwordType"ref="password"...

贪心算法3(c++)

概念题目最短前缀题目描述 一个字符串的前缀是从该字符串的第一个字符起始的一个子串。例如carbon的字串是:cca,carcarb,carbo,和carbon。我们现在希望能用前缀来缩略的表示单词。例如,carbohydrate通常用carb来缩略表示&#xff0c;现在给你一组单词&#xff0c;要求你找到唯一…...

DanKoe 视频笔记:阅读:改变你生活的简单习惯:概述与引言

https://github.com/OpenDocCN/wealth-notes-zh/raw/master/docs/dankoe/img22971bb5176092c90f7464d7a7aa6e45.png 在本节课中&#xff0c;我们将学习如何通过培养阅读习惯来深刻地改变你的生活。我们将探讨阅读的重要性、如何选择书籍、如何有效阅读&#xff0c;以及如何将阅…...

别再只生成exe了:用MSFvenom制作更隐蔽的Windows 11后门(附检测与清除)

Windows 11高级渗透测试&#xff1a;从隐蔽后门构建到防御检测实战 在网络安全攻防演练中&#xff0c;传统的可执行文件Payload已经难以绕过现代终端防护系统。随着Windows 11安全机制的持续强化&#xff0c;红队需要掌握更隐蔽的渗透技术&#xff0c;而蓝队则必须了解这些新型…...

零基础快速入门前端DOM 节点操作核心知识点及蓝桥杯 Web 应用开发考点解析(可用于备赛蓝桥杯Web应用开发)

DOM&#xff08;文档对象模型&#xff09;是 JavaScript 操作网页内容的核心接口&#xff0c;而节点操作则是 DOM 编程的基础&#xff0c;是蓝桥杯 Web 应用开发赛道的必考核心考点&#xff0c;无论是动态交互效果、数据渲染还是功能实现&#xff0c;都离不开节点的获取、增删、…...

【稀缺预警】Python 3.14 JIT编译器深度剖析:3类隐性CPU浪费模式+2套自动降本脚本(附真实AWS账单对比图)

第一章&#xff1a;Python 3.14 JIT编译器的演进逻辑与成本敏感性定位Python 3.14 并非官方发布的正式版本&#xff08;截至2024年&#xff0c;CPython最新稳定版为3.12&#xff0c;3.13处于预发布阶段&#xff09;&#xff0c;但本章以假设性技术前瞻视角&#xff0c;探讨若Py…...

Loop:让Mac窗口管理效率倍增的效率神器

Loop&#xff1a;让Mac窗口管理效率倍增的效率神器 【免费下载链接】Loop MacOS窗口管理 项目地址: https://gitcode.com/GitHub_Trending/lo/Loop 你是否也曾在多任务处理时&#xff0c;被杂乱无章的窗口搞得焦头烂额&#xff1f;切换应用时总要在一堆窗口中寻找目标&a…...

Qwen3-0.6B-FP8效果对比:与Phi-3-mini、Gemma-2B在低资源设备上的实测PK

Qwen3-0.6B-FP8效果对比&#xff1a;与Phi-3-mini、Gemma-2B在低资源设备上的实测PK 想在小显存的电脑上跑个大模型&#xff0c;体验一下AI对话的乐趣&#xff0c;是不是总被“显存不足”的提示劝退&#xff1f;别急&#xff0c;今天我们就来一场专为“小显存”设备准备的AI模…...

英雄联盟段位修改完整解决方案:LeaguePrank免费工具终极指南

英雄联盟段位修改完整解决方案&#xff1a;LeaguePrank免费工具终极指南 【免费下载链接】LeaguePrank 项目地址: https://gitcode.com/gh_mirrors/le/LeaguePrank 还在为单调的游戏段位显示感到乏味吗&#xff1f;LeaguePrank这款创新的免费工具将彻底改变你的英雄联盟…...

Sentinel-1A极化矩阵处理实战:用SNAP生成C2矩阵的7个关键参数解析与效果对比

Sentinel-1A极化矩阵处理实战&#xff1a;用SNAP生成C2矩阵的7个关键参数解析与效果对比 当处理Sentinel-1A极化SAR数据时&#xff0c;C2矩阵的生成质量直接影响后续地物分类、变化检测等应用的精度。许多初学者在使用SNAP的Polarimetric-Matrices算子时&#xff0c;往往直接采…...

电路分析不再难:手把手教你用拉式变换搞定零输入与零状态响应(附考研真题解析)

电路分析不再难&#xff1a;手把手教你用拉式变换搞定零输入与零状态响应&#xff08;附考研真题解析&#xff09; 在电子工程与自动化领域&#xff0c;电路分析始终是核心技能之一。面对复杂的动态电路&#xff0c;传统时域分析方法常让人望而生畏——微分方程的建立与求解不仅…...