2025蓝桥杯(单片机)备赛--扩展外设之DS1302的使用(九)

1.DS1302数据手册的使用

        

a. DS1302 features:

                工作电压:2V-5.5V

                通信协议:3线接口(CE、IO、SCLK)

                计时:秒、分、小时、月日期、月、星期、年(闰年补偿器期至2100年)

b.原理图接线说明:

框图:

板子实际接线:

注意:X1,X2连接了32.768KHz的晶振,6pf电容起振

(1)DS1302使用:

address/command Byte

说明:

            bit7: 1:DS1302工作,0 : DS1320不工作

            bit6: 1:指定RAM数据,0 : 指定clock/calend数据

            bit5-1: 指定输入或 输出的寄存器

            bit0 :0 :Write ,1 :Read

        DS1302操作:

     数据读写:   DS1302数据在clock的下降沿输出,在clock的 上升沿向DS1302输入数据。

 图四:说明 数据的写入与读出 ,都是读写command后紧跟着data,上电时 ,CE必须为0,当VCC>2v时,CE=1;

   数据低位先行!!!

操作步骤:

说明:DS1302储存的数据是BCD(二进制编码的十进制),而我们常使用DEC。所以要进行DEC-BCD和BCD-DEC的转换 .

BCD(Binary-Coded Decimal)

* **定义**:BCD,即二-十进制代码,是一种二进制的数字编码形式,用于二进制和十进制之间的快捷转换。它利用四个位元(bit)来储存一个十进制的数码。
* **编码方式**:在BCD编码中,每个十进制数字(0-9)都被表示为一个四位的二进制数。例如,十进制数5被表示为二进制的0101。

DEC-BCD:

两位DEC需要 两个BCD码,一个BCD码是4位,也就是每进一位需要乘2^4,相当于左移4位,先取出DEC的十位,再乘16(左移4位)得到BCD的十位,

DEC再%10得到BCD的个位。

DECToBCD(dec)    (dec/10*16)+(dec%10)

BCD-DEC:

        与上面类似:bcd/16得到高4位乘10变成十位,bcd%16得到低4位即DEC的个位。

BCDToDEC(bcd)   (bcd/16*10)+(bcd%16 )      

1)关闭写保护,根据RTC表,应该是对0X8E这个寄存器,写0x00 。否则数据无法写入

2)操作要写入的寄存器,奇数为读取,偶数为写入。

3) 关闭写保护,0X8E,0X80。

2.设置DS1302初始时分秒的代码

注意:注意传入参数顺序为,年月日,时分秒,不要忘了DECToBCD

void DS1302_Init(u8 hour,u8 min,u8 sec)//注意传入参数顺序为,年月日,时分秒
{Write_Ds1302(0x8e,0x00);//关闭写保护Write_Ds1302(0x84,DECToBCD(hour);//时Write_Ds1302(0x82,DECToBCD(min));//分Write_Ds1302(0x80,DECToBCD(sec));//秒Write_Ds1302(0x8e,0x80);//打开写保护
}     

读取DS1302的时分秒:

注意:不要忘了BCDToDEC,DS1302为12MHZ正常显示

void DS1302_Process(void)
{hour=BCDToDEC(Read_DS1302(0X85));min=BCDToDEC(Read_DS1302(0X83));sec=BCDToDEC(Read_DS1302(0X81));
}

相关博客:

2025蓝桥杯(单片机)备赛--扩展外设之I2C的重要应用--PCF8591(九)-CSDN博客

2025蓝桥杯(单片机)备赛--扩展外设之I2C的重要应用--PCF8591(八)-CSDN博客

2025蓝桥杯(单片机)备赛--扩展外设之I2C的重要应用--AT24C02(七)-CSDN博客

2025蓝桥杯(单片机)备赛--扩展外设控制之DS18B20(六)-CSDN博客

2025蓝桥杯(单片机)备赛--基本外设控制之共阳数码管(四)-CSDN博客

