亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 工业技术

RTC 模块:简单项目的绝对指南

您有需要精确计时的电子设备吗?或者您的项目是否需要您计算秒、分钟、小时甚至月?

好吧,如果您不知道该怎么做,请不要担心,您来对地方了。涉及计时的项目,即使没有电源,也可能很棘手。谢天谢地,我们已经为您服务了。

您只需要一个实时时钟 (RTC) 模块。因此,在本文中,我们将了解有关 RTC 模块的所有内容,并向您展示如何使用 RTC 模块电路制作一个简单的项目。

你准备好了吗?那么,我们开始吧!

什么是 RTC 模块?

RTC 模块

实时时钟 (RTC) 是一种集成电路时钟模块,通常在现代计算机、服务器或嵌入式系统中使用。此外,RTC 模块有一个目的;计时。

该设备可以计算秒、分钟、小时和年。此外,它还能够准确处理各种计时应用。

RTC 模块如何工作?

由于 RTC 具有如此重要的作用,即使系统关闭,它也能保持时间。出于这个原因,RTC 可以作为触发器,在发生诸如闹钟或移动设备上的预定电源等事件时打开系统。

RTC 如何实现这一目标?好吧,这个集成电路在不同于为其系统供电的电源上工作。因此,RTC 可以在低功率情况下或停电时连续运行。另外,您只需要一点点电流即可运行 RTC。

此外,较旧的 RTC 模块以锂电池作为备用电源,而较新的版本则使用超级电容器或辅助电池。现在,两种 RTC IC 之间存在差异。

带有超级电容器的实时时钟模块具有可充电功能,您可以将它们焊接到电路上。另一方面,带有辅助电池的 RTC 更为常见,因为您可以在大多数消费级主板上找到它们。在这种情况下,RTC 由单个电池供电。因此,当您卸下这块电池时,它会重置 RTC 并将其发送回起点。

此外,实时时钟模块利用晶体振荡器来调节时间。因此,它们与常规硬件时钟不同,因为它们不需要时钟信号。

DS3231 RTC 模块特性和规格

DS3231模块的特点和规格如下:

特点

规格

应用程序

以下是了解 DS3231 应用时需要考虑的一些案例:

DS3231 RTC 引脚配置

DS3231 RTC 引脚配置

DS321 有六个端子。但是,不必使用这些引脚中的两个。因此,我们主要有四个端子或引脚。您可以在模块的另一侧看到它们。 DS3231 RTC模块的管脚配置如下:

PIN 名称 描述
VCC 连接到电源的正极
接地 接地
SDA 串口数据的管脚(I2C接口)
SCL 串行时钟的管脚(I2C接口)
SQW 方波输出引脚
32K 32k 振荡器的输出

如何使用 DS3231 RTC 模块

您只能通过 I2C 接口与 DS3231 RTC 模块进行通信。 I2C 接口处理从 DS3221 发送和接收的数据。因此,您可以通过 I2C 获取任何时间和日期信息。

DS3231 和 I2C

此外,模块和 I2C 之间的传输很复杂。此外,通信以字节格式进行。因此,最好使用专门针对 DS3231 编写的库。为什么?好吧,使用库可以改善沟通。因此,您可以下载 DS3231 库并使用程序调用它们。

因此,一旦包含头文件,控制器就会开始通信并向您显示时间和日期。更重要的是,您可以使用这些库轻松控制和设置警报。

此外,当电量不足或没电时,RTC模块会自动从电池取电,让芯片持续提供准确的时间和数据。一旦系统重新启动,控制器和模块之间的通信就可以继续正常进行。

项目:Arduino 日历时钟

在本节中,我们将学习如何在 Arduino 中使用实时时钟并构建 Arduino 日历时钟项目。

电路设计

这是使用 DS3231 RTC 模块的简单 Arduino 日历时钟的设计。由于 IC2,我们将所有设备连接到仅由四根线组成的公共总线:

Arduino 日历时钟的电路图

需要的组件

以下是本项目所需的材料:

代码

在这里,我们将使用库并创建自定义函数,以使创建我们的代码更容易、更易读。因此,本项目将使用以下库:

下载这些库后,通过 #include 将它们添加到您的代码中 关键字。所以,有了这个,我们将设置两个对象。第一个是 lcd(),另一个是 rtc。这两个对象将有助于与 LCD 和 DS3231 模块进行通信。

LCD() 和 rtc 的代码

接下来,创建两个自定义函数,以便您轻松管理代码。 updateRTC() 是您将编写的第一个函数。它是向用户询问当前日期和时间并使用输入更新 RTC 的内部时钟的功能。

updateRTC() 的代码

接下来,创建两个自定义函数,以便您轻松管理代码。 updateRTC() 是您将编写的第一个函数。它是向用户询问当前日期和时间并使用输入更新 RTC 的内部时钟的功能。

updateRTC() 的代码

您将创建的下一个函数是 updateLCD() 函数。它负责更新 LCD 将显示的文本。

updateLCD() 2 的代码

创建代码的最后一步是为 Arduino 添加常规函数:setup() 和 loop()。下面是这两个函数的代码:

代码 设置()

代码 循环()

最后,上传您的代码,您的 Arduino Uno 应该开始在 LCD 上显示日期和时间。

四舍五入

RTC 模块是一种为电路添加计时功能的廉价且简单的方法。我们向您展示的只是表面上的一个划痕。如果你对它进行更多的修改,你会发现许多其他有趣的方式来使用这个模块。

值得一提的是,如果您在市场上找不到 DS3231,那么 DS12C997 和 DS1307 是值得的等价物。此外,对于上面提到的 Arduino 项目,您可以使用串行监视器来修改项目的日期和时间。您所要做的就是输入字母“U”并按照提示进行操作。这总结了这篇文章。如果您有任何问题,请随时与我们联系,我们很乐意为您提供帮助。


工业技术

  1. 工业自动化:OEM 指南
  2. 工业机器人:所有行业机器人技术的第一指南
  3. 制造企业 2021 年营销战略终极指南
  4. 制造商社交媒体:终极指南 [电子书]
  5. 探索电子商务的狂野西部:B2B 分销商指南
  6. 机器人码垛机终极指南
  7. CNC铣刀刀头安全使用指南
  8. 4140 与 4130 钢:适合您项目的钢材
  9. 制造业工人安全指南
  10. Ultiboard – 最适合初学者的终极指南
  11. 蓝牙通信协议 - 学习者终极协议指南
  12. 喷砂为您的定制金属制造项目带来的好处