RTC实时时钟——DS1302

DS1302目录

  • 一、DS1302简介
    • 引脚定义与推荐电路
  • 二、芯片手册
    • 1.操作寄存器的定义
    • 2.时序定义
      • dc1302.c
      • ds1302.h
  • 三、蓝桥杯实践


一、DS1302简介

RTC(Real Time Clock):实时时钟,是一种集成电路,通常称为时钟芯片。现在流行的串行时钟电路很多,如DS1302、 DS1307、PCF8485等。

DS1302是由美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟芯片。主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿等多种功能。
DS1302

引脚定义与推荐电路

DS1302的引脚排列,其中Vcc2为主电源,VCC1为后备电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。 R S T ‾ \overline{RST} RST是复位/片选线,通过把 R S T ‾ \overline{RST} RST输入驱动置高电平来启动所有的数据传送。
电路

引脚名作用
VCC2主电源
VCC1备用电池
GND电源地
X1、X232.768KHz晶振
R S T ‾ \overline{RST} RST芯片使能
IO数据输入/输出
SCLK串行时钟

二、芯片手册

1.操作寄存器的定义

寄存器
1、秒寄存器(80H和81H)的位7 (CH)为时钟暂停标志。
CH为0时,时钟振荡停止;
CH为1时,时钟开始运行。
2、控制寄存器(8EH 和8FH)的位7 (WP)为写保护位。
WP为0时,可对任何的时钟或RAM寄存器进行写操作;
WP为1时,禁止对任一寄存器进行写操作。

2.时序定义

时序

dc1302.c

#include <STC15F2K60S2.H>
#include <intrins.h>sbit SCK=P1^7;		
sbit SDA=P2^3;		
sbit RST = P1^3;   // DS1302复位												void Write_Ds1302(unsigned  char temp) 
{unsigned char i;for (i=0;i<8;i++)     	{ SCK=0;SDA=temp&0x01;temp>>=1; SCK=1;}
}   void Write_Ds1302_Byte( unsigned char address,unsigned char dat )     
{RST=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SCK=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();RST=1; 	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();Write_Ds1302(address);	Write_Ds1302(dat);		RST=0; 
}unsigned char Read_Ds1302_Byte ( unsigned char address )
{unsigned char i,temp=0x00;RST=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SCK=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();RST=1;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();Write_Ds1302(address);for (i=0;i<8;i++) 	{		SCK=0;temp>>=1;	if(SDA)temp|=0x80;	SCK=1;} RST=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SCK=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SCK=1;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SDA=0;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SDA=1;	_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();return (temp);			
}

ds1302.h

#ifndef __DS1302_H
#define __DS1302_Hvoid Write_Ds1302(unsigned char temp);
void Write_Ds1302_Byte( unsigned char address,unsigned char dat );
unsigned char Read_Ds1302_Byte( unsigned char address );
#endif

三、蓝桥杯实践

*将ds1302.c文件中改写成_nop_();nop();nop();nop();nop();nop();nop();nop();

void Init_Ds1302(uchar hour,uchar min,uchar sec)
{Write_Ds1302_Byte(0x8e,0x00);  //关写保护,不然无法写数据Write_Ds1302_Byte(0x80,(sec/10)*16+sec%10);Write_Ds1302_Byte(0x82,(min/10)*16+min%10);Write_Ds1302_Byte(0x84,(hour/10)*16+hour%10);Write_Ds1302_Byte(0x8e,0x80);  //开启写保护
}void Get_Ds1302()
{miao = Read_Ds1302_Byte(0x81);fen = Read_Ds1302_Byte(0x83);shi = Read_Ds1302_Byte(0x85);shi = (shi>>4)*10+(shi&0x0f);fen = (fen>>4)*10+(fen&0x0f);miao = (miao>>4)*10+(miao&0x0f);
}调用说明:设置初始时间为83000->Init_Ds1302(08,30,00);

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

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

相关文章

