在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機(jī)的RTC獲取網(wǎng)絡(luò)時(shí)間

撞上電子 ? 2023-12-23 08:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

理解網(wǎng)絡(luò)同步校準(zhǔn)RTC的原理需要考慮NTP、SNTP、RTC這三個(gè)關(guān)鍵組件的作用和交互。下面詳細(xì)解釋這個(gè)過(guò)程:

1. NTP(Network Time Protocol):

協(xié)議目的:NTP是用于同步計(jì)算機(jī)和設(shè)備時(shí)鐘的協(xié)議。它通過(guò)在網(wǎng)絡(luò)上與時(shí)間服務(wù)器通信,獲取準(zhǔn)確的時(shí)間信息。工作原理:NTP使用一種分層的客戶端-服務(wù)器體系結(jié)構(gòu)。客戶端向服務(wù)器發(fā)起請(qǐng)求,服務(wù)器回應(yīng)包含其本地時(shí)間的響應(yīng)。NTP客戶端使用這些響應(yīng)來(lái)調(diào)整本地時(shí)鐘。

2. SNTP(Simple Network Time Protocol):

輕量級(jí)版本:為了適應(yīng)嵌入式系統(tǒng)和資源受限設(shè)備,SNTP是NTP的簡(jiǎn)化版本。它保留了核心的時(shí)間同步功能。工作方式:SNTP客戶端通過(guò)輪詢或監(jiān)聽(tīng)模式向NTP服務(wù)器發(fā)送請(qǐng)求。服務(wù)器響應(yīng)包含當(dāng)前時(shí)間。SNTP客戶端使用這個(gè)時(shí)間信息來(lái)調(diào)整本地時(shí)鐘。

3. RTC(Real-Time Clock):

硬件設(shè)備:RTC是一種硬件設(shè)備,通常嵌入在計(jì)算機(jī)或嵌入式系統(tǒng)中,用于跟蹤時(shí)間。時(shí)鐘漂移:由于RTC的硬件特性,它的時(shí)鐘可能會(huì)產(chǎn)生漂移,即時(shí)鐘不會(huì)完美地保持準(zhǔn)確。這就需要定期校準(zhǔn)。

4. 示例中的步驟解釋?zhuān)?/h3>

SNTP初始化:在初始化代碼中,配置SNTP模塊,包括指定NTP服務(wù)器地址和設(shè)置SNTP的操作模式。這告訴SNTP模塊應(yīng)該如何獲取時(shí)間信息。

sntp_setoperatingmode(SNTP_OPMODE_POLL);sntp_setservername(0, NTP_SERVER);sntp_init();

SNTP回調(diào)函數(shù):注冊(cè)一個(gè)回調(diào)函數(shù),該函數(shù)在SNTP成功獲取到時(shí)間時(shí)被調(diào)用。在這個(gè)回調(diào)函數(shù)中,將獲取到的UNIX時(shí)間戳轉(zhuǎn)換為RTC的時(shí)間格式,并更RTC。

