色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何利用ESP8266實現智能手表的設計

科技觀察員 ? 來源:Hans-Günther Nusseck ? 作者:Hans-Günther Nusseck ? 2022-04-01 15:29 ? 次閱讀

這是一款簡單的ESP8266手表,具有多個位置的 WiFi 連接、NTP 時間服務器同步和比較功能。

背景

你可以買一塊現成的智能手表,它有很多花哨的功能,但實質上你并沒有改變任何東西。或者你可以買一個類似蒸汽朋克的開發工具包手表,自己編寫你感興趣的功能。

這款手表實際上不是手表,而是一個設計為掃描 WiFi 網絡、阻止選定連接、創建數十個網絡和混淆 WiFi 掃描儀的設備。之前有人開發了類似的軟件,里面有很多有趣的功能,但就是沒有真正的時間顯示。造成這種情況的一個原因可能是該設備不包含實時時鐘 (RTC)。這意味著每次重新啟動設備時都會丟失時間設置。但是該設備有一個 WiFi 芯片,因此只需要使用正確的代碼之后,您就可以從時間服務器獲取時間了。

NTP

我對 WiFi 攻擊不感興趣,但對如何實現時間服務器功能感興趣。網絡時間協議(NTP) 是一種基于網絡的時鐘同步協議。espressive ESP SDK提供了訪問 NTP 服務器和輕松轉換時間的功能。讓您無需擔心 UDP 連接和數據交換。只需包含庫Time.h ,定義 NTP 服務器名稱,從服務器創建時間變量,配置通信并獲取時間:

pYYBAGJGqbyANhS1AACRbOvZZBY337.png

通過這種簡單的方式,您可以從時間服務器獲取當前時間(以秒為單位)。此值(NTP 時間戳)編碼為自 1900 年 1 月 1 日 00:00:00 以來的秒數,也稱為“紀元”。例如,值1587775785對應于以下日期:Saturday, 25. April 2020 00:49:45

要將 epoch 值轉換為可管理的值,庫中提供了函數localtime_r() 。此函數將紀元轉換為結構,以便您可以直接處理分鐘、秒、小時和日期值:

// the tm structure contains the following data:
//
// int tm_sec; --> 0 .. 59
// int tm_min; --> 0 .. 59
// int tm_hour; --> 0 .. 23
// int tm_mday; --> 1 .. 31
// int tm_mon; --> 0 .. 11 (0 = January)
// int tm_year; --> years since 1900
// int tm_wday; --> 0 .. 6 (0 = Sunday)
// int tm_yday; --> 0 .. 365
// int tm_isdst; --> Daylight Saving Time flag
//
tm dateTime;

void loop() {
// time() fetch the actual time from the NTP server
// and store it as epoch into the variable
time(&NTPTime);
// localtime_r() converts the epoch into the tm-structure
localtime_r(&NTPTime, &dateTime);
Serial.print(dateTime.tm_hour);
Serial.print(':');
Serial.print(dateTime.tm_min);
Serial.print(':');
Serial.println(dateTime.tm_sec);
delay(1000);
}

注意:月份 ( tm_mon ) 和星期幾 ( tm_wday ) 的值:它們從 0 開始,而不是從 1!要獲得正確的年份值,您只需將值tm_year添加 1900 。

手表

為了保持代碼簡單、干凈和可讀,我為手表編寫了一個類,它封裝了 LED、按鈕和顯示屏。Watch-object 需要在開始時進行初始化。然后您可以輕松訪問 LED、顯示屏或按鈕,而無需任何進一步的初始化。

poYBAGJGqbWAfbCAAAIJR_ySfu4099.png

該庫需要以下庫:

poYBAGJGqbCAY02rAADBMIQ59AQ650.png

確保它們已安裝。最簡單的方法是在 Platformio.ini 文件中輸入 lib 依賴項:

pYYBAGJGqayAPFHpAAB1_fadvEA020.png

還可以看到,我選擇了標準的espressif8266平臺和nodemcuv2作為板定義,這可以使上傳工作正常,無需任何進一步的調整。

時間漂移

