stm32 iic调试ds1307 rtc时钟

news2024/11/25 22:41:44

 使用代码

(1条消息) stm32iic调试ds1307rtc时钟,采用iic接口,驱动软件,可以设置,读取ds1307时钟代码资源-CSDN文库

使用STM32调试ds1307,采用iic接口,由于有个项目需要使用外部RTC功能,所以需要选一个RTC模块,最后选择淘宝上搞个模块过来测试一下

模块长相如下

 原理图如下这个模块,从原理图上看,还有一个eeprom,这个也可以通过iic接口来访问,实际项目上暂时未使用,等有空可以调试看看

 DS1307
是美国DALLAS公司推出的I2C总线接口实时时钟芯片,它可独立于 CPU工作,不受CPU主晶振及其电容的影响,且计时准确,月累积误差一般小于10秒。芯片还具有主电源掉电情况下的时钟保护电路,DS1307的时钟靠后备电池维持工作,拒绝CPU对其读出和写入访问。同时还具有备用电源自动切换控制电路,因而可在主电源掉电和其它一些恶劣环境场合中保证系统时钟的定时准确性。DS1307具有产生秒、分、时、日、月、年等功能,且具有闰年自动调整功能。同时,DS1307芯片内部还集成有一定容量、具有掉电保护特性的静态RAM,可用于保存一些关键数据。

 

采用的测试开发板,也是淘宝购买,使用STM32F103RCT6信号,这块MCU也是一款主流MCU使用场景比较多。

 原理图连接

如上图所示

PA10/PA9/GND,使用杜邦线连接TTL转USB模块连接电脑,调试串口使用

5V/GND/PB10/PB,使用杜邦线连接到DS1307模块的P1接口

软件编写

stm32cubemx版本号

使用内部时钟,这里都可以,也可以使用外部时钟

配置调试接sw或者jtag,串口1,PB10/PB11输出模式 

 重定义串口打印函数

/*
 * Retargets the C library printf function to the USART.
 */
int fputc(int ch, FILE *f)
{
	while((USART1->SR&0x40)==0);//等待上一次发送完毕   
	USART1->DR=ch; 		
	return ch;
}

主函数钟读取DS1307数据

	HAL_Delay(1000);
    HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_8);


	second=Read1307(0x00);
	minute=Read1307(0x01);
	hour=Read1307(0x02);
	week=Read1307(0x03);
	day=Read1307(0x04);
	month=Read1307(0x05);
	year=Read1307(0x06);	
	
	printf("Time:%d-%d-%d",year,month,day);
	printf(" %d:%d:%d\r\n",hour,minute,second);

 打印数据如下

 实际调试图片连接线

使用代码

(1条消息) stm32iic调试ds1307rtc时钟,采用iic接口,驱动软件,可以设置,读取ds1307时钟代码资源-CSDN文库

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

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

相关文章

JimuReport积木报表 v1.5.8版本发布—免费的数据可视化报表

项目介绍 一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等! Web 版报表设计器,类似于excel操作风格,通过拖拽完成报…

用frp开源工具,实现内网穿透(详细教程)

本文转载于: https://blog.csdn.net/qq_40903527/article/details/123850647 选取其中的frp内网穿透方式,给大家分享本此教程供大家参考。 ^ - ^ 如果你有一台云服务器(有公网IP),或者有使用权,那么 在开…

Vue使用keep-Alive实现从详情页返回到列表页,还能记住当前的page页码以及切换的tab选项

哈喽,大家好,今天遇到一个小需求,就是要求从订单详情页返回到订单列表页,定位到跳转前的page页码和切换对应的tab选项 从我看了大量博主写的文章后,发现可以使用vue中的keep-Alive知识 下面是Vue中讲解keep-alive K…

我先肝了,爆火的Java全能笔记,分布式/开源框架/微服务/性能调优全有

前言 程序员,立之根本还是技术,一个程序员的好坏,虽然不能完全用技术强弱来判断,但是技术水平一定是基础,技术差的程序员只能CRUD,技术不深的程序员也成不了架构师。程序员对于技术的掌握,除了…

如何选择合适的智能氮气柜?

随着电子产品的普及,IC、半导体、精密元件、检测仪器之类的物品对湿度要求越来越高,潮湿、霉菌和金属氧化所造成的损害,随时在发生。人们对于物品的存放环境要求逐渐提高,利用防潮设备如智能氮气柜、电子防潮柜来存储产品也越来越…

《编程思维与实践》1060.浮点数加法

《编程思维与实践》1060.浮点数加法 题目 思路 浮点数可以分为[整数部分].[小数部分],可以将两个部分分开处理,最后再合并,但在处理四舍五入时较为繁琐, 为了方便起见,这里采用将两个部分一起处理的方式: 由于浮点数不超过500位:整数部分最多500位,小数部分最多500位, 所以加法…

gpio 子系统驱动LED