void sntp_callback(struct timeval *tv) {// Callback function called when SNTP obtains time from the server
RTC_TimeTypeDef sTime; RTC_DateTypeDef sDate;
// Convert UNIX timestamp to RTC structures struct tm *timeinfo = localtime((const time_t*)&tv->tv_sec);
sTime.Hours = timeinfo->tm_hour; sTime.Minutes = timeinfo->tm_min; sTime.Seconds = timeinfo->tm_sec;
sDate.WeekDay = timeinfo->tm_wday; sDate.Month = timeinfo->tm_mon + 1; // tm_mon is 0-indexed sDate.Date = timeinfo->tm_mday; sDate.Year = timeinfo->tm_year + 1900; // tm_year is years since 1900
// Update RTC with obtained time HAL_RTC_SetTime(&hrtc, &sTime, RTC_FORMAT_BIN); HAL_RTC_SetDate(&hrtc, &sDate, RTC_FORMAT_BIN);}

等待同步:在主循環(huán)中,等待SNTP成功獲取時(shí)間。這確保在主代碼開(kāi)始執(zhí)行之前,RTC已經(jīng)校準(zhǔn)。

while (!sntp_get_sync_status()) { HAL_Delay(100);}

主循環(huán):在主循環(huán)中,你可以執(zhí)行其他與應(yīng)用相關(guān)的任務(wù)。此時(shí),RTC已經(jīng)被成功校準(zhǔn)。

while (1) { // Your main code here}


5. 注意事項(xiàng):

定期同步:SNTP模塊會(huì)定期向NTP服務(wù)器發(fā)起請(qǐng)求,以保持本地時(shí)鐘的準(zhǔn)確性。NTP服務(wù)器選擇: 在實(shí)際應(yīng)用中,應(yīng)該選擇可靠性高且準(zhǔn)確性好的NTP服務(wù)器。這可能需要在特定的網(wǎng)絡(luò)環(huán)境中選擇合適的服務(wù)器。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44961

    瀏覽量

    648915
  • RTC
    RTC
    +關(guān)注

    關(guān)注

    2

    文章

    619

    瀏覽量

    68569
  • 網(wǎng)絡(luò)同步器

    關(guān)注

    0

    文章

    6

    瀏覽量

    1657
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    時(shí)間同步獲取時(shí)間

    新手一枚,對(duì)單片機(jī)原理還不是很清楚,求教:TinyOS中的時(shí)間同步首先要獲取本地時(shí)間戳,getStartTime(),想知道它是怎么獲取
    發(fā)表于 03-20 10:37

    如何對(duì)stm8l05x單片機(jī)rtc進(jìn)行初始呢

    關(guān)于stm8l05x系列單片機(jī)rtc初始化問(wèn)題在開(kāi)始項(xiàng)目時(shí),用到的單片機(jī)是stm8l052的單片機(jī),為了降低功耗就要在活躍停止模式和正常運(yùn)行模式之間切換,即每隔一段
    發(fā)表于 12-09 06:28

    如何利用WIFI模塊獲取NTP服務(wù)器中的網(wǎng)絡(luò)時(shí)間

    There are different ways to be brave.勇敢有不同種方式。一、需求在單片機(jī)上實(shí)現(xiàn)RTC的驅(qū)動(dòng),利用WIFI模塊獲取NTP服務(wù)器中的網(wǎng)絡(luò)
    發(fā)表于 01-21 07:32

    單片機(jī)自學(xué)網(wǎng)單片機(jī)網(wǎng)絡(luò)教程

    單片機(jī)自學(xué)網(wǎng)單片機(jī)網(wǎng)絡(luò)教程
    發(fā)表于 03-21 20:33 ?223次下載

    RTC單片機(jī)例程

    飛思卡爾半導(dǎo)體(Freescale Semiconductor)單片機(jī)例程。
    發(fā)表于 02-18 15:44 ?2次下載

    STM32單片機(jī)RTC模塊的分析

    今天給大家介紹一下 STM32 單片機(jī)RTC 模塊和它的后備區(qū)域寄存器,我們?cè)谑褂?51 單片機(jī)的時(shí)候,如果需要用到 RTC 實(shí)時(shí)時(shí)鐘,通常會(huì)使用一顆外置的
    發(fā)表于 11-11 15:51 ?36次下載

    單片機(jī)定時(shí)器中的實(shí)時(shí)時(shí)鐘(RTC)注意事項(xiàng)

    實(shí)時(shí)時(shí)鐘(RTC)是專(zhuān)用于維持一秒時(shí)基的計(jì)時(shí)器。此外,RTC通常用于在軟件或硬件中跟蹤時(shí)鐘時(shí)間和日歷日期。RTC的許多功能是非常專(zhuān)業(yè)的,是維持高精度和非常可靠的操作所必需的。
    的頭像 發(fā)表于 06-29 09:28 ?7815次閱讀
    <b class='flag-5'>單片機(jī)</b>定時(shí)器中的實(shí)時(shí)時(shí)鐘(<b class='flag-5'>RTC</b>)注意事項(xiàng)

    簡(jiǎn)析獲取單片機(jī)代碼運(yùn)行時(shí)間的方法資料下載

    電子發(fā)燒友網(wǎng)為你提供簡(jiǎn)析獲取單片機(jī)代碼運(yùn)行時(shí)間的方法資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-24 08:49 ?12次下載
    簡(jiǎn)析<b class='flag-5'>獲取</b><b class='flag-5'>單片機(jī)</b>代碼運(yùn)行<b class='flag-5'>時(shí)間</b>的方法資料下載

    華大單片機(jī)深度休眠時(shí)RTC與LPUART同時(shí)工作設(shè)置方法

    華大單片機(jī)L系列為其超低功耗(LOW POWER)系列單片機(jī),可以做到低功耗為0.5uA以內(nèi),喚醒時(shí)間4us。其低功耗性能在行業(yè)內(nèi)也是可圈可點(diǎn)。有個(gè)別模塊可以工作在深度休眠模式中,如RTC
    發(fā)表于 10-12 09:14 ?1793次閱讀

    關(guān)于stm8l05x系列單片機(jī)rtc初始化問(wèn)題

    關(guān)于stm8l05x系列單片機(jī)rtc初始化問(wèn)題在開(kāi)始項(xiàng)目時(shí),用到的單片機(jī)是stm8l052的單片機(jī),為了降低功耗就要在活躍停止模式和正常運(yùn)行模式之間切換,即每隔一段
    發(fā)表于 11-26 14:36 ?10次下載
    關(guān)于stm8l05x系列<b class='flag-5'>單片機(jī)</b><b class='flag-5'>rtc</b>初始化問(wèn)題

    華大單片機(jī)深度休眠時(shí)RTC與LPUART同時(shí)工作設(shè)置方法

    華大單片機(jī)L系列為其超低功耗(LOW POWER)系列單片機(jī),可以做到低功耗為0.5uA以內(nèi),喚醒時(shí)間4us。其低功耗性能在行業(yè)內(nèi)也是可圈可點(diǎn)。有個(gè)別模塊可以工作在深度休眠模式中,如RTC
    發(fā)表于 01-12 18:39 ?5次下載
    華大<b class='flag-5'>單片機(jī)</b>深度休眠時(shí)<b class='flag-5'>RTC</b>與LPUART同時(shí)工作設(shè)置方法

    【解決方案】STM32L系列單片機(jī)RTC讀取時(shí)間,一會(huì)兒要走時(shí),一會(huì)兒又不走時(shí)的解決方案

    單片機(jī)STM32L476RG(用的nucleo開(kāi)發(fā)板),調(diào)試RTC的過(guò)程中遇到了HAL_RTC_GetTime函數(shù)讀取的時(shí)間一會(huì)兒走,一會(huì)兒不走的問(wèn)題,如圖所示。要等很長(zhǎng)一段
    發(fā)表于 01-17 09:30 ?3次下載
    【解決方案】STM32L系列<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>RTC</b>讀取<b class='flag-5'>時(shí)間</b>,一會(huì)兒要走時(shí),一會(huì)兒又不走時(shí)的解決方案

    實(shí)用 | 獲取單片機(jī)代碼運(yùn)行時(shí)間的方法

    單片機(jī)編程者需要知道自己的程序需要花費(fèi)多長(zhǎng)時(shí)間、while周期是多少、delay延時(shí)是否真如函數(shù)功能描述那樣精確延時(shí)。
    發(fā)表于 02-08 16:50 ?0次下載
    實(shí)用 | <b class='flag-5'>獲取</b><b class='flag-5'>單片機(jī)</b>代碼運(yùn)行<b class='flag-5'>時(shí)間</b>的方法

    單片機(jī)RTC的定義及功能

    你是否聽(tīng)說(shuō)過(guò)rtc,但是不知道rtc是什么。其實(shí)rtc就在我們身邊,周?chē)碾娮赢a(chǎn)品中或許都安裝了rtc,它可以提供時(shí)間
    的頭像 發(fā)表于 08-15 11:48 ?1.3w次閱讀

    基于STM32單片機(jī)RTC實(shí)時(shí)時(shí)鐘使用庫(kù)文件設(shè)計(jì)

    基于STM32單片機(jī)RTC實(shí)時(shí)時(shí)鐘使用庫(kù)文件設(shè)計(jì)源代碼
    發(fā)表于 04-26 14:28 ?5次下載
    主站蜘蛛池模板: 天天操天天操天天射 | 精品四虎免费观看国产高清午夜 | 午夜视频在线 | 中文在线天堂网 | 国产成人精品曰本亚洲 | 理论片免费午夜 | 好大好硬好深好爽想要免费视频 | 免费性bbbb台湾 | 国产网站免费看 | 欧美午夜色大片在线观看免费 | 亚洲国产影视 | 97射射| 亚洲黄色高清视频 | 插插插叉叉叉 | 精品国产欧美一区二区最新 | 日韩草逼| 人人人人澡 | 一级片aaa| 97理论三级九七午夜在线观看 | 国产高清免费在线观看 | 天堂8资源8在线 | 国产精品网址你懂的 | 直接在线观看的三级网址 | 午夜剧场操一操 | 六月综合网 | 成人最新午夜免费视频 | 最近国语视频免费观看在线播放 | 亚洲一卡2卡4卡5卡6卡在线99 | 日本三级免费看 | 色吧在线视频在线观看 | 午夜在线视频网站 | 在线视频三区 | 婷婷亚洲综合五月天在线 | aa在线免费观看 | 在线精品一区二区三区 | 三浦理惠子中文在 | 日本人zzzwww色视频 | 奇米四色777亚洲图 奇米影视四色首页手机在线 | 天天se天天cao综合网蜜芽 | 色综合久久一区二区三区 | 不卡视频一区二区 |