arduino uno r3单片机封装图_Arduino提高篇22—实时时钟DS1302

关注、 星标公众,不错过精彩内容

c348e5cd-6813-eb11-8da9-e4434bdf6706.jpeg

编辑:Tony
来源:公众号TonyCode
很多电子爱好者都热衷制作电子时钟来练手,这些时钟会使用数码管、点阵屏、LCD液晶屏、OLED屏、TFT 屏等显示模块,所使用的RTC时钟芯片也各不相同,DS1302、DS3231、DS12C887等。 通过单片机等MCU驱动RTC模块,读取时间数据并交给显示模块进行展示,还可以加入按键来调节时钟,可以说是一个非常全面的练手项目。

本篇我们来学习DS1302的使用,通过库函数来驱动DS1302获取时间数据。

1 DS1302介绍

DS1302是使用非常广泛的RTC芯片,它是DALLAS公司推出的涓流充电时钟芯片,内部含有一个实时时钟/日历和31字节静态RAM ,通过简单的串行接口与单片机进行通信。

主要特性
  • 实时时钟具有能计算 2100 年之前的秒 分 时 日 日期 星期 月 年的能力 还有闰年调整的能力。

  • 31X8 位暂存数据存储 RAM。

  • 串行 I/O 口方式使得管脚数量最少。

  • 宽范围工作电压 2.0-5.5V。

  • 读/写时钟或RAM 数据时有两种传送方式单字节传送和多字节传送字符组方式。

  • 双电源管用于主电源和备份电源供应。

管脚排列及描述
  • X1,X2:32.768KHz晶振引脚

  • GND:地

  • #RST:复位引脚

  • I/O:数据输入/输出引脚

  • SCLK:串行时钟引脚

  • Vcc1:备用电源引脚,一般接纽扣电池

  • Vcc2:主电源引脚

c648e5cd-6813-eb11-8da9-e4434bdf6706.jpeg
管脚配置

我们使用的DS1302模块已经将DS1302时钟芯片和晶振及纽扣电池集中在一块小板子上:

ce48e5cd-6813-eb11-8da9-e4434bdf6706.jpeg
DS1302模块
2 安装驱动库

本篇使用DS1302库来驱动DS1302,无需关心DS1302的读写时序及内部寄存器相关信息。DS1302的驱动库也非常多,这里使用msparks提供的库,可以从GitHub上下载(https://github.com/msparks/arduino-ds1302)。

将下载到的库进行解压,然后拷贝到Arduino IDE安装目录下的libraries文件夹下。

d648e5cd-6813-eb11-8da9-e4434bdf6706.jpeg
安装库
3 实验材料
  • Uno R3开发板

  • 配套USB数据线

  • 公对母杜邦线

  • DS1302模块

4 实验步骤

1. 根据原理图搭建电路图。

DS1302模块的VCC和GND连接Uno开发板的3.3V和GND。DS1302模块的CLK、DAT、RST对应连接Uno开发板的4、3、2引脚。

实验原理图如下图所示:

e448e5cd-6813-eb11-8da9-e4434bdf6706.bmp
实验原理图

实物连接图如下图所示:

ec48e5cd-6813-eb11-8da9-e4434bdf6706.jpeg
实物连接图

2. 新建sketch,拷贝如下代码替换自动生成的代码并进行保存。

#include 

3. 连接开发板,设置好对应端口号和开发板类型,进行程序下载。

f548e5cd-6813-eb11-8da9-e4434bdf6706.jpeg
程序下载

5 实验现象

打开串口监视器,波特率设置成与程序中一致的9600,会看到输出时间数据。

1449e5cd-6813-eb11-8da9-e4434bdf6706.gif
实验现象

由于我们的DS1302模块带有纽扣电池来作为备用电池,当模块主供电Vcc掉电后,走时也不会停止。你可以将开发板断电等待一些时间重新上电,再次打开串口监视器可以看到时间并没有停止。



推荐阅读:

Arduino基础入门篇汇总

Arduino提高篇21—RFID模块门禁设计

Processing基本图形绘制

关注公众号「TonyCode」,后台回复提高,获取文中代码资源。

1949e5cd-6813-eb11-8da9-e4434bdf6706.jpeg

后台回复「1024」获取1000G学习资料

2049e5cd-6813-eb11-8da9-e4434bdf6706.png你点的每个赞,我都当成喜欢
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值