gpio 子系统 API 函数 1、gpio_request 函数 gpio_request 函数用于申请一个 GPIO 管脚,在使用一个 GPIO 之前一定要使用 gpio_request 进行申请,函数原型如下: int gpio_request(unsigned gpio, const char *label)/*函数参数和返回值含义如…

企业应该如何做到数字化转型成功?

01 成长型企业数字化转型的意义 成长型企业想要实现数字化转型,那么我们需要先弄明白,对于成长型企业而言,数字化转型到底具有什么意义?希望实现哪些目标? 可以归结为以下四点: 提升企业的生产力和效率&…

吴恩达机器学习课程的重点内容解析

吴恩达(Andrew Ng)教授是机器学习领域的知名专家,其机器学习课程在全球范围内备受欢迎。本文将解析吴恩达机器学习课程的重点内容,帮助读者了解机器学习的基本原理、常见算法和实践技巧。 一、机器学习简介 在课程的第一部分&…

今年这面试难度,我给跪了……

大家好,最近有不少小伙伴在后台留言,又得准备面试了,不知道从何下手! 不论是跳槽涨薪,还是学习提升!先给自己定一个小目标,然后再朝着目标去努力就完事儿了! 为了帮大家节约时间&a…

Winforms不可见组件开发

Winforms不可见组件开发 首先介绍基本知识,有很多的朋友搞不清楚Component与Control之间的区别,比较简单形象的区别有下面两点: 1、Component在运行时不能呈现UI,而Control可以在运行时呈现UI。 2、Component是贴在容器Container上的,而Control则是贴…

流控验证太麻烦?不敢上生产?MSE 有办法!

作者:涯客 影响服务稳定性的因素有很多,其中比较常见但又往往容易被忽视的就是面向流量的稳定性,流控是保障服务稳定性的重要手段。但是,我们发现大量客户仅仅在开发环境和预发环境中测试流控,却在生产环境中鲜有使用…

FastJson常用的API整理

工作的时候一直用到fastjson做JavaBean和Json的转化,最近工作的时候对fastjson的API的理解有点混乱,所以做了整理。 一、对象类型梳理 首先要明确在转换中涉及到的五个类型的对象,分别是:JavaObject、JavaObjectList、JsonStrin…

C语言初阶之三子棋

三子棋 初始文件建立主函数文件棋盘的初始化(InitBoard)打印棋盘(DisplayBoard)玩家下棋(PlayerMove)电脑下棋(ComputerMove)判定胜负所有代码game.hgame.ctest.c 结语 初始文件建立…

一文总结Redis面试知识点

文章目录 Redis知识点知识点1 缓存穿透知识点2 布隆过滤器知识点3 缓存击穿知识点4 缓存雪崩知识点4 双写一致性知识点5 Redis持久化知识点6 数据过期策略知识点7 数据淘汰策略知识点8 分布式锁知识点9 主从复制知识点10 哨兵模式知识点11 分片集群知识点12 IO多路复用 Redis问…

零信任安全:综合网络安全方法

在当今的数字世界,网络威胁日益复杂,使得组织更加难以保护敏感数据和系统的安全。为应对当前的网络威胁,全新的“零信任”安全模型应运而生。 零信任安全作为一种网络安全方法,要求组织必须验证每一次访问尝试,无论访…

云发布的Docker部署文档

云发布的Docker部署文档 文章目录 云发布的Docker部署文档1、服务器安装 Docker2、修改后端微服务的配置2.1 修改 MySQL 的配置2.2 修改 Redis 的配置2.3 修改 Nacos 的配置 3、生成微服务镜像4、拉取远程镜像5、生成前端镜像5.1 准备文件5.2 构建前端镜像 6、基于镜像生成并运…

《编程思维与实践》1062.计算2的N次方

《编程思维与实践》1062.计算2的N次方 题目 思路 法一:直接复用计算a的n次方的代码即可. 法二:注意到 2 30 2^{30} 230在int(32位,第一位为符号位, 2 31 − 1 2^{31}-1 231−1)的范围内,可以直接处理. 注: int范围为 [ − 2 31 , 2 31 − 1 ] [-2^{31},2^{31}-1] [−231,231−…

利用Eigen求解不同坐标系的旋转矩阵

不同坐标系之间的刚性转换以及实现: 坐标系转换原理如下,使用了仿射变换实现了旋转平移: [ r 11 r 12 t x r 21 r 22 t y 0 0 ] ∗ [ x y 1 ] [ x ′ y ′ 1 ] \begin{bmatrix} r_{11} & r_{12}& t_x\\ r_{21}& r_{22}& t…

有没有免费的云渲染平台?

有没有免费的云渲染平台?相信很多人在找云渲染平台的时候都会先网上查找下有没有免费的平台可以使用,而且也确实看到很多云渲染平台写着“免费渲染”,所以这免费是真的免费还是只是一个噱头呢?下面,由前沿的 云渲染平台…