江协科技51单片机学习- p23 DS1302实时时钟

news2024/12/23 12:42:39

🚀write in front🚀  
🔎大家好,我是黄桃罐头,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​ 

💬本系列哔哩哔哩江科大51单片机的视频为主以及自己的总结梳理📚 

前言:

本文是根据哔哩哔哩网站上“江协科技51单片机”视频的学习笔记,在这里会记录下江协科技51单片机开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了江协科技51单片机教学视频和链接中的内容。

引用:

51单片机入门教程-2020版 程序全程纯手打 从零开始入门_哔哩哔哩_bilibili

​​​​​​c51语言变量语句意思,C51中循环语句-CSDN博客

正文:

0. 🌿概述

在淘宝上购买了江协科技51单片机开发板套件(普中科技STC51单片机A2型号),就上在上一篇博文里说的自己计划学习下江协科技51单片机开发教程,通过STC51单片机这种MCU这种贴近于裸机的开发来增加对于系统硬件层面知识的了解和掌握。

术语和缩略语:

缩写全称说明
RTCReal Time Clock实时时钟

1. 🚀DS1302实时时钟芯片

DS1302实时时钟芯片引脚定义如下

引脚描述
VCC2双供电配置中的主电源供应管脚
VCC1 VCC1 连接到备用电源,在主电源失效时保持时间和日期数据
X1接外部晶振 32.768KHz
X2接外部晶振 32.768KHz
GND接地
SCLK串行时钟
I/O输出输出
CE使能控制位

🍎CE使能位控制对DS1302时间寄存器的读写,当CE=0时对寄存器的读写无效。注意CE为并不影响DS1302的计时部分,计时CE=0 DS1602的计时部分也会正常计时。

DS1302内部模块框图

DS1302命令字:

  • MSB7:第7位必须为1
  • MSB6:第6位为0时表示实时时钟数据,为1表示内部RAM数据。
  • MSB5~MSB1:共5位表示寄存器地址
  • MSB0:第0位为0表示写,为1表示读。

DS1302单字节读/写时序:

 

  • 🧃单字节读指令时序:
     🐳 CE为1高电平,使能DS1302读写。
     🐳 SCLK串行时钟每次上升沿,I/O口上的数据一位移动到DS1302的移位寄存器中,I/O发送数据时先发送LSB最低位。SCLK 经过8个时钟上升沿之后,DS1302命令字传输完成。
    🐳  接下来,在SCLK的时钟下降沿DS1302将命令字中要读取的指定地址的寄存器内容的一位送到I/O,SCLK每一次时钟下降沿指定要读取寄存器的下一位输出到I/O,经过8个时钟下降沿之后,要读取指定地址的寄存器里的值输出完成。DS1302寄存器读取时LSB先输出。

  • 🧃单字节写指令时序:
    🐳 CE为1高电平,使能DS1302读写。
    🐳 SCLK串行时钟每次上升沿,I/O口上的数据一位移动到DS1302的移位寄存器中,I/O发送数据时先发送LSB最低位。SCLK 经过8个时钟上升沿之后,DS1302命令字传输完成。
    🐳  接下来,要写入的数据的D0位写到I/O,SCLK串行时钟每次上升沿,I/O口上的数据一位移动到DS1302的移位寄存器中,SCLK 经过8个时钟上升沿之后要写入的数据 D0~D7写入到寄存器完成。

注意:

😎,SCLK时钟一直是由单片机控制输出的,DS1302按照SCLK时钟的时序从I/O口读取数据到移位寄存器,或者从移位寄存器输出数据到I/O口。

DS1302的寄存器地址定义

 

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

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

相关文章

#笔记# 写给自己用的小爬虫

最近完成了一个文旅行业信息聚合的小应用,实现仅从一个入口了解全行业的信息动态,不用一个一个翻看各网站,节省了不少检索时间。 一、基本思路 明确数据来源。基于前述目标,确定数据源为文化和旅游部管理部门官网,比…

万界星空科技公司推出AI低代码MES,引领制造业智能化新潮流

随着科技的不断进步和制造业的快速发展,传统生产管理模式正面临前所未有的挑战。在这个背景下,万界星空科技公司凭借其前瞻性的技术洞察力和强大的研发实力,推出了AI低代码MES(制造执行系统),该系统凭借其独…

【深度学习】调整加/减模型用于体育运动评估

摘要 一种基于因果关系的创新模型,名为调整加/减模型,用于精准量化个人在团队运动中的贡献。该模型基于明确的因果逻辑,将个体运动员的价值定义为:在假设情景下,用一名价值为零的球员替换该球员后,预期比赛…

2024免费的股票数据接口API

沧海数据 # Restful API https://tsanghi.com/api/fin/stock/{exchange_code}/realtime?token5dbb47113a4a43a6be1755673ce854db&ticker{ticker} 数据来源:沧海数据 请求方式:Get 数据格式:标准Json格式[{},...{}]

一篇文章学会【node.js安装以及Vue-Cli脚手架搭建】

一.为什么搭建Vue-Cli (1).传统的前端项目结构: 一个项目中有许多html文件,每一个html文件都是相互独立的, 如果需要在页面中导入一些外部依赖的组件,就需要在每一个html文件中都需要导入,非常麻烦 (2).现在的前端…

【Python函数编程实战】:从基础到进阶,打造代码复用利器

