简介
实时时钟或RTC是集成电路或IC形式的计时设备。 RTC是许多时间关键应用程序和设备(如服务器,GPS,数据记录器等)的组成部分。
I早已使用实时时钟或RTC模块实现了几个项目,包括8051微控制器和Arduino。
8051,我在一个名为《的项目中使用了DS1307 RTC模块strong》基于RFID的停车场系统。来到Arduino,我在 ARDUINO ALARM CLOCK 和使用DS1307的ARDUINO实时时间教程中使用了相同的DS1307 RTC。如果你想要一个快速参考,你可以浏览提供的链接。
另外,在使用DS1307项目的Arduino实时时钟教程中,我已经讨论过需要一个RTC。所以,我不会再讨论那个方面了。我将直接进入感兴趣的IC:DS3231 RTC IC。
关于DS3231 RTC IC的简要说明
DS3231是由开发的RTC IC Maxim Integrated。它是一种低成本,极其精确的RTC IC,可通过I2C接口进行通信。 DS3231 RTC IC的一个有趣特性是它集成了晶体振荡器和温度传感器,因此您无需连接外部晶体。
它采用SO-16封装。虽然只需要8个引脚就可以使用16个引脚,但晶体的集成使IC体积更大,因此它被封装为16引脚IC而不是8引脚IC。
下图显示了DS3231 RTC IC的引脚图。
引脚说明DS3231 IC
进入DS3231 IC的引脚说明,下表给出了引脚的简单功能概述。
Pin Number 图钉名称描述
132KHz32KHz输出
2V CC直流电源引脚
3INT/SQW低电平有效中断或方波输出
4RST低电平有效复位
5 - 12NC无连接
13GND接地
14V BAT电池的备用电源输入
15SDA串行数据I/O
16SCL串行时钟输入
注意:引脚5-12是NC引脚。它们可以连接到GND。
DS3231 RTC模块
使用DS3231 IC作为主要部件,几家制造商开发了DS3231 RTC模块,其中包含所有必要的组件。目前几乎所有可用的模块都包含一个额外的IC,24C32N(或类似的东西)。该次级IC是一个32Kb大小的EEPROM IC。
由于RTC和EEPROM IC都通过I2C协议接口,因此这些I2C器件都不需要任何额外的引脚当微控制器充当主设备时,它可以充当从设备。
此项目中使用的DS3231 RTC模块如下图所示。
由于RTC完全是为了保持时间而不管电源如何,您可以将3V CR2032锂电池连接到RTC IC以保持时钟滴答作响。在DS3231模块中,您可以使用背面提供的电池座连接电池。
DS3231 RTC模块的组件和引脚
如前所述,DS3231 IC和24C32 EEPROM IC是典型DS3231 RTC模块板上的主要组件。除此之外,还有一些其他组件,如电源LED,少数电阻器,电容器,电池座和用于连接微控制器的引脚。
下图显示了组件和DS3231 RTC模块上的引脚。
DS3231 RTC模块与Arduino接口
如果您还记得使用MicroSD卡适配器的早期项目,我已经设置了一个简单的数据记录应用程序,其中传感器的数据被捕获并以microSD卡的形式存储在microSD卡中文本文件。
通过将DS3231等实时时钟集成到上述项目中,您可以使用准确的时间详细信息跟踪数据日志。
因此,DS3231 RTC模块与Arduino的接口具有众多应用和优势。
电路图
所需组件
Arduino UNO
DS3231 RTC模块
16×2 LCD显示器
迷你面包板
10KΩPOT
连接电线
首先,让我开始Arduino和DS3231之间的连接。由于它们之间的接口是I2C,因此请识别Arduino板上的I2C引脚(如果您使用的是除UNO之外的任何其他板)。
在Arduino UNO中,A4和A5是SDA和SCL引脚。将这些引脚与DS3231模块的相应SDA和SCL引脚相连。另外,将RTC模块的VCC和GND连接到Arduino的+ 5V和GND。
查看输出,我使用过LCD模块。将LCD的RS和E引脚连接到引脚7和6.将LCD的D4-D7连接到Arduino的5-2。
代码
我使用了Adafruit的一个名为“RTClib”的特殊库(它是JeeLab的RTC库的分叉版本)。从此链接下载库,并将解压缩的文件夹放在Arduino的libraries目录中。
由于通讯是I2C,我也使用了“电线”库。您无需下载此库,因为它与Arduino IDE集成。
工作
Arduino DS3231 RTC模块接口的工作非常简单。 Arduino首先使用其从地址(DS3231 IC为0x68)初始化RTC模块。
Arduino然后用代码的日期和时间更新RTC IC的内部寄存器编译并上传到Arduino。可以在LCD显示屏上查看上传的日期和时间。
如果您希望DS3231模块保持时间均匀断开Arduino电源后,可以连接3V锂电池。
应用
服务器
数据记录器
GPS模块
功率计
-
DS3231
+关注
关注
2文章
51浏览量
23833 -
Arduino
+关注
关注
188文章
6468浏览量
186922
发布评论请先 登录
相关推荐
评论