物联网AI MicroPython传感器学习 之 RTC时钟模块
学物联网,来万物简单IoT物联网!!
一、产品简介
DS1302 是DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,实时时钟/日历电路提供秒、分、时、日、周、月、年的信息,每月的天数和闰年的天数可自动调整。

DS1302 与单片机之间能简单地采用同步串行的方式进行通信,只需要三个数据线:
(1)RST 复位
(2)I/O 数据线
(3)SCLK串行时钟
引脚定义
- VCC:3.3V
- GND:地
- CLK:时钟输出
- DAT:数据输入输出
- RST:复位引脚
二、技术参数
- 工作电压:2V-5.5V
- 接口简单:GPIO三线接口
- 工作温度:-40°C~85°C
- 低功耗:工作电压2V,电流300nA
- 电源供应:支持主电源和备份电源
- 电路板尺寸:4.4cm*2.3cm
三、软件接口
DS1302(o_clk, o_rst, dio_num) - 创建RTC时钟对象
- 函数原型
ds1302Obj = DS1302(o_clk, o_rst, dio_num)
- 参数说明
| 参数 | 类型 | 必选参数? | 说明 |
|---|---|---|---|
| o_clk | Pin | 是 | 传入Pin对象 |
| o_rst | Pin | 是 | 传入Pin对象 |
| dio_num | Pin num | 是 | 传入Pin Num数 |
- 返回值
DS1302对象成功,返回DS1302对象;DS1302对象创建失败,抛出Exception
- 示例代码-无回调函数
from machine import Pin
import ds1302gpiodionum = 18
gpioclk = Pin(16 , Pin.OUT , Pin.PULL_DOWN)
gpiorst = Pin(17 , Pin.OUT , Pin.PULL_DOWN)
ds1302_obj = ds1302.DS1302(gpioclk,gpiorst,gpiodionum)
print('start init ds1302')
- 输出
start init ds1302
setDatetime() - 设置RTC时钟信息
- 函数功能:
设置RTC时钟信息
- 函数原型:
DS1302.setDatetime(data)
- 参数说明:
data日期格式分别为:年-月-日-时-分-秒-星期
- 返回值:
无
getDatetime() - 获取RTC时钟信息
- 函数功能:
获取RTC时钟信息
- 函数原型:
data = DS1302.getDatetime()
- 参数说明:
无
- 返回值:
成功返回data日期格式分别为:年-月-日-时-分-秒-星期
- 示例:
from machine import Pin
import ds1302gpiodionum = 18
gpioclk = Pin(16 , Pin.OUT , Pin.PULL_DOWN)
gpiorst = Pin(17 , Pin.OUT , Pin.PULL_DOWN)
ds1302_obj = ds1302.DS1302(gpioclk,gpiorst,gpiodionum)
print('start init ds1302')
ds1302_obj.getDatetime([2023, 6, 13 , 0, 0, 30, 1])
print(ds1302_obj.getDatetime())
- 输出
start init ds1302
[2023, 6, 13, 0, 0, 31, 1]
四、接口案例
- 案例代码
import utime # 延时函数在utime库中
from machine import Pin
import ds1302ds1302_obj = Nonedef ds1302_init():gpiodionum = 18gpioclk = Pin(16 , Pin.OUT , Pin.PULL_DOWN)gpiorst = Pin(17 , Pin.OUT , Pin.PULL_DOWN)ds1302_obj = ds1302.DS1302(gpioclk,gpiorst,gpiodionum)print('start init ds1302')if __name__ == '__main__':ds1302_init()ds1302_obj.setDatetime([2023, 6, 13 , 0, 0, 30, 1])while True:print(ds1302_obj.getDatetime())utime.sleep(1)
- 输出
start init ds1302
[2023, 6, 13, 0, 0, 31, 1]
[2023, 6, 13, 0, 0, 32, 1]
[2023, 6, 13, 0, 0, 33, 1]
[2023, 6, 13, 0, 0, 34, 1]
[2023, 6, 13, 0, 0, 35, 1]
[2023, 6, 13, 0, 0, 36, 1]
参考文献及购买链接
[1] RTC时钟模块购买链接
相关文章:
物联网AI MicroPython传感器学习 之 RTC时钟模块
学物联网,来万物简单IoT物联网!! 一、产品简介 DS1302 是DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,实时时钟/日历电路提供秒、分、时、日、周、月、年的信息,每月的天数…...
Mac安装nginx(Homebrew)
查看需要安装 nginx 的信息 brew info nginxDocroot 默认为 /usr/local/var/www 在 /opt/homebrew/etc/nginx/nginx.conf 配置文件中默认端口被配置为8080,从而使 nginx 运行时不需要加 sudo nginx将在 /opt/homebrew//etc/nginx/servers/ 目录中加载所有文件 …...
租用服务器后需要注意什么呢
租用服务器后需要注意什么呢 1、从IDC服务商中接收到服务器时,需要对服务器的各项性能进行测试确认,并做好记录以便对服务器的性能做到心中有数。 2、在服务器租用交接时,要了解服务器的安全设置情况,对服务器安全技术方面不了解…...
pip 时报错 no such option: --bulid-dir 的解决办法
Pycharm 安装第三方库报错及解决方案——no such option: --build-dir Pycharm 安装第三方库报错及解决方案——no such option: --build-dir 最近在学习路径规划相关内容,在运行GitHub上下载例程时缺少“plotly”库,根据网上查到的安装步骤操作&#x…...
[Spring] SpringBoot2 简介(一)—— 基础配置
目录 一、SpringBoot 简介 1、Spring 的缺点 2、SpringBoot 功能 二、SpringBoot 入门案例 1、实现步骤 2、访问服务器 3、入门小结 4、Idea 快速构建 SpringBoot 工程 5、起步依赖无需版本号 6、主启动类的在项目中的位置(*重要*) 三、Sprin…...
【软考】计算机指令系统寻址的几种方式及其速度的比较
速度比较:立即>寄存器>直接> 间接 1. 立即寻址: 直接在指令中给出操作数 2. 寄存器寻址(Register Addressing): 寄存器寻址是指操作数直接存储在寄存器中。指令中的地址字段指定要使用的寄存器编号&#…...
golang笔记17--编译调试go源码
golang笔记17--编译调试go源码 前置条件编译源码在 fmt 包中加自定义函数说明 当前go语言越来越流行了,各大厂商都有加大go工程师的需求,作为go语言的学习者,我们除了要了解如何使用go语言外,也有必要了解一下如何编译、调试go源码…...
DailyPractice.2023.10.22
文章目录 1.[39. 组合总和]2.[22. 括号生成]3.[79. 单词搜索]4.[131. 分割回文串] 1.[39. 组合总和] 39. 组合总和 class Solution { public: vector<vector<int>> res; vector<int> path;void dfs(vector<int>& candidates,int target,int star…...
Go学习第四章——程序流程控制
Go学习第四章——程序流程控制 1 分支结构1.1 单分支1.2 双分支1.3 多分支1.4 switch分支 2 循环结构2.1 for循环2.2 while和dowhile的实现2.3 经典案例——打印金字塔2.4 经典案例——打印九九乘法表 3 跳转控制语句3.1 break3.2 continue3.3 goto3.4 return 流程控制的作用&a…...
自然语言处理---Transformer机制详解之Decoder详解
1 Decoder端的输入解析 1.1 Decoder端的架构 Transformer原始论文中的Decoder模块是由N6个相同的Decoder Block堆叠而成,其中每一个Block是由3个子模块构成,分别是多头self-attention模块,Encoder-Decoder attention模块,前馈全…...
【读书笔记】《软技能》
句子摘抄: 软技能-代码之外的生存指南 “自强不息 孜孜不倦” 强调了坚持不懈、不断奋斗和追求进步的精神。无论遇到多少困难和挫折,都要坚持努力,不断提高自己,不知疲倦地追求目标。这句谚语鼓励人们积极进取,不轻言…...
视频怎么压缩?视频过大这样压缩变小
在日常生活中,我们常常会遇到需要压缩视频的情况,视频压缩不仅可以减小文件大小,方便存储和传输,还可以在保证质量的同时,满足不同的使用需求。那么,如何有效地压缩视频呢? 方法一:嗨…...
蓝桥杯中级题目之组合(c++)
系列文章目录 数位递增数_睡觉觉觉得的博客-CSDN博客拉线开关。_睡觉觉觉得的博客-CSDN博客蓝桥杯中级题目之数字组合(c)_睡觉觉觉得的博客-CSDN博客 文章目录 系列文章目录前言一、个人名片二、描述三、输入输出以及代码示例1.输入2.输出3.代码示例 总…...
julia 笔记:复合类型 struct
1 struct关键字 1.1 声明 struct关键字与复合类型一起引入,后跟一个字段名称的块,可选择使用 :: 运算符注释类型 struct Foobarbaz::Intqux::Float64end 没有类型注释的字段默认为 Any 类型,所以可以包含任何类型的值。 1.2 创建新对象 …...
【JavaEE初阶】 线程池详解与实现
文章目录 🌴线程池的概念🎄标准库中的线程池🍀ThreadPoolExecutor 类🚩corePoolSize与maximumPoolSize🚩keepAliveTime🚩ThreadFactory🚩workQueue🚩RejectedExecutionHandler handl…...
web:[极客大挑战 2019]HardSQL
题目 打开页面显示为 查看源代码没有发现其他的提示信息,随便尝试一下 错误 题目名为hardsql,先来尝试有无sql注入存在 尝试输入单引号输入 显示页面存在注入 这里按照常规思路继续使用order by函数和union select函数进行查询,但是页面没有…...
Android apkanalyzer简介
关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、用法3.1 使用 Android Studio3.1.1…...
PJSIP 2.7.2对G.729的支持,编译bcg729步骤
PJSIP 2.7.2对G.729的支持,编译bcg729步骤 下载BCG729源码升级cmake编译BCG729编译pjsip2.7.2 pjsua测试 下载BCG729源码 git clone git://git.linphone.org/bcg729.git升级cmake 注:编译BCG729要求cmake版本大于3.0,如果版本已经达到要求&…...
(二)Python类型总结
Python 是一种面向对象的语言。这意味着在 Python 中,一切都是对象,包括变量、函数和模块。Python 支持类和对象的概念,通过定义类来创建对象,并使用对象的方法和属性来操作数据。 Python 与 Java 和 C 在数据类型方面有一些相似…...
pojo之vo_dto_po的一些理解
一次扫盲VO、DTO、DO和PO区别、用法、概念~-腾讯云开发者社区-腾讯云 (tencent.com) Java学习笔记——实体类(ENTITY,VO,DTO,BO)_dto继承entity_路言汐的博客-CSDN博客 说清楚PO、DTO、VO、BO与使用场景_业务逻辑层p…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
连锁超市冷库节能解决方案:如何实现超市降本增效
在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

