【Arduino基础教程】RS1307时钟模块

简介: RS1307时钟模块RS1307是一个低功耗的外置时钟模块,它可以让你的项目即使在断电的情况下,也能保证在重新启动后走时正确。所需材料1x Arduino UNO1x RS1307时钟模块4x 跳线接线示意图RS1...
RS1307时钟模块

RS1307是一个低功耗的外置时钟模块,它可以让你的项目即使在断电的情况下,也能保证在重新启动后走时正确。

所需材料

  • 1x Arduino UNO
  • 1x RS1307时钟模块
  • 4x 跳线

接线示意图

RS1307/RS1302与Arduino相连的接线图
RS1307/RS1302与Arduino相连的接线图
RS1307 Arduino
SDA -> Analog A4
SCL -> Analog A5
VCC -> 5V
GND -> GND

加载库文件

  • 这里下载RTClib库,然后手动加载到Arduino IDE中。

示例代码


#include <Wire.h>
#include "RTClib.h"

RTC_DS1307  rtc; // Create a RealTimeClock object

void setup() { 
  Serial.begin(9600); 
  Serial.println("YourDuino.com DS1307 Real Time Clock - Set / Run Utility"); 

 #if def AVR 
   Wire.begin();
 #else 
   Wire1.begin(); 
 #end if 

  rtc.begin(); 
// Start the RTC library code 
/*----( SET the date and time. Comment OUT these lines after setting )----*/ 
// Put these "//" in front of the line you do NOT want to use // following line sets the RTC to the date & time this sketch was compiled 
  rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // This line sets the RTC with an explicit date & time, for example to set 
// May 21, 2015 at 6pm you would call: (use 24 hour time) 
// rtc.adjust(DateTime(2015, 5, 21, 18, 0, 0));
}
//--(end setup )---
void loop(){ 
  DateTime now = rtc.now(); // Read data from the RTC Chip       
  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);
}//--(end main loop )---
/*-----( Declare User-written Functions )-----*/
//NONE//*********( THE END )***********

输出结果

    ---------------------( COPY )--------------------------
              2015/4/26 19:29:32
              2015/4/26 19:29:35
              2015/4/26 19:29:38
     -----------------( END COPY )----------------------

参考文献

https://arduino-info.wikispaces.com/DS1307_RealTime_Clock_Brick

目录
相关文章
|
6月前
|
数据采集 IDE 编译器
STM32微控制器入门及应用实例
STM32微控制器入门及应用实例
|
4月前
|
前端开发 安全
stm32f407探索者开发板(十一)——SystemInit时钟系统初始化剖析
stm32f407探索者开发板(十一)——SystemInit时钟系统初始化剖析
124 0
|
6月前
|
缓存 网络协议 算法
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
|
6月前
|
数据格式
LabVIEW串口通信的激光器模块智能控制
LabVIEW串口通信的激光器模块智能控制
51 0
STM32F0单片机快速入门二 开发环境的建立 20200128
STM32F0单片机快速入门二 开发环境的建立 20200128
|
C# Android开发 C++
c#(nanoframework)安装单片机环境;如何使用c#写类似于c的单片机驱动
c#(nanoframework)安装单片机环境;如何使用c#写类似于c的单片机驱动
216 0
c#(nanoframework)安装单片机环境;如何使用c#写类似于c的单片机驱动
|
缓存
STM32使用HAL库实现串口通讯——实战操作
STM32使用HAL库实现串口通讯——实战操作
275 0
51单片机学习--LCD模块使用
51单片机学习--LCD模块使用
133 0
|
C语言 芯片
ARM架构与编程--基于STM32F103 (1)LED原理图
当我们学习C语言的时候,我们会写个Hello程序。那当我们写ARM程序,也该有一个简单的程序引领我们入门,这个程序就是点亮LED。 我们怎样去点亮一个LED呢? 分为三步: 1.看原理图,确定控制LED的引脚; 2.看主芯片的芯片手册,确定如何设置控制这个引脚; 3.写程序;
161 0