四博智联产品售后

 找回密码
 立即注册
搜索
查看: 11513|回复: 0

基于ESPDUINO的RTC实时时钟模块功能演示

[复制链接]

31

主题

32

帖子

441

积分

版主

Rank: 7Rank: 7Rank: 7

积分
441
发表于 2016-7-30 15:05:05 | 显示全部楼层 |阅读模式
本帖最后由 linXJ 于 2016-7-30 15:06 编辑

1、产品介绍:  Arduino DS1307是基于DS1307的高精度实时时钟模块,通过I2C接口与单片机通信,可读取实时的年、月、日、星期、时、分、秒。性能稳定,品质优良。扣上纽扣电池时,即使模块掉电,时钟芯片会持续计时的。
模块特点如下:
  可计时至2100年;
  控制接口为I2C接口;
  电源建议为5VDC;
  模块上的DS1307地址为0x68;
  控制接口电平可为5V或3.3V;
  4个M2螺丝定位孔,便于安装。
2、实验器材:
  1个ESPDuino主板,1个实时时钟模块,4根公对母杜邦线;
3、实验步骤:
a. 用4根公对母杜邦线将实时时钟模块和ESPDUINO的I2C接口连接起来,并确保模块上的电池已经安装稳妥,如下表所示

ESPDuino
连接线
实时时钟模块
GND
绿线
GND
5V
红线
VCC
SDA
蓝线
SDA
SCL
黄线
SCL
b.选好串口、板子名称,点击烧录按钮,即可烧录。该例程展示的是如何设定时间、从DS1307中读取时间并显示到串口工具的显示窗口,如图示。c.可发现串口终端打印了时分秒、月日年和星期。

4、例程示例代码:
  1. #include <Wire.h>
  2. #include "DS1307.h"

  3. DS1307 clock;//DS1307定义类的一个对象
  4. void setup()
  5. {
  6.   Serial.begin(9600);
  7.   clock.begin();
  8.   clock.fillByYMD(2016,7,30);//Jul.30,2016
  9.   clock.fillByHMS(14,42,30);//12:57 30"
  10.   clock.fillDayOfWeek(SAT);//Saturday
  11.   clock.setTime();//写入时间到RTC芯片
  12. }
  13. void loop()
  14. {
  15.   printTime();
  16. }
  17. /*功能:显示时间序列显示器上*/
  18. void printTime()
  19. {
  20.   clock.getTime();
  21.   Serial.print(clock.hour, DEC);
  22.   Serial.print(":");
  23.   Serial.print(clock.minute, DEC);
  24.   Serial.print(":");
  25.   Serial.print(clock.second, DEC);
  26.   Serial.print("  ");
  27.   Serial.print(clock.month, DEC);
  28.   Serial.print("/");
  29.   Serial.print(clock.dayOfMonth, DEC);
  30.   Serial.print("/");
  31.   Serial.print(clock.year+2000, DEC);
  32.   Serial.print(" ");
  33.   switch (clock.dayOfWeek)// 打印出来的工作日
  34.   {
  35.     case MON:
  36.       Serial.print("MON");
  37.       break;
  38.     case TUE:
  39.       Serial.print("TUE");
  40.       break;
  41.     case WED:
  42.       Serial.print("WED");
  43.       break;
  44.     case THU:
  45.       Serial.print("THU");
  46.       break;
  47.     case FRI:
  48.       Serial.print("FRI");
  49.       break;
  50.     case SAT:
  51.       Serial.print("SAT");
  52.       break;
  53.     case SUN:
  54.       Serial.print("SUN");
  55.       break;
  56.   }
  57.   Serial.println(" ");
  58. }
复制代码
5、实物连接与实验效果图:


11.jpg
22.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|四博智联 Inc. ( 粤ICP备15034758号-1

GMT+8, 2024-4-19 10:33 , Processed in 0.065896 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表