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

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

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

1DS1302介绍

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:主电源引脚

管脚配置

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

DS1302模块

2安装驱动库

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

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

安装库

3实验材料

  • Uno R3开发板

  • 配套USB数据线

  • 公对母杜邦线

  • DS1302模块

4实验步骤

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

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

实验原理图如下图所示:

实验原理图

实物连接图如下图所示:

实物连接图

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

#include 

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

程序下载

5实验现象

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

实验现象

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



推荐阅读:

Arduino基础入门篇汇总

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

Processing基本图形绘制

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

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

你点的每个赞,我都当成喜欢

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

  1. arduino uno r3单片机封装图_Arduino和单片机区别,及Arduino入门教程

    关注.星标公众号,不错过精彩内容 素材来源:DF创客社区编辑整理:strongerHuang 搞单片机的读者都应该听说过Arduino,或者用过Arduino,但很多小伙伴还是不清楚究竟什么是Ardu ...

  2. arduino uno r3单片机封装图_Arduino教程 Lesson 1 驱动安装及下载Blink程序

    STEP 1:下载Arduino IDE 打开网页输入网址http://arduino.cc/en/Main/Software Arduino IDE老版本下载链接:http://arduino.cc ...

  3. vc 串口 实时保存_Arduino提高篇22—实时时钟DS1302

    关注.星标公众号,不错过精彩内容 编辑:Tony 来源:公众号TonyCode 很多电子爱好者都热衷制作电子时钟来练手,这些时钟会使用数码管.点阵屏.LCD液晶屏.OLED屏.TFT屏等显示模块,所使 ...

  4. arduino uno r3单片机封装图_单片机控制的OLED简易电子表原型

    在多年以前,我刚开始学单片机的时候,就想着要用51单片机加上0.96英寸的OLED DIY一个电子表,但是可惜当时水平有限,没能实现.现在我早已玩转了STM32,准备向ARM9进发,突然想到了当年的想 ...

  5. Arduino提高篇22—实时时钟DS1302

    很多电子爱好者都热衷制作电子时钟来练手,这些时钟会使用数码管.点阵屏.LCD液晶屏.OLED屏.TFT屏等显示模块,所使用的RTC时钟芯片也各不相同,DS1302.DS3231.DS12C887等.通 ...

  6. arduino uno r3单片机封装图_单片机实例分享,数字电子秤制作方案

    力传感器可以用来测量物体的质量,最常见的应用就是电子秤.而关于力传感器的信号处理,在开发设计中未必是一帆风顺的,为此笔者为大家提供两种以前在项目开发过程中使用过的非常经典的设计方案,通过对比两种方案的 ...

  7. arduino uno r3单片机封装图_【arduino】arduino ISP下载程序方法,用arduino uno给arduino nano下载程序...

    微信关注 "DLGG创客DIY"设为"星标",重磅干货,第一时间送达. 最近用arduino nano,老版的那种miniUSB的接口,得用miniUSB的数据 ...

  8. Arduino UNO R3 (CH340G)基础篇-引脚

    目录 Arduino Uno R3 (CH340G)引脚分配图 Arduino Uno 板载指示灯 Arduino Uno引脚分配 - 电源 Arduino Uno引脚分配 - 数字引脚 数字电平 P ...

  9. 新手必读:Arduino UNO R3教程,原理图,引脚图,详细介绍

    刚入门的学习Arduino的朋友都会有个疑问Arduino UNO R3是什么?为什么要从Arduino UNO R3开始学起? Arduino概述: Arduino是一个开放源码电子原型平台,拥有灵 ...

最新文章

  1. Hi3516a移植SDL+FreeType+SDL_ttf
  2. KPROCESS 结构体属性介绍
  3. leetcode 232. 用栈实现队列 思考分析
  4. Linux中mongodb定时远程备份
  5. php打印文本中随机行内容
  6. Paypal如何实现循环扣款(订阅)?
  7. [项目管理]-第三章:需求分析
  8. 利用宝塔面板部署SSM项目
  9. Apache高并发测试工具JMeter
  10. STM32定时器周期任务函数编写
  11. Pytorch系列(七):猫狗大战3-MobileNet_V3
  12. 操作系统-文件读写过程
  13. Git笔记(三)git commit撤销
  14. 限制电脑使用指定的软件
  15. 有关振动试验夹具的问题
  16. SSM框架之Spring
  17. 【vue-router源码】十二、useRoute、useRouter、useLink源码分析
  18. 数万美金奖励+中美往返差旅+国际周门票!万向区块链黑客马拉松硅谷站开始报名!
  19. iOS RGB 颜色对照表
  20. 鸿蒙系统笔记本产业链,鸿蒙系统笔记本电脑要来了?!

热门文章

  1. java 支付结果主动通知商户_微信支付结果通知,回调的策略
  2. Opera之10周年庆典,免费送注册码
  3. 机器学习算法基本工作流程
  4. php 下载后文件打不开,php 文件下载下来后文件打不开?解决思路
  5. 比Xshell好用100倍,这个号称全世界最好用的终端工具,你一定要知道
  6. 《计算机网络》课程教学大纲
  7. 基于Python的某小区停车数据分析
  8. 跌跌不休的中概股:泡沫终将逝去,核心价值长存
  9. cas22112-78-3/四对甲氧苯基卟啉/分子式:C48H38N4O4/分子量:734.84/密度1.253±0.06 g/cm3(Predicted)/核磁图谱
  10. OpenCV计算机视觉实战(Python)| 10、项目实战:文档扫描OCR识别