由于手表沒有實時時鐘(RTC),因此必須使用處理器時鐘來計算時間。sysTime_now ()函數返回自系統啟動以來經過的秒數。該值也是一個紀元,因此可以使用函數localtime_r()進行轉換。但這還不是全部:您還可以簡單地為其添加一個紀元并獲得一個新的時間值。這正是我在代碼中所做的,以使系統時間與 NTP 時間同步。啟動時系統時間為零,即 01.01.1970。按下導航按鈕,從時間服務器檢索當前時間信息。然后將此信息添加到系統時間。因此,系統時間具有當前時間,并且每次調用該函數sysTime_now()實際時間被計數。再次向上按下按鈕可從時間服務器檢索當前時間值。但是現在當前系統時間值只與時間服務器值進行比較。時間本身沒有改變。如果處理器時鐘非常準確,那么即使在較長一段時間內也不會出現可測量的偏差。

時區

時間服務器的返回值始終為 UTC。但是有一種非常簡單的方法可以自動將時間轉換為所需的時區:您只需通過設置TZ環境變量來指定時區:

poYBAGJGqaaALuPFAABdzHSYs_8403.png

現在,無論何時調用localtime_r()函數,值都會根據配置的時區自動轉換。時區字符串看起來很奇怪,但這里有一個時區字符串列表,可以簡單地復制您需要的字符串。最理想的情況是在字符串中也定義了夏令時,因此切換的同時也會自動變換。唯一需要注意的是電池始終處于充電狀態。根據使用情況,它可能會持續大約 7 小時左右。

其他版本

該固件“開箱即用”也適用于舊版手表和“DSTIKE WiFi Deauther OLED V6”板:

pYYBAGJGqaOAaC_oAAYvHI7yjQc143.png

故障排除

例:使用最新版本的顯示驅動程序時,屏幕不再工作,并且屏幕顯示黑色。

為此,必須編輯 platformio.ini 文件中的 lib-deps:

pYYBAGJGqZ-ATiqzAAAypzeplE8714.png

然后用這些命令

poYBAGJGqZqAU1aiAAAdjiVBO4U739.png
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • WIFI
    +關注

    關注

    81

    文章

    5306

    瀏覽量

    204362
  • 智能手表
    +關注

    關注

    36

    文章

    3297

    瀏覽量

    114530
  • ESP8266
    +關注

    關注

    50

    文章

    962

    瀏覽量

    45224
