
DS1307时钟模块是一款低功耗,具有56字节非失性RAM的全BCD码时钟日历实时时钟芯片,地址和数据通过两线双向的串行总线的传输,芯片可以提供秒,分,小时等信息,每一个月的天数能自动调整。AM/PM 标志位决定时钟工作于24小时或12小时模式,芯片有一个内置的电源感应电路,具有掉电检测和电池切换功能。DS1307时钟模块是一个集成了数字时钟的传感器,用户可以自己去编写程序,做成一个电子时钟。

| 引脚名称 | 描述 |
|---|---|
| GND | GND(电源输入负极) |
| VCC | VCC(电源输入正极) |
| SDA | 串行数据引脚 |
| SCL | 串行时钟引脚 |
供电电压:3.3V / 5V
连接方式:2.54mm排针
安装方式:螺丝固定

首先找到Arduino库文件夹:

把库文件复制到Arduino IDE软件目录下的libraries文件夹中即可:

库文件:点击下载
示例程序(UNO开发板):点击下载
#include <RtcDS1307.h>
#include <Wire.h>
RtcDS1307<TwoWire> Rtc(Wire);
void setup(){
Serial.begin(9600);
Rtc.Begin();
Rtc.SetIsRunning(true);
Rtc.SetDateTime(RtcDateTime(__DATE__, __TIME__));
}
void loop(){
//DS1307时钟模块接开发板llc(A4,A5)
Serial.print(String(String("Date") + String(":")) + String(String(Rtc.GetDateTime().Year()) + String("-")) + String(String(Rtc.GetDateTime().Month()) + String("-")) + String(String(Rtc.GetDateTime().Day()) + String("-")));
Serial.println(String(String("Time") + String(":")) + String(String(Rtc.GetDateTime().Hour()) + String("-")) + String(String(Rtc.GetDateTime().Minute()) + String("-")) + String(Rtc.GetDateTime().Second()));
}
示例程序(ESP32开发板—基于Python语言,不能用Arduino IDE上传代码):
示例程序(UNO开发板):点击下载

示例程序(ESP32开发板):点击下载
Arduino环境搭建
准备配件:
电路接线图:

Micropython环境搭建
准备配件:
电路接线图:
视频教程:点击查看

器件连接好线之后,将上述程序上传到 Arduino UNO 开发板之后, 打开Mxily串口监视器,串口打印DS1307时钟模块读取系统时间当前的日期和时间。