【史上最全面arduino esp32教程】ESP32Time时间库

文章目录

  • 前言
  • 一、安装ESP32Time库
  • 二、ESP32Time使用
    • 2.1 基础使用
      • 构造ESP32Time对象
      • 设置当前时间
      • 获取当前时间结构体
    • 2.2 其他函数
  • 总结


前言

欢迎来到这篇Arduino ESP32教程!在本教程中,我们将介绍ESP32Time时间库的使用。时间在许多项目中起着重要的作用,尤其是在物联网应用中。ESP32Time是一个功能强大、易于使用的库,它提供了对时间和日期的处理功能,可以帮助您在ESP32开发中轻松管理时间。无论是实时时钟还是定时事件,ESP32Time都可以满足您的需求。接下来,让我们深入研究ESP32Time库的功能和用法吧!


一、安装ESP32Time库

你只需要进行下面操作即可安装ESP32Time库
在这里插入图片描述

二、ESP32Time使用

2.1 基础使用

构造ESP32Time对象

如果仅仅是基础使用,我们不需要使用有参数的构造函数,只需要使用无参即可:

ESP32Time();

设置当前时间

我们可以使用下面两个函数来设置当前时间:

void setTime(int sc, int mn, int hr, int dy, int mt, int yr, int ms = 0);
void setTimeStruct(tm t);

我们可以去设置他的具体时间,我们也可以使用tm结构体去设置时间

获取当前时间结构体

我们可以使用下面这个函数来获取时间结构体,结构体中的数据为当前时间:

tm getTimeStruct();

2.2 其他函数

String getTime(String format)
作用:获取当前时间的字符串表示,可以根据指定的格式进行格式化。
参数:
format时间格式标志符号:
HH:24 小时制的小时(00-23)
H:24 小时制的小时(0-23)
hh:12 小时制的小时(01-12)
h:12 小时制的小时(1-12)
mm:分钟(00-59)
ss:秒(00-59)
a:上午或下午的标记(AM/PM)
您可以使用任意字符来分隔时间格式标志符号,例如:HH:mm:ss。
您可以在格式字符串中添加其他文本,例如:现在是 HH:mm。
如果要显示日期,可以在格式字符串中添加日期相关标志符号,例如:YYYY-MM-DD HH:mm:ss。

返回值:返回一个String类型的值,表示格式化后的时间字符串。

String getTime()
作用:获取当前时间的字符串表示,默认以"HH:mm:ss"的格式返回。
返回值:返回一个String类型的值,表示当前时间的字符串表示。

String getDateTime(bool mode = false)
作用:获取当前日期和时间的字符串表示。
参数:
mode:一个布尔值参数,表示是否使用12小时制。默认为false,表示使用24小时制。
返回值:返回一个String类型的值,表示当前日期和时间的字符串表示。

String getTimeDate(bool mode = false)
作用:获取当前时间和日期的字符串表示。
参数:
mode:一个布尔值参数,表示是否使用12小时制。默认为false,表示使用24小时制。
返回值:返回一个String类型的值,表示当前时间和日期的字符串表示。

String getDate(bool mode = false)
作用:获取当前日期的字符串表示。
参数:
mode:一个布尔值参数,表示日期的格式。默认为false,表示使用年-月-日(YYYY-MM-DD)格式。
返回值:返回一个String类型的值,表示当前日期的字符串表示。

String getAmPm(bool lowercase = false)
作用:获取当前小时的AM/PM表示。
参数:
lowercase:一个布尔值参数,表示是否返回小写的AM/PM。默认为false,表示返回大写的AM/PM。
返回值:返回一个String类型的值,表示当前小时的AM/PM表示。

unsigned long getEpoch():
作用:获取当前时间的时间戳(Epoch时间),以秒为单位。
返回值:返回一个unsigned long类型的值,表示当前时间的时间戳。

unsigned long getMillis():
作用:获取自开启计时器以来的毫秒数。
返回值:返回一个unsigned long类型的值,表示自开启计时器以来经过的毫秒数。

unsigned long getMicros():
作用:获取自开启计时器以来的微秒数。
返回值:返回一个unsigned long类型的值,表示自开启计时器以来经过的微秒数。

int getSecond():
作用:获取当前时间的秒数。
返回值:返回一个int类型的值,表示当前时间的秒数。

int getMinute():
作用:获取当前时间的分钟数.
返回值:返回一个int类型的值,表示当前时间的分钟数。

