RTC时钟电子积木
Contents
8. RTC时钟电子积木#
8.1. 简介#
OCTOPUS实时时钟是一个时钟模块,可以通过使用DS1307时钟芯片实现年、月、日、小时的计数。
8.2. 特性#
该芯片具有很多优点、低电压、具有56字节大小的非易失性RAM时钟日历。
完整的BCD码实时时钟芯片,地址和数据通过双线双向串行总线传输、提供秒、分、小时等信息、自动调整每个月的天数。
更令人惊讶的是,芯片也具有闰年补偿功能。
芯片内置电源检测电路,支持掉电检测和电池切换功能。
8.3. 技术规格#
项目 | 参数 |
---|---|
SKU | EF04005 |
接口 | 双线串行接口(IIC通信) |
输出 | 可编程方波输出 |
检测 | 自动断电检测和开关电路 |
功耗 | 在备用电池模式下,功耗小于500nA |
工业工作温度 | -40至80℃ |
电源需求 | 3v-5v |
接口类型 | 数字 |
引脚定义 | 1-GND 2-VCC 3-SCK 4-SDA 5-RST |
8.4. 快速上手#
所需器材及连接示意图#
如图所示,连接至iic接口。
以sensor:bit为例
添加Package#
在MakeCode的代码抽屉中点击高级,查看更多代码选项。
点击“扩展”,在弹出的对话框中搜索“iot”,下载iot代码库。
如图所示编写程序#
当开机时设置秒钟数为“10”,循环显示秒。每60秒循环一次。
参考程序#
https://makecode.microbit.org/_4aj9yohK5Rm1
你也可以通过以下网页直接下载程序,下载完成后即可开始运行程序。
---结果#
micro:bit 点阵屏上显示当前秒钟数,每60秒循环一次。
8.5. Python 编程#
步骤 1#
下载压缩包并解压Octopus_MicroPython-master 打开Python editor
为了给RTC时钟模块编程,我们需要添加ds1307.py。点击Load/Save,然后点击Show Files(1)下拉菜单,再点击Add file在本地找到下载并解压完成的Octopus_MicroPython-master文件夹,从中选择ds1307.py添加进来。
步骤 2#
参考程序#
from microbit import *
from ds1307 import *
RTC = DS1307()
RTC.start()
while 1:
if button_a.is_pressed():
RTC.Hour(12)
RTC.Minute(30)
RTC.Second(45)
elif button_b.is_pressed():
display.scroll(RTC.Second())
结果#
通过LED矩阵显示RTC时钟返回的秒数。