【雕爷学编程】Arduino动手做(84)---DS1307时钟模块

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来---小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验八十四:DS1307时钟模块 Tiny RTC I2C模块 24C32存储器 时钟(带电池)

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

主要特点
56字节非失性的RAM
两线串行接口
可编程方波输出
自动掉电检测和切换电路
在电池备份模式下,功耗小于500nA
工业级的工作温度: -40 到80
8脚DIP和SOIC封装
可对秒,时,分,每月的天数,月份,每周的天数进行计数,并具有闰年补偿功能。计年上限2100。

DS1307时钟模块 Tiny RTC I2C模块 24C32存储器 时钟(带电池)

模块特色

1、采用DS1307 I2C实时时钟芯片(RTC)

2、使用24C32 32K I2C EEPROM存储器

3、采用LIR2032可充电锂电池,并带充电电路

4、解决DS1307带备用电池不能读写的问题。

5、充满电后,能提供DS1307计时1年。

6、设计小巧,27mm*28mm*8.4mm

7、引出DS1307的时钟引脚,为单片机提供时钟信号。

8、可以级联其他I2C设备。

模块电原理图

模块接线示意图

实验开源代码

/*

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

  实验八十四: DS1307时钟模块 Tiny RTC I2C模块 24C32存储器(带电池)

  项目:串口显示时间

*/



#include <Wire.h>

#include <RTClib.h>

DS1307 RTC;



void setup () {

  Serial.begin(57600);

  Wire.begin();

  RTC.begin();

  RTC.adjust(DateTime(__DATE__, __TIME__));

}



void loop () {

  DateTime now = RTC.now();

  Serial.print(now.year(), DEC);

  Serial.print('/');

  Serial.print(now.month(), DEC);

  Serial.print('/');

  Serial.print(now.day(), DEC);

  Serial.print(' ');

  Serial.print(now.hour(), DEC);

  Serial.print(':');

  Serial.print(now.minute(), DEC);

  Serial.print(':');

  Serial.print(now.second(), DEC);

  Serial.println();

  delay(3000);

}

  

实验串口返回情况

实验开源仿真编程(Linkboy V4.2)

实验开源图形编程(Mixly、Mind+、编玩边学)与串口返回情况

实验场景图

原文地址:https://www.cnblogs.com/eagler8/p/14841075.html