2025蓝桥杯(单片机)备赛--基本外设控制之继电器和蜂鸣器(三)-CSDN博客

2025蓝桥杯(单片机)备赛--基本外设控制之LED(二)_2024蓝桥杯单片机资料-CSDN博客

2025蓝桥杯(单片机)备赛--基本框架搭建(一)_蓝桥杯单片机大赛-CSDN博客

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

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

相关文章

在CentOS中,通过nginx访问php

其实是nginx反向代理到php-fpm,就像nginx反向代理到tomcat。 1、安装PHP-FPM 1.1 安装 yum install php yum install php-fpm php-common 这里只安装了php-fpm,根据需要安装php模块,比如需要访问mysql则添加安装 php-mysqlnd。 1.2 启动…

Photino:通过.NET Core构建跨平台桌面应用程序,.net国产系统

一、Photino.NET简介: 最近发现了一个不错的框架 Photino.Net 一份代码运行,三个平台 windows max linux ,其中windows10,windows11,ubuntu 18.04,ubuntu 20.04 已测试均可以。mac 因为没有相关电脑没有测试。 github:https://github.com/t…

编辑器vim 命令的学习

1.编辑器Vim 1.vim是一个专注的编辑器 2.是一个支持多模式的编辑器 1.1见一见: vim 的本质也是一条命令 退出来:-> Shift:q 先创建一个文件 再打开这个文件 进入后先按 I 然后就可以输入了 输入完后,保存退出 按Esc --> 来到最后一…

Ubuntu22.04LTS 部署前后端分离项目

一、安装mysql8.0 1. 安装mysql8.0 # 更新安装包管理工具 sudo apt-get update # 安装 mysql数据库,过程中的选项选择 y sudo apt-get install mysql-server # 启动mysql命令如下 (停止mysql的命令为:sudo service mysql stop&#xff0…

Python爬虫:如何从1688阿里巴巴获取公司信息

在当今的数字化时代,数据已成为企业决策和市场分析的重要资产。对于市场研究人员和企业分析师来说,能够快速获取和分析大量数据至关重要。阿里巴巴的1688.com作为中国最大的B2B电子商务平台之一,拥有海量的企业档案和产品信息。本文将介绍如何…

10 基于深度学习的目标检测

首次完成时间:2024 年 11月 20 日 1. 使用OpenCV的dnn模块实现图像分类。 1)程序代码: import numpy as np import cv2# 解析标签文件 row open("model1/synset_words.txt").read().strip().split("\n") class_label …

Spring WebFlux 高级实战(3-2)

1、SpringBoot 使用 1.1、Spring Core 中的响应式 Spring 生态系统的核心模块是Spring Core 模块。Spring 5.x 引入对响应式流和响应式库的原生支持,其中,响应式库包含RxJava 1/2 和Project Reactor 3。 1.1.1、响应式类型转换支持 为了支持响应式流规…

河道水位流量一体化自动监测系统:航运安全的护航使者

在广袤的水域世界中,航运安全始终是至关重要的课题。而河道水位流量一体化自动监测系统的出现,如同一位强大的护航使者,为航运事业的稳定发展提供了坚实的保障。 水位传感器:负责实时监测河道的水位变化。这些传感器通常采用先进的…

RHCE的学习(21)

第三章 Shell条件测试 用途 为了能够正确处理Shell程序运行过程中遇到的各种情况,Linux Shell提供了一组测试运算符。 通过这些运算符,Shell程序能够判断某种或者几个条件是否成立。 条件测试在各种流程控制语句,例如判断语句和循环语句中…

uni-app Vue3语法实现微信小程序样式穿透uview-plus框架

1 问题描述 我在用 uni-app vue3 语法开发微信小程序时,在项目中使用了 uview-plus 这一开源 UI 框架。在使用 up-text 组件时,想要给它添加一些样式,之前了解到微信小程序存在样式隔离的问题,也在uview-plus官网-注意事项中找到…

