0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何通过ESP8266/nodemcu和Arduino IDE来获取时间

454398 来源:wv 2019-10-09 14:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:您需要做的事情

对于此项目,您需要做的事情很少:

ESP8266/NODEMCU

使用USB电缆对其进行编程

步骤2:什么是NTP及其工作原理

什么是NTP:NTP代表网络时间协议。这是一个标准的Internet协议(IP),用于通过网络将计算机时钟同步到某些参考。

该协议可用于将所有联网设备同步到协调世界时(UTC)。

NTP设置计算机时钟。对于UTC,客户端可以应用任何本地时区偏移量或夏令时偏移量。这样,无论位置和时区如何,客户端都可以同步到服务器。

它将如何工作:

客户端设备(例如ESP8266)使用端口123上的用户数据报协议(UDP)连接到服务器。然后,客户端将请求包发送到NTP服务器。

响应此请求,NTP服务器发送时间戳包。

时间戳包包含多个信息,例如UNIX时间戳,准确性,延迟

然后客户端可以解析出当前日期和时间值。

步骤3:在Arduino IDE上安装库

在您的Arduino IDE中,转到库管理器并搜索NTP,然后按照我下载的方式下载NTP客户端库,请参考图像以获取更多帮助。

步骤4:编码部分

请复制以下代码并将网络凭据放入代码中,然后

您需要为我设置偏移时间为19800

因为我的时区是utc + 5: 30这样

UTC +5:30 = 5.5 * 60 * 60 = 19800 UTC + 1 = 1 * 60 * 60 = 3600

计算时区并进行编辑,然后上传代码。

#include“ NTPClient.h”

#include“ ESP8266WiFi.h”

#include“ WiFiUdp.h”

const char * ssid =“ ***********”;

const char * password =“ ***********”;

const long utcOffsetInSeconds = 19800;

char daysOfTheWeek [7] [12] = {“ Sunday”,“ Monday” ,“星期二”,“星期三”,“星期四”,“星期五”,“星期六”}};

//定义NTP客户端以获取时间

WiFiUDP ntpUDP;

NTPClient timeClient(ntpUDP,“池。 ntp.org”,utcOffsetInSeconds);

void setup(){ WiFi.begin(ssid,password);

while(WiFi.status()!= WL_CONNECTED){

延迟(500);

Serial.print(“。”);

}

timeClient.begin();

}