int getHour(bool mode = false):
作用:获取当前时间的小时数。
参数:
mode:一个布尔值参数,表示是否使用12小时制。默认为false,表示使用24小时制。
返回值:返回一个int类型的值,表示当前时间的小时数

int getDay():
作用:获取当前日期的天数。
返回值:返回一个int类型的值,表示当前日期的天数。

int getDayofWeek():
作用:获取当前日期所在的星期几。
返回值:返回一个int类型的值,表示当前日期所在的星期几。

int getDayofYear():
作用:获取当前日期所在的年份中的天数。
返回值:返回一个int类型的值,表示当前日期所在的年份中的天数。

int getMonth():
作用:获取当前日期的月份。
返回值:返回一个int类型的值,表示当前日期的月份。

int getYear():
作用:获取当前日期的年份。
返回值:返回一个int类型的值,表示当前日期的年份。


总结

在本教程中,我们详细介绍了ESP32Time时间库的使用。该库提供了丰富的功能,包括实时时钟(RTC)管理、定时器事件处理、时间戳转换等。通过使用ESP32Time,您可以在ESP32项目中方便地管理时间和日期,实现各种时间相关的功能。我们探讨了如何初始化时间库、同步网络时间、获取当前时间以及使用定时器等操作。无论您是开发智能家居应用、物联网设备还是其他项目,ESP32Time都可以帮助您轻松处理时间问题。希望本教程对您有所帮助,祝您在ESP32开发中取得成功!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/764802.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于SSM的手机商城管理系统+数据库+论文+免费远程调试

项目介绍: 基于SSM的手机商城管理系统。Javaee项目,采用M(model)V(view)C(controller)三层体系结构,通过Spring SpringMvc Mybatis JspBootstrapLayui来实现。MySQL数据库作为系统…

html第一次作业

常用标签 0, 骨架&#xff08;&#xff01;tap&#xff09; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><t…

两款新春烟花代码-烟花模拟器网站源码

安装教程 1下载源码 2上传主机 3解析域名到主机 4绑定域名 5解压源码 6打开域名 源码免费下载地址 抄笔记 chaobiji.cn

GTC AI 2024:人工智能的未来展望

在2024年GTC AI大会上&#xff0c;NVIDIA推出了多项创新技术和产品&#xff0c;涵盖了从新一代GPU平台到AI超级计算和量子计算云服务等多个领域。 新一代GPU平台 Blackwell Blackwell是为生成式AI时代设计的新一代GPU平台&#xff0c;与前代相比&#xff0c;在FP8训练性能上提…

Python之Web开发中级教程----ubuntu安装MySQL

Python之Web开发中级教程----ubuntu安装MySQL 进入/opt目录 cd /opt 更新软件源 sudo apt-get upgrade sudo apt-get update 3、安装Mysql server sudo apt-get install mysql-server 4、启动Mysql service mysql start 5、确认Mysql的状态 service mysql status 6、安全设…

硬核分享|AI语音识别转文字与自动生成字幕

硬核分享|AI语音识别转文字与自动生成字幕_哔哩哔哩_bilibili 在现代快节奏的生活中&#xff0c;语音转文字工具成为了我们工作和学习中的得力助手。它能够将我们说出的话语迅速转化为文字或者将语音视频自动生成字幕&#xff0c;提供便捷和高效。 语音转文字转字幕工具是一种…

Linux信号处理

Linux信号处理 什么是linux信号 本质是一种通知机制&#xff0c;用户 or 操作系统通过发送一定的信号&#xff0c;通知进程&#xff0c;某些事情已经发生&#xff0c;你可以在后续进行处理。 信号产生是随机的&#xff0c;进程可能正在忙自己的事情&#xff0c;所以&#xf…

30V转5V 1A 30降压12V 1A DCDC低电压恒压IC 车充芯片-H4110

30V转5V和30V转12V的DCDC低电压恒压IC&#xff08;也称为降压恒压芯片或车充芯片&#xff09;工作原理如下&#xff1a; 输入电压识别&#xff1a;芯片首先识别输入的30V电压&#xff0c;并准备进行转换。 PWM控制&#xff1a;芯片内部的控制逻辑生成PWM信号。这个信号用于控制…

如何使用 Elasticsearch 作为向量数据库