华为李鹏:到 2025 年智能算力需求将达到目前水平的 100 倍

在第十四届全球移动宽带论坛上&#xff0c;华为高级副总裁、运营商 BG 总裁李鹏表示&#xff0c;大模型为代表的 AI 应用发展带来对智能算力的爆发式需求。 李鹏在题为《加速 5G 商业正循环&#xff0c;拥抱更繁荣的 5.5G》的讲话中表示&#xff0c;「5G 已经走在商业成功的正确…

C# OpenCvSharp 去除字母后面的杂线

效果 项目 代码 using OpenCvSharp; using System; using System.Drawing; using System.Windows.Forms;namespace OpenCvSharp_Demo {public partial class frmMain : Form{public frmMain(){InitializeComponent();}string image_path "";private void Form1_Loa…

三国志14信息查询小程序(历史武将信息一览)制作更新过程05-后台接口的编写及调用

1&#xff0c;创建ASP.NET Web API项目 生成完毕&#xff0c;项目结构如下&#xff1a; 运行看一下&#xff1a; 2&#xff0c;后台接口编写 &#xff08;1&#xff09;在Models文件夹中新建一个sandata.cs文件&#xff08;就是上篇中武将信息表的model文件&#xff09; u…

伦敦金开户需要多少资金,有开户条件吗?

伦敦金&#xff08;London Gold&#xff09;是黄金市场中备受瞩目的投资种类之一&#xff0c;无论是专业投资者还是新手&#xff0c;都对伦敦金感兴趣。但关于开户需要多少资金&#xff0c;以及是否有特定的开户条件&#xff0c;这些问题可能会让一些新手投资者感到困惑。 首先…

notepad++搜索结果窗口不见了

1、使用notepad打开一个文件文件 2、ctrlf&#xff0c;打开搜索窗口&#xff0c;随便搜索一个内容 3、按F7,然后AltF7 切换焦点到Find result. 会有一个小窗口出现&#xff0c;内容是&#xff1a;还原&#xff0c;移动&#xff0c;大小等 4&#xff0c;点移动&#xff0c;使…

[答疑]校长出轨主任流程的业务建模

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 艳阳天 2023-10-27 19:45 我有点迷糊。校长出轨主任在酒店被拍到&#xff0c;不属于学校的业务流程&#xff0c;但闹出这种事对学校有很大影响。如果学校想用一个系统抓风纪&#xff…

论文阅读—— BiFormer(cvpr2023)

论文&#xff1a;https://arxiv.org/abs/2303.08810 github&#xff1a;GitHub - rayleizhu/BiFormer: [CVPR 2023] Official code release of our paper "BiFormer: Vision Transformer with Bi-Level Routing Attention" 一、介绍 1、要解决的问题&#xff1a;t…

OpenLayers入门,OpenLayers加载离线xyz瓦片地图并显示离线鹰眼控件

专栏目录: OpenLayers入门教程汇总目录 前言 本章介绍如何使用OpenLayers加载离线xyz瓦片地图图层,并显示离线xyz瓦片的鹰眼控件。 本章是综合案例,涉及到两块内容,一个是离线瓦片地图加载,二个是鹰眼控件,拆分的参考文章如下: OpenLayers入门,OpenLayers地图鹰眼控…

Java面试题(每天10题)-------连载(26)

目录 多线程篇 1、什么是FutureTask&#xff1f; 2、什么是同步容器和并发容器的实现&#xff1f; 3、什么是多线程的上下文切换&#xff1f; 4、ThreadLocal的设计理念与作用&#xff1f; 5、ThreadPool&#xff08;线程池&#xff09;用法与优势&#xff1f; 6、Concur…

智能文件改名:高效复制并删除冗余,简化文件管理“

在繁杂的电脑文件世界中&#xff0c;如何高效地管理文件成为了许多人的难题。为了解决这一难题&#xff0c;我们推出了一款智能文件改名工具&#xff0c;它能够轻松复制文件并删除目标文件夹中的冗余文件&#xff0c;让您的文件管理更加高效便捷。 第一步&#xff0c;我们要打…

【网络协议】聊聊HTTPDNS如何工作的

传统 DNS 存在哪些问题&#xff1f; 域名缓存问题 我们知道CND会进行域名解析&#xff0c;但是由于本地会进行缓存对应的域名-ip地址&#xff0c;所以可能出现过期数据的情况。 域名转发问题 出口 NAT 问题 域名更新问题 解析延迟问题 因为在解析DNS的时候&#xff0c;需要进行…

Flink--Data Source 介绍

Data Source 简介 Flink 做为一款流式计算框架&#xff0c;它可用来做批处理&#xff0c;即处理静态的数据集、历史的数据集&#xff1b;也可以用来做流处理&#xff0c;即实时的处理些实时数据流&#xff0c;实时的产生数据流结果&#xff0c;只要数据源源不断的过来&#xff…

Spring的缓存机制-循环依赖

群公告 Java每日大厂面试题&#xff1a; 1、Spring 是如何解决循环依赖&#xff1f; 答案&#xff1a;三级缓存&#xff0c;简单来说&#xff0c;A创建过程中需要B&#xff0c;于是A将自己放到三级缓存里面&#xff0c;去实例化B&#xff0c;B实例化的时候发现需要…

【AICFD案例教程】进气歧管分析

AICFD是由天洑软件自主研发的通用智能热流体仿真软件&#xff0c;用于高效解决能源动力、船舶海洋、电子设备和车辆运载等领域复杂的流动和传热问题。软件涵盖了从建模、仿真到结果处理完整仿真分析流程&#xff0c;帮助工业企业建立设计、仿真和优化相结合的一体化流程&#x…

CSS时间线样式

css实现时间线样式&#xff0c;效果如下图&#xff1a; 一、CSS代码 .timeline {padding-left: 5px} .timeline-item { position: relative;padding-bottom: 20px;} .timeline-axis {position: absolute;left: -5px;top: 0;z-index: 10;width: 20px;height: 20px;line-he…

Android Studio报错:connect refused

参考链接&#xff1a; https://blog.csdn.net/qq_43213783/article/details/113936012 参考文章中说报错主要是由于代理导致的&#xff0c;在文件->设置->外观与行为->系统设置->HTTP代理。 方法一&#xff1a; 查看打开代理&#xff08;前提是代理可以通网&#x…

数据可视化PCA与t-SNE

PCA&#xff08;主成分分析&#xff09;和t-SNE&#xff08;t分布随机近邻嵌入&#xff09;都是降维技术&#xff0c;可以用于数据的可视化和特征提取。 降维&#xff1a;把数据或特征的维数降低&#xff0c;其基本作用包括&#xff1a; 提高样本密度&#xff0c;以及使基于欧…

实验(一):运算器实验

一、实验内容与目的 实验要求&#xff1a; 利用 CP226 实验仪的 K16..K23开关做为DBUS数据&#xff0c;其它开关做为控制信号&#xff0c;将数据写累加器A和工作寄存器W&#xff0c;并用开关控制ALU的运算方式&#xff0c;实现运算器的功能&#xff0c;将结果送入OUT寄存器。 实…

C# TCP Server服务端多线程监听RFID读卡器客户端上传的读卡数据

本示例使用设备介绍&#xff1a;液显WIFI无线网络HTTP协议RFID云读卡器可编程实时可控开关TTS语-淘宝网 (taobao.com) using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using Sy…

EM@解三角形@正弦定理@余弦定理

文章目录 abstract解三角形基本原理不唯一性 正弦定理直角三角形中的情形推广锐角三角形钝角情形 小结:正弦定理 余弦定理直角三角形中的情形非直角情形小结:余弦定理公式的角余弦形式 abstract 解直角三角形问题正弦定理和余弦定理的推导 对于非直角情形,都是直角情形的推广同…