void循环(){

timeClient.update();

Serial.print(daysOfTheWeek [timeClient.getDay()]);

Serial.print(“,”);

Serial.print(timeClient.getHours());结果Serial.print( “:”);结果,Serial.print(timeClient.getMinutes());结果,Serial.print( “:”);结果,斯里al.println(timeClient.getSeconds());结果,//Serial.println(timeClient.getFormattedTime());结果,延迟(1000);结果,},点击

第5步:获取时间

将代码上传到Esp8266之后,您可以打开串行监视器,如果一切正常,则可以开始计时串行监视器,因为我可以在串行监视器中获取时间。

因此,通过此项目,您可以连接任何显示器,并使其成为适当的网络时钟。因此,尽享网络时钟的乐趣。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

    195975
  • ESP8266
    +关注

    关注

    51

    文章

    966

    浏览量

    49012
  • NODEMCU
    +关注

    关注

    13

    文章

    289

    浏览量

    23199
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Arduino plc和termux esp

    Arduino plc和termux esp
    的头像 发表于 12-06 06:41 1402次阅读

    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) ESP8285/ESP8266芯片案例

    【应用】国产26MHz频率晶振应用于物联网WIFI物联网模块(串口转WiFi模块),Espressif(乐鑫)ESP8285/ESP8266芯片匹配测试OKESP8285其实是ESP8266的升级版
    的头像 发表于 11-21 15:37 4058次阅读
    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) <b class='flag-5'>ESP</b>8285/<b class='flag-5'>ESP8266</b>芯片案例

    ESP8266ESP32开发板常见的2种下载方式

    ESP32和ESP8266是性价比很高而且使用较为广泛的的Wi-Fi模块,在物联网(IoT)领域的DIY项目中可以首先考虑这2款产品。 两款芯片都属于32位处理器。ESP32是低功耗双核80MHz
    的头像 发表于 11-10 20:30 336次阅读
    <b class='flag-5'>ESP8266</b>和<b class='flag-5'>ESP</b>32开发板常见的2种下载方式

    ESP8266ESP32开发板常见的2种下载方式

    ESP8266全IO口引出,直接下载无需复位! ESP32功能框图 基于arduinoESP32/ESP8266开发环境搭建 1.在
    发表于 10-24 18:04

    esp8266 udp server 端口监听错误的原因?

    1、使用esp8266 at组件+sal socket实现使用udpserver_sample.c demo代码 udp server,通信失败 2、跟踪代码发现 packegs 里面
    发表于 09-23 07:03

    请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗

    请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗
    发表于 09-17 12:06

    ESP8266】进入透传模式后,数据间隔怎么调整,

    01.TCP客户端用ESP8266透传模式发送数据是10ms发送一次,(连续发送) 02.TCP服务器接收到的数据是200ms左右接收一次,数据未丢失,但是更新不及时; 03.通过TCP调试助手已
    发表于 09-15 10:16

    【RA-Eco-RA6M4开发板评测】——4.使用ESP8266获取任意城市的天意预报

    手头上有一个ESP8266,闲置了很久,突然想起来可以和RA6M4开发板连接起来,使用AT指令获取网络天气预报,于是就把它们连接起来。就有了这个帖子。 开始创建工程,打开 RA smart 配置
    发表于 07-23 19:50

    STM32+esp8266连接机智云,上传温湿度数据并控制继电器开关(平台配置、代码生成、代码移植)

    本教程将详细介绍如何将STM32微控制器与ESP8266Wi-Fi模块连接到机智云平台,实现温湿度数据的上传与继电器的远程控制。通过此过程,您将学会如何配置机智云平台,烧录ESP8266固件,移植
    的头像 发表于 07-15 18:54 749次阅读
    STM32+<b class='flag-5'>esp8266</b>连接机智云,上传温湿度数据并控制继电器开关(平台配置、代码生成、代码移植)

    ESP8266烧录与机智云一键配网教程

    ESP8266模块因其低成本和高性能,广泛应用于智能家居和工业自动化等领域。机智云平台提供了一键配网功能,简化了设备的联网过程。本教程将详细介绍如何使用ESP8266进行烧录,并通过机智云实现一键配
    的头像 发表于 05-24 11:04 1562次阅读
    <b class='flag-5'>ESP8266</b>烧录与机智云一键配网教程

    ESP32-CAM带OV2640摄像头视频显示

    本文介绍了如何在Arduino IDE上开发实现ESP32-CAM模块获取实时图像视频
    的头像 发表于 05-23 10:47 1301次阅读
    <b class='flag-5'>ESP</b>32-CAM带OV2640摄像头视频显示

    ESP32S3 Arduino开发指南》第二章 Arduino基础知识

    系列芯片对应要有一个Arduino库,比如乐鑫官方的arduino-esp32库,ST的stm32duino库,只要在Arduino安装这种芯片库便可以使用Arduino的语法在
    发表于 05-13 09:28

    【RA-Eco-RA4M2开发板评测】RA4M2 + ESP8266获取城市天气预报(二)使用串口助手获取天气+破解任意类型AT指令

    :就是用串口进行透传,把串口助手上发送的AT指令通过调试串口接收来发送给ESP8266模块的串口,然后ESP8266会把返回的AT指令响应报文回传给串口调试助手,这样就可以
    发表于 05-04 10:07

    【RA-Eco-RA4M2开发板评测】RA4M2 + ESP8266获取城市天气预报(一)

    的天气预报。 ESP8266是一款WiFi模块,它具有强大的网络连接功能,可以轻松地连接到互联网。将使用ESP8266模块获取天气数据,并将其发送给RA4M2 控制器。
    发表于 05-02 14:28

    零知开源——ESP8266+MPU6050 实现运动姿态检测

    零知ESP8266的I2C通信        在运动姿态检测、机器人平衡控制、VR头戴设备等应用中,MPU6050(三轴加速度计+三轴陀螺仪)是一个常见的姿态传感器。而ESP8266作为一款低功耗
    的头像 发表于 02-20 17:54 2808次阅读
    零知开源——<b class='flag-5'>ESP8266</b>+MPU6050 实现运动姿态检测