文章目录 🚋前言🚀一、认识函数🌈二、函数定义❤️三、函数调用⭐四、实参与形参💥1. 形式参数🚲2. 实际参数🔥1. 位置参数☔2. 关键字参数🎬3. 默认参数🔥4. 可变数量参数(不定长参…

SpringBoot实现图片添加水印

提示&#xff1a;今日完成图片添加水印功能 后续可能还会继续完善这个功能 文章目录 目录 文章目录 前端部分 后端 Xml Controller层 Sercive层 Service实现层 Config配置层 application.properties 文件后缀名获取 常量定义 前端部分 <!DOCTYPE html> <htm…

MD5算法详解

哈希函数 是一种将任意输入长度转变为固定输出长度的函数。 一些常见哈希函数有&#xff1a;MD5、SHA1、SHA256。 MD5算法 MD5算法是一种消息摘要算法&#xff0c;用于消息认证。 数据存储方式&#xff1a;小段存储。 数据填充 首先对我们明文数据进行处理&#xff0c;使其…

ARCGIS python 裁剪栅格函数 arcpy.management.Clip

ARCGIS python 裁剪栅格函数 arcpy.management.Clip 1 功能 裁剪掉栅格数据集、镶嵌数据集或图像服务图层的一部分。 2 使用情况 基于模板范围提取部分栅格数据集&#xff0c;输出与模板范围相交的所有像素使用以 x 和 y 坐标的最小值和最大值确定的包络矩形或使用输出范围文…

全国产化飞腾模块BIOS下修复系统启动文件

1、背景介绍 全国产飞腾模块采用麒麟信安操作系统&#xff0c;当系统下面的grub.cfg文件被用户误操作导致无法启动时&#xff0c;可以在BIOS下通过U盘中备份的grub.cfg替换硬盘上原来的grub.cfg文件&#xff0c;从而实现启动。 2、操作步骤 首先进入BIOS命令行模式&#xff…

使用 Rustup 管理 Rust 版本

文章目录 安装 Rustup配置镜像源安装 Rustup 安装 RustVS Code插件创建项目代码示例 Rust 官网&#xff1a;https://www.rust-lang.org/zh-CN/Crates 包管理&#xff1a;https://crates.io/Rust 程序设计语言&#xff1a;https://kaisery.github.io/trpl-zh-cn/通过例子学 Rust…

七人互助拼团模式的深度剖析与互助精神的价值

在当下电商的浪潮中&#xff0c;七人互助拼团模式以其独特的运作方式和互助精神&#xff0c;赢得了广大消费者和商家的青睐。这一模式不仅为用户提供了优惠的购物体验&#xff0c;更在无形中培养了用户间的互助与协作精神。 一、激励机制的细致解读 七人互助拼团模式中&#x…

GPT-4o文科成绩超一本线,理科为何表现不佳?

目录 01 评测榜单 02 实际效果 什么&#xff1f;许多大模型的文科成绩竟然超过了一本线&#xff0c;还是在竞争激烈的河南省&#xff1f; 没错&#xff0c;最近有一项大模型“高考大摸底”评测引起了广泛关注。 河南高考文科今年的一本线是521分&#xff0c;根据这项评测&…

notepad++安装并打开json文件

1、notepad安装 1、首先下载Notepad.exe 2、选择简体中文安装 点击下一步 点击“我接受” 选择安装目录&#xff0c;进行下一步安装 默认下一步 选择安装 等待安装完成 点击完成 2、保存json文件 复制返回结果 先把返回结果复制出来。保存到text里面 把文件另存为json格式 3、…

代码随想录-Day44

322. 零钱兑换 给你一个整数数组 coins &#xff0c;表示不同面额的硬币&#xff1b;以及一个整数 amount &#xff0c;表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额&#xff0c;返回 -1 。 你可以认为每种硬币的数…

Qt:8.QWidget属性介绍(focuspolicy属性-控件焦点、stylesheet属性-为控件设置样式)

目录 一、focuspolicy属性-控件焦点&#xff1a; 1.1focuspolicy属性介绍&#xff1a; 1.2设置焦点策略——setFocusPolicy()&#xff1a; 1.3获取控件的焦点策略——focusPolicy()&#xff1a; 二、stylesheet属性——为控件设置样式&#xff1a; 2.1 stylesheet属性介绍…

虚拟机网络配置(静态网络)

解决问题&#xff1a;VMware中创建centOS虚拟机后使用ifconfig没有ip地址&#xff0c;但我想在主机&#xff08;Windows&#xff09;系统下使用shell连接虚拟机从而方便后续交互。 VMware中编辑->虚拟网络编辑器 &#xff08;注意需要管理员身份不然会无法修改&#xff09;…

Python容器 之 列表--定义

1.什么是列表呢&#xff1f; 列表(list)是 Python 中使用最频繁的数据类型, 在其他语言中通常叫做数组, 专门用来存储一组数据 列表,list, 使用 [ ] 列表可以存放任意多个数据 列表中可以存放任意类型的数据 列表中数据之间 使用 逗号隔开 2.列表如何定义&#xff1f; &#…

Android Compose 十二:常用组件列表 上拉加载

列表 上拉加载 当前思路 判断 列表最后一个显示的条目 为 数据集合的长度-1 用来记录刷新状态 var refreshing by remember {mutableStateOf(false)}数据集合 val list remember{List(10){"条目》》${it}"}.toMutableStateList()}用来记录列表当前状态及状态变化…

切片的基础知识

文章目录 ● Slice 的底层实现原理&#xff1f;● array 和 Slice 的区别&#xff1f;● 拷贝大切片一定比小切片代价大吗&#xff1f;● Slice 深拷贝和浅拷贝&#xff1f;● 零切片、空切片、nil切片&#xff1f;● Slice 的扩容机制&#xff1f;● Slice 为什么不是线程安全…