收藏 人收藏

    評論

    相關推薦

    ESP8266系列模塊選型

    ESP8266系列模塊選型ESP8266 ESP-01 ESO-02
    發表于 01-05 17:34 ?37次下載

    使用esp8266實現STM32聯網(最簡單USART方法)

    到電腦上的java程序 這一篇 esp8266與STM32連接,電腦通過STM32配置esp8266實現聯網發送數據具體流程如下圖 2= esp8266怎么和STM32連接(引腳連
    發表于 11-22 11:51 ?1.3w次閱讀

    esp8266 at指令集詳解

    ESP8266可廣泛應用于智能電網、智能交通、智能家具、手持設備、工業控制等領域。本文介紹了esp8266 at指令集,以及
    發表于 12-08 13:52 ?14.4w次閱讀
    <b class='flag-5'>esp8266</b> at指令集詳解

    使用ESP8266實現智能杯墊的設計資料免費下載

    本文檔的主要內容詳細介紹的是使用ESP8266實現智能杯墊的設計原理圖和源程序文件免費下載。
    發表于 02-24 08:00 ?1次下載

    ESP8266

    優點1.性能穩定ESP8266EX 的工作溫度范圍大,且能夠保持穩定的性能,能適應各種操作環境。2.低功耗ESP8266EX 專為移動設備、可穿戴電子產品和物聯網應用而設計,通過多項專有技術實現
    發表于 11-07 10:36 ?26次下載
    <b class='flag-5'>ESP8266</b>

    基于ESp8266智能插座

    基于ESp8266智能插座基于ESP8266+STM32F1的智慧生活套件文章目錄基于ESP8266+STM32F1的智慧生活套件一、項目背景二、項目分析三、產品框架四、設計思路五、
    發表于 12-01 09:21 ?32次下載
    基于<b class='flag-5'>ESp8266</b>的<b class='flag-5'>智能</b>插座

    利用ESP8266模塊實現遠程用手機控制開關

    利用ESP8266模塊實現遠程用手機控制開關文章目錄前言一、ESP8266是什么?二、使用步驟1.密鑰與核心庫2.連接Wi-Fi3.手機端控制函數總結插入鏈接與圖片列表前言隨著萬物聯網
    發表于 12-04 13:06 ?16次下載
    <b class='flag-5'>利用</b><b class='flag-5'>ESP8266</b>模塊<b class='flag-5'>實現</b>遠程用手機控制開關

    利用esp8266接入小愛同學,實現智能臺燈的改造物聯網初識

    硬件準備1.繼電器WIFI智能插座模塊2.USB轉ESP8266WIFI模塊3.ESP8266模塊軟件環境搭建1.小愛同學app,或者米家app,點燈 Blinker app2.ArdunioIDE
    發表于 01-04 10:44 ?17次下載
    <b class='flag-5'>利用</b><b class='flag-5'>esp8266</b>接入小愛同學,<b class='flag-5'>實現</b><b class='flag-5'>智能</b>臺燈的改造物聯網初識

    ESP8266使用教程之初識

    串口與MCU通信,內置 TCP/IP 協議棧,實現串口與 WiFi 之間的裝換。? 通過正點原子的 ATK-ESP8266,傳統的串口設備只需要通過串口配置,就可以通過網絡傳輸自己的數據。二.引...
    發表于 01-04 18:59 ?80次下載
    <b class='flag-5'>ESP8266</b>使用教程之初識

    ESP8266智能手表設計分享

    電子發燒友網站提供《ESP8266智能手表設計分享.zip》資料免費下載
    發表于 08-09 10:49 ?1次下載
    <b class='flag-5'>ESP8266</b><b class='flag-5'>智能手表</b>設計分享

    基于ESP8266的WiFi車

    該項目使用 NodeMcu esp8266 和 Blynk 由您的智能手機控制的最簡單的 wifi 汽車。
    發表于 12-08 10:15 ?10次下載

    使用智能手機控制Esp8266情緒燈

    電子發燒友網站提供《使用智能手機控制Esp8266情緒燈.zip》資料免費下載
    發表于 02-07 09:22 ?1次下載
    使用<b class='flag-5'>智能手</b>機控制<b class='flag-5'>Esp8266</b>情緒燈

    ESP8266硬件

    目前市面上有關ESP8266模組有很多的種類,但是都是使用的樂鑫公司開發的ESP8266的wifi模組,而且種類也很多。
    的頭像 發表于 02-10 14:25 ?4879次閱讀
    <b class='flag-5'>ESP8266</b>硬件

    ESP8266接入小愛同學—智能LED臺燈或風扇(利用繼電器)

    的具體配置可參考 先說一下本次預期想要實現的功能: 1.利用WiFiManager庫實現自動配網,亦能夠滿足在不同WiFi下可以不用更改程序即可鏈接不同的WiFi 2.利用
    發表于 05-04 11:37 ?1次下載
    <b class='flag-5'>ESP8266</b>接入小愛同學—<b class='flag-5'>智能</b>LED臺燈或風扇(<b class='flag-5'>利用</b>繼電器)

    ESP8266初次如何實現無線通信(基于電腦與ESP8266)

    一.需要的軟件及硬件 1.軟件 2.硬件 二.ESP8266的使用 .ESP8266的介紹 2.ESP8266進行初始AT指令的配置步驟 三.所用軟件安裝分享 ESP8266
    發表于 05-30 09:53 ?28次下載
    <b class='flag-5'>ESP8266</b>初次如何<b class='flag-5'>實現</b>無線通信(基于電腦與<b class='flag-5'>ESP8266</b>)
    主站蜘蛛池模板: 亚洲免费精品| 漂亮的保姆6在线观看中文| 精品久久久久中文字幕| 男人插曲女人的视频| 无码AV精品一区二区三区| 狠狠啪 日日啪| 女女破视频在线观看| 亚洲国产欧美在线人成aaaa20| 99久女女精品视频在线观看| 娇小亚裔被两个黑人| 色情内射少妇兽交| 2018久久视频在线视频观看| 国产毛A片久久久久久无码| 亲女乱h文小兰第一次| 最近2019年日本中文免费字幕| 国语自产一区第二页| 精品久久久久久久99热| 日韩免费一区| av在线色| 内射少妇三洞齐开| 2021国产精品视频| 久久久久亚洲日日精品| 亚洲免费无码中文在线| 国产精品久久久精品日日| 青青青草国产| 99成人在线| 美国CERANETWORK超清| 有码在线播放| 久久精品18| 一区二区不卡在线视频| 好色女博士| 亚洲在线中文无码首页| 黃色带三级a级| 亚洲 欧美 中文 日韩 视频| 国产成人 免费观看| 天天看学生视频| 国产精品俺来也在线观看| 色欲人妻无码AV专区| 国产成人免费在线观看| 午夜不卡av免费| 国产亚洲精品线观看不卡|