数据结构(双向链表——c语言实现)

双向链表相比于单向链表的优势: 1. 双向遍历的灵活性 双向链表:由于每个节点都包含指向前一个节点和下一个节点的指针,因此可以从头节点遍历到尾节点,也可以从尾节点遍历到头节点。这种双向遍历的灵活性使得在某些算法和操作中&a…

论文分享 | FuzzLLM:一种用于发现大语言模型中越狱漏洞的通用模糊测试框架

大语言模型是当前人工智能领域的前沿研究方向,在安全性方面大语言模型存在一些挑战和问题。分享一篇发表于2024年ICASSP会议的论文FuzzLLM,它设计了一种模糊测试框架,利用模型的能力去测试模型对越狱攻击的防护水平。 论文摘要 大语言模型中…

ES分词环境实战

文章目录 安装下载1.1 下载镜像1.2 单节点启动 防火墙设置异常处理【1】iptable链路中断 参考文档 参加完2024年11月软考,对ES的分词进行考查,前期有【 Docker 环境下安装部署 Elasticsearch 和 kibana】和【 Docker 环境下为 Elasticsearch 安装IK 分…

在 CentOS 系统上直接安装 MongoDB 4.0.25

文章目录 步骤 1:配置 MongoDB 官方源步骤 2:安装 MongoDB步骤 3:启动 MongoDB 服务步骤 4:验证安装步骤 5:可选配置注意事项 以下是在 CentOS 系统上直接安装 MongoDB 4.0.25 的详细步骤: 步骤 1&#x…

基于Vue+SpringBoot的求职招聘平台

平台概述 本平台是一个高效、便捷的人才与职位匹配系统,旨在为求职者与招聘者提供一站式服务。平台内设三大核心角色:求职者、招聘者以及超级管理员,每个角色拥有独特的功能模块,确保用户能够轻松完成从信息获取到最终录用的整个…

谈谈Spring的常见基础概念

文章是对Spring一些基础的底层概念进行分析,后续再遇到这些问题的时候,可以采用这些步骤进行详细解释。 一.谈谈SpringIOC的理解,原理与实现? 总: 1.控制反转: (1)原来的对象是由使用者来进行控制,有了S…

NAT网络地址转换——Easy IP

NAT网络地址转换 Tip: EasylP没有地址池的概念,使用接口地址作为NAT转换的公有地址。EasylP适用于不具备固定公网IP地址的场景:如通过DHCP, PPPOE拨号获取地址的私有网络出口,可以直接使用获取到的动态地址进行转换。 本次实验模拟nat协议配置 AR1配置如下&…

基于xr-frame实现微信小程序的手部、手势识别3D模型叠加和石头剪刀布游戏功能

前言 xr-frame是一套小程序官方提供的XR/3D应用解决方案,基于混合方案实现,性能逼近原生、效果好、易用、强扩展、渐进式、遵循小程序开发标准。xr-frame在基础库v2.32.0开始基本稳定,发布为正式版,但仍有一些功能还在开发&#…

【WRF-Urban】URBPARM_LCZ.TBL 查找表解释及内容

【WRF-Urban】URBPARM_LCZ.TBL 查找表解释及内容 URBPARM_LCZ.TBL 文件的作用URBPARM_LCZ.TBL 文件中的参数URBPARM_LCZ.TBL 的使用URBPARM_LCZ.TBL 文件内容如何调整或扩展 URBPARM_LCZ.TBL参考URBPARM_LCZ.TBL 文件是 WRF(天气研究与预报模型) 中用于处理 局地气候区(Loca…

nacos开启鉴权与配置加密

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、Nacos漏洞复现 1.1.查看配置 1.2.查看用户列表 1.3.注册新用户 二、Nacos开启鉴权 三、变更配置与信息加密 1.变更配置 2.信息加密 四、增强安全性 五、常见问…