在今天的文章中&#xff0c;我们将很快地通过 Docker 来快速地设置 Elasticsearch 及 Kibana&#xff0c;并设置 Elasticsearch 为向量搜索。 拉取 Docker 镜像 docker pull docker.elastic.co/elasticsearch/elasticsearch:8.12.2 docker pull docker.elastic.co/kibana/kiba…

Docker构建多平台(x86,arm64)构架镜像

这里写自定义目录标题 背景配置buildx开启experimental重启检查 打包 背景 docker镜像需要支持不同平台架构 配置buildx 开启experimental vi /etc/docker/daemon.json {"experimental": true }或者 重启检查 # 验证buildx版本 docker buildx version# 重启do…

基于Spring Boot+Vue的高校办公室行政事务管理系统

末尾获取源码作者介绍&#xff1a;大家好&#xff0c;我是墨韵&#xff0c;本人4年开发经验&#xff0c;专注定制项目开发 更多项目&#xff1a;CSDN主页YAML墨韵 学如逆水行舟&#xff0c;不进则退。学习如赶路&#xff0c;不能慢一步。 目录 一、项目简介 二、开发技术与环…

OpenCV 介绍使用

返回&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇:OpenCV4.9.0开源计算机视觉库使用简要说明 下一篇: OpenCV&#xff08;开源计算机视觉库&#xff1a;http://opencv.org&#xff09;是一个开源库&#xff0c;包含数百种计算机视觉算法。…

vCenter 6.5为虚拟机添加GPU直通

参考&#xff1a;Dell文档 如何为GPU直通启用VMware虚拟机。 | Dell 中国

lvs+keepalived+nginx实现高可用

主机&#xff1a;192.168.199.132 备机&#xff1a;192.168.199.133 真实服务器1&#xff1a;192.168.199.134 真实服务器2&#xff1a;192.168.199.135 问题&#xff1a; 防火墙没关 132配置ipvsadm进行dr模式 132配置keepalived.conf 133配置ipvsadm进行dr模式 133配置ke…

手机网页关键词视频爬虫采集软件可导出视频分享链接|视频无水印批量下载工具

全新音视频批量下载工具&#xff0c;为您解放视频管理烦恼&#xff01; 现如今&#xff0c;音上涌现出大量精彩的视频内容&#xff0c;但是要想高效地获取、管理和分享这些视频却是一件颇具挑战的事情。针对这一难题&#xff0c;我们自主研发了全新的音视频批量下载工具&#x…

CISP 4.2备考之《安全支撑技术》知识点总结

文章目录 第一节 密码技术第二节 标识和身份鉴别技术第三节 访问控制技术 第一节 密码技术 密码学发展阶段&#xff1a;古典、近代、现代和公钥密码学及特点。 密码系统组成&#xff1a;明文、加密、密钥、解密、密文。 柯克霍夫原则&#xff1a;密钥保密&#xff0c;算法公开…

文章解读与仿真程序复现思路——中国电机工程学报EI\CSCD\北大核心《基于合作博弈与矩阵半张量积的多园区综合能源系统协同优化运行方法》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

Day42:WEB攻防-PHP应用MYSQL架构SQL注入跨库查询文件读写权限操作

目录 PHP-MYSQL-Web组成架构 PHP-MYSQL-SQL常规查询 手工注入 PHP-MYSQL-SQL跨库查询 跨库注入 PHP-MYSQL-SQL文件读写 知识点&#xff1a; 1、PHP-MYSQL-SQL注入-常规查询 2、PHP-MYSQL-SQL注入-跨库查询 3、PHP-MYSQL-SQL注入-文件读写 MYSQL注入&#xff1a;&#xff…

什么是PLC物联网关?PLC物联网关有哪些功能?

在数字化浪潮的推动下&#xff0c;工业物联网&#xff08;IIoT&#xff09;正逐步成为推动制造业智能化转型的关键力量。而在这一变革中&#xff0c;PLC物联网关扮演着至关重要的角色。今天&#xff0c;就让我们一起走进PLC物联网关的世界&#xff0c;了解它的定义、功能&#…

计算机组成原理 例题集

补码的规格化表示是小数点后一位与符号位不同&#xff1a;数符为0,这个数就是正数,正数补码就是其本身,其最高有效位(阶码使用标准移码的话规格化后尾数最高有效位就是小数点后第一位)必定为1,数符0和最高有效位的1相异.数符为1,这个数就是个负数,求负数的补码有一步叫按位取反…