在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁 > 博客 > 合宙低功耗4G模組:Air780E內(nèi)部硬件看門狗(wdt)示例

            合宙低功耗4G模組:Air780E內(nèi)部硬件看門狗(wdt)示例

            發(fā)布人:13673998452 時(shí)間:2025-01-25 來源:工程師 發(fā)布文章

            一、看門狗電路介紹

            看門狗(Watch Dog Timer,WDT)是一種監(jiān)控電路,主要應(yīng)用于嵌入式系統(tǒng),目的是為了提高系統(tǒng)的可靠性和穩(wěn)定性。在看門狗電路的幫助下,當(dāng)系統(tǒng)出現(xiàn)異常,如程序跑飛或死循環(huán)時(shí),能夠自動(dòng)復(fù)位并重新啟動(dòng)系統(tǒng)。


            1.1 看門狗的工作原理

            看門狗電路通常包括一個(gè)定時(shí)器、一個(gè)喂狗信號和一個(gè)復(fù)位(Reset)輸出。在正常的系統(tǒng)運(yùn)行過程中,主控制器(MCU)會定期向喂狗信號發(fā)送一個(gè)脈沖,以“喂”看門狗,防止其計(jì)時(shí)到達(dá)預(yù)設(shè)值。如果 MCU 由于某種原因未能在規(guī)定時(shí)間內(nèi)喂狗,看門狗定時(shí)器將會計(jì)滿并輸出一個(gè)復(fù)位信號,將 MCU 復(fù)位。


            1.2 看門狗的應(yīng)用架構(gòu)

            在實(shí)際應(yīng)用中,看門狗芯片通常連接到 MCU 的一個(gè) GPIO 端口。MCU 在其正常運(yùn)行期間會定期向該端口寫入一個(gè)高電平或低電平信號,以此告訴看門狗它仍然正常工作。如果 MCU 未能按時(shí)發(fā)出信號,看門狗將觸發(fā)復(fù)位操作。


            1.3 看門狗芯片的功能和硬件

            某些看門狗芯片如 TPV6823 具有多個(gè)引腳,包括供電引腳(VCC)、喂狗信號引腳(WDI)、復(fù)位輸出引腳(RESETn)和手動(dòng)復(fù)位輸入引腳(MRn)。這些引腳提供了多種復(fù)位方式和時(shí)間設(shè)置,以適應(yīng)不同的應(yīng)用需求。


            1.4 看門狗的定時(shí)時(shí)間

            看門狗的定時(shí)時(shí)間通常需要保持在一個(gè)相對較長的周期,例如 200 毫秒左右。這樣的設(shè)置是為了確保在正常運(yùn)行中,即使 MCU 由于干擾而未能及時(shí)喂狗,看門狗也不會立即復(fù)位系統(tǒng),從而給 MCU 足夠的時(shí)間來響應(yīng)和處理問題。


            1.5 看門狗的類型

            看門狗可以分為獨(dú)立看門狗和窗口看門狗。獨(dú)立看門狗的時(shí)間精度要求較低,而窗口看門狗則用于時(shí)間精度要求較高的場合。


            1.6 軟硬件看門狗的區(qū)別

            硬件看門狗利用獨(dú)立的定時(shí)器電路來實(shí)現(xiàn)監(jiān)控功能,具有較高的可靠性。軟件看門狗則使用處理器內(nèi)部的定時(shí)器或其他機(jī)制來實(shí)現(xiàn),雖然在一定程度上可以簡化硬件設(shè)計(jì),但在可靠性方面通常不如硬件看門狗。

            總結(jié)而言,看門狗是一種重要的系統(tǒng)保護(hù)機(jī)制,通過定期“喂狗”來確保系統(tǒng)的正常運(yùn)行。當(dāng)系統(tǒng)出現(xiàn)異常時(shí),看門狗能夠及時(shí)復(fù)位系統(tǒng),防止死循環(huán)和程序跑飛等情況的發(fā)生,從而提高系統(tǒng)的可靠性和穩(wěn)定性。在實(shí)際應(yīng)用中,開發(fā)者需要根據(jù)具體需求選擇合適的看門狗解決方案,并設(shè)置適當(dāng)?shù)臅r(shí)間參數(shù),以實(shí)現(xiàn)最佳的保護(hù)效果。


            二、演示功能概述

            本文演示主要通過 Air780E 核心板和 LuatOS 系統(tǒng),介紹如何使用看門狗定時(shí)器(WDT)庫來防止嵌入式設(shè)備死機(jī)??撮T狗電路是一種監(jiān)控電路,主要應(yīng)用于嵌入式系統(tǒng),目的是為了提高系統(tǒng)的可靠性和穩(wěn)定性。在看門狗電路的幫助下,當(dāng)系統(tǒng)出現(xiàn)異常時(shí),如程序跑飛或死循環(huán),能夠自動(dòng)復(fù)位并重新啟動(dòng)系統(tǒng)。

            演示分為兩個(gè)部分:正常運(yùn)行情況和故障場景模擬。

            在正常運(yùn)行情況下,示例代碼會初始化看門狗庫,并設(shè)置超時(shí)時(shí)間和喂狗周期。然后,創(chuàng)建一個(gè)任務(wù),該任務(wù)會定期喂狗,以防止看門狗定時(shí)器超時(shí)。如果看門狗定時(shí)器超時(shí),系統(tǒng)將自動(dòng)重啟。

            在故障場景模擬部分,我們添加了一個(gè)新的任務(wù) fault_task,該任務(wù)進(jìn)入一個(gè)死循環(huán),不進(jìn)行喂狗操作。這樣,當(dāng)看門狗定時(shí)器超時(shí)后,系統(tǒng)將自動(dòng)重啟,模擬了設(shè)備在故障場景下的自動(dòng)恢復(fù)能力。

            通過這個(gè)演示,我們可以看到看門狗定時(shí)器在嵌入式系統(tǒng)中的重要作用,它能夠有效防止系統(tǒng)死機(jī),提高系統(tǒng)的穩(wěn)定性和可靠性。


            三、演示硬件環(huán)境


            3.1 開發(fā)板


            本文以Air780E核心板為例,

            此核心板的詳細(xì)使用說明參考:
            https://docs.openluat.com/air780e/product/

            3.2 SIM 卡

            在中國大陸環(huán)境下,使用移動(dòng),電信,聯(lián)通的物聯(lián)網(wǎng)卡或者手機(jī)卡都可以。


            3.3 PC 電腦

            WIN7以及以上版本的WINDOWS系統(tǒng)。


            3.4 數(shù)據(jù)通信線

            1. USB 轉(zhuǎn) Type-C 數(shù)據(jù)線

            它的一端是 USB 接口,另一端是 Type-C 接口。

            image.png


            四、演示軟件環(huán)境


            4.1 Luatools 下載調(diào)試工具

            Luatools 工具由合宙推出,支持最新固件獲取、固件打包、trace 打印及單機(jī)燒錄等功能。

            工具使用說明參考:
            Luatools 下載和詳細(xì)使用:
            https://docs.openluat.com/Luatools/


            4.2 源碼及固件

            1)底層 core 下載地址:LuatOS 固件版本下載地址:https://docs.openluat.com/air780e/luatos/firmware/

            本 demo 使用的固件是 core_V1112 壓縮包 內(nèi)的 LuatOS-SoC_V1112_EC618_FULL.soc

            image.png

            2) demo 位置

            本 demo 主要用于演示如何在 LuatOS 系統(tǒng)中使用看門狗定時(shí)器(wdt)庫來防止設(shè)備死機(jī)。

            demo位置:https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/wdt

            3)源碼及固件已打包壓縮,如下所示

            壓縮包中 core 文件夾存放的是固件,code 文件夾存放的是腳本代碼。


            五、軟硬件資料


            5.1 watchdog 操作庫介紹


            5.1.1 watchdog 庫介紹

            該庫提供了一系列用于管理和操作看門狗定時(shí)器的 API 函數(shù),使得開發(fā)者可以方便地在 LuatOS 系統(tǒng)中管理看門狗定時(shí)器,從而提高設(shè)備的穩(wěn)定性。


            5.1.2 API 接口介紹

            本教程所使用API接口參考:
            https://wiki.luatos.com/api/wdt.html?highlight=watchdog

            image.png


            5.2 Air780E 核心板燒錄說明


            5.2.1 選擇固件和腳本


            1)打開 Luatools 工具

            注意,大家只需要跟著做到第四步即可,第五步跟著后面的操作再做。

            image.png


            5.2.2 燒錄


            1)將 Air780E 核心板通過 USB 數(shù)據(jù)線連接至電腦,如下圖所示:

            image.png


            2)根據(jù)下方操作進(jìn)行燒錄

            此時(shí)就需要大家先點(diǎn)擊 Luatools 工具上的 下載底層與腳本/下載腳本,再執(zhí)行下方操作了。

            開發(fā)板處于未開機(jī)狀態(tài):此時(shí)先按住下載模式按鍵(BOOT 鍵)不放,再長按開機(jī)鍵(POW 鍵)開機(jī),若不出意外開發(fā)板將會進(jìn)入下載模式,Luatools 工具下載進(jìn)度條會開始跑,這時(shí)便可以松開 BOOT 鍵和 POW 鍵,等到工具提示下載完成即可。

            開發(fā)板已經(jīng)處于開機(jī)狀態(tài):此時(shí)可以先按住 BOOT 鍵不放,再短按復(fù)位鍵(RST 鍵)后開發(fā)板會重啟并進(jìn)入下載模式。


            5.2.3 不同模式下的端口顯示


            1) 正常開機(jī)模式

            image.png


            2)下載模式

            image.png



            六、功能驗(yàn)證


            6.1 程序正常運(yùn)行


            6.1.1 示例代碼介紹


            1)項(xiàng)目信息:
            在開頭定義了項(xiàng)目名稱(PROJECT)和版本(VERSION),并通過日志輸出這些信息。

            2)引入系統(tǒng)庫:
            通過 require("sys") 引入了 sys 庫,這是 LuatOS 中常用的系統(tǒng)庫。

            3) 任務(wù)初始化:
            使用 sys.taskInit 函數(shù)創(chuàng)建一個(gè)新的任務(wù)。在任務(wù)中檢查 wdt 庫是否可用,如果不可用,則進(jìn)入一個(gè)無限循環(huán),每秒鐘輸出一次提示信息。

            4)wdt 配置:

            • 初始化 wdt 庫,設(shè)置超時(shí)時(shí)間為 9 秒。

            • 設(shè)置一個(gè)定時(shí)器每 3 秒喂一次看門狗,確保設(shè)備在正常運(yùn)行的情況下不會重啟。

            • 說明了若發(fā)生軟件崩潰或硬件故障,最多 18 秒后將自動(dòng)重啟設(shè)備。

            5)運(yùn)行系統(tǒng):
            最后通過 sys.run() 啟動(dòng)系統(tǒng),后面不應(yīng)添加任何其他語句。


            6.1.2 完整代碼展示

            image.pngimage.png


            6.1.3 運(yùn)行結(jié)果展示

            通過 Luatools 工具查看日志

            image.png

            6.2 添加死循環(huán)模擬故障場景

            6.2.1 示例代碼介紹

            我們在原有示例代碼中創(chuàng)建了一個(gè)新的任務(wù),命名為 fault_task,它將進(jìn)入一個(gè)死循環(huán)。由于這個(gè)新任務(wù)不會喂看門狗,設(shè)備將在超時(shí)后自動(dòng)重啟。這樣,我們就可以有效地模擬看門狗的超時(shí)情況。

            image.png


            6.2.2 完整代碼展示
            image.pngimage.png

            6.2.3 運(yùn)行結(jié)果展示
            image.png

            七、總結(jié)

            本次演示通過 Air780E 核心板和 LuatOS 系統(tǒng),詳細(xì)介紹了如何使用看門狗定時(shí)器(WDT)庫來防止嵌入式設(shè)備死機(jī)??撮T狗電路作為一種重要的系統(tǒng)保護(hù)機(jī)制,能夠在系統(tǒng)異常時(shí)自動(dòng)復(fù)位并重新啟動(dòng)系統(tǒng),從而提高系統(tǒng)的可靠性和穩(wěn)定性。

            在演示中,我們首先介紹了看門狗的工作原理、應(yīng)用架構(gòu)、定時(shí)時(shí)間設(shè)置以及軟硬件看門狗的區(qū)別。接著,我們通過實(shí)際操作,展示了如何在一個(gè)簡單的 LuatOS 項(xiàng)目中集成看門狗定時(shí)器,并設(shè)置了適當(dāng)?shù)膮?shù)來確保系統(tǒng)在正常運(yùn)行和故障場景下都能自動(dòng)恢復(fù)。

            通過本次演示,我們深入理解了看門狗定時(shí)器在嵌入式系統(tǒng)中的工作原理和應(yīng)用價(jià)值,以及在實(shí)際項(xiàng)目中如何有效地利用看門狗庫來提高系統(tǒng)的穩(wěn)定性和可靠性。這對于嵌入式系統(tǒng)開發(fā)者來說,是一個(gè)具有重要意義的技能。


            八、擴(kuò)展

            8.1 看門狗定時(shí)器的應(yīng)用場景

            看門狗定時(shí)器廣泛應(yīng)用于各種嵌入式系統(tǒng)和物聯(lián)網(wǎng)設(shè)備中,特別是在需要高可靠性的應(yīng)用場景中。一些典型的應(yīng)用場景包括:

            1)工業(yè)控制系統(tǒng):在工業(yè)生產(chǎn)過程中,控制系統(tǒng)需要高度穩(wěn)定和可靠,看門狗定時(shí)器可以確保系統(tǒng)在受到干擾或異常情況時(shí)能夠迅速恢復(fù)。

            2)車載電子系統(tǒng):車載電子系統(tǒng)面臨著復(fù)雜的電磁環(huán)境和振動(dòng),看門狗定時(shí)器可以幫助系統(tǒng)在上電復(fù)位后保持穩(wěn)定運(yùn)行,防止因軟件或硬件故障導(dǎo)致的系統(tǒng)死機(jī)。

            3)醫(yī)療設(shè)備:醫(yī)療設(shè)備對穩(wěn)定性和可靠性有很高的要求,看門狗定時(shí)器可以確保設(shè)備在長時(shí)間運(yùn)行過程中不會因?yàn)楣收隙V构ぷ?,從而保障患者的安全和設(shè)備的連續(xù)性。

            4)通信設(shè)備:在通信系統(tǒng)中,看門狗定時(shí)器可以用于監(jiān)控和保護(hù)網(wǎng)絡(luò)設(shè)備,確保數(shù)據(jù)傳輸?shù)姆€(wěn)定性和可靠性。


            8.2 看門狗定時(shí)器的設(shè)計(jì)考慮因素

            在設(shè)計(jì)和實(shí)現(xiàn)看門狗定時(shí)器時(shí),需要考慮以下幾個(gè)關(guān)鍵因素:

            1)超時(shí)時(shí)間:超時(shí)時(shí)間是指看門狗定時(shí)器從開始計(jì)時(shí)到觸發(fā)復(fù)位信號的時(shí)間間隔。這個(gè)時(shí)間需要根據(jù)具體應(yīng)用的需求來設(shè)定,通常需要平衡系統(tǒng)的穩(wěn)定性和響應(yīng)速度。

            2)喂狗周期:喂狗周期是指主控制器向看門狗芯片發(fā)送脈沖的時(shí)間間隔。喂狗周期應(yīng)該設(shè)置得足夠短,以防止看門狗定時(shí)器在正常運(yùn)行中誤觸發(fā)復(fù)位。

            3)看門狗復(fù)位輸出:看門狗定時(shí)器通常具有一個(gè)復(fù)位輸出引腳,用于向主控制器提供復(fù)位信號。在設(shè)計(jì)時(shí),需要確保復(fù)位輸出引腳的電平和主控制器的復(fù)位輸入引腳兼容。

            4)功耗:在設(shè)計(jì)看門狗定時(shí)器時(shí),需要考慮其功耗,特別是在低功耗應(yīng)用中。選擇低功耗的看門狗芯片和合理的電源設(shè)計(jì)對于系統(tǒng)的整體功耗至關(guān)重要。

            5)兼容性和可擴(kuò)展性:在設(shè)計(jì)看門狗定時(shí)器時(shí),需要考慮其與其他系統(tǒng)的兼容性和可擴(kuò)展性。確??撮T狗定時(shí)器能夠與其他硬件和軟件組件無縫集成,并在未來需要時(shí)能夠輕松擴(kuò)展或升級。

            通過綜合考慮這些因素,開發(fā)者可以設(shè)計(jì)和實(shí)現(xiàn)一個(gè)穩(wěn)定、可靠且高效的看門狗定時(shí)器解決方案,以確保嵌入式系統(tǒng)的正常運(yùn)行和數(shù)據(jù)傳輸?shù)姆€(wěn)定性。



            九、常見問題

            9.1 看門狗定時(shí)器是如何工作的?

            看門狗定時(shí)器通過主控制器定期向其發(fā)送脈沖信號來保持計(jì)時(shí)。如果主控制器在規(guī)定時(shí)間內(nèi)未能發(fā)送脈沖,看門狗定時(shí)器將觸發(fā)復(fù)位信號,將主控制器復(fù)位。


            9.2 如何配置看門狗定時(shí)器的超時(shí)時(shí)間和喂狗周期?

            在LuatOS等嵌入式操作系統(tǒng)中,看門狗定時(shí)器的超時(shí)時(shí)間和喂狗周期通常通過API函數(shù)進(jìn)行配置??梢愿鶕?jù)具體應(yīng)用的需求來設(shè)置合適的時(shí)間間隔。

            若使用本文中所提到的watchdog操作庫,可按照以下步驟進(jìn)行配置:


            1)初始化看門狗:
            使用 wdt.init(timeout) 函數(shù)來初始化看門狗定時(shí)器,timeout 參數(shù)是超時(shí)時(shí)長,單位為毫秒。例如,如果你希望看門狗的超時(shí)時(shí)間為9000毫秒,可以這樣調(diào)用:

            image.png


            2)設(shè)置看門狗超時(shí)時(shí)間(可選):
            如果設(shè)備支持,可以調(diào)用 wdt.setTimeout(timeout) 來重新設(shè)置看門狗的超時(shí)時(shí)長,單位同樣為毫秒。例如:
            image.png


            3)定期喂狗:
            使用 wdt.feed() 函數(shù)來喂狗,以重置超時(shí)計(jì)時(shí)。建議使用定時(shí)器定期調(diào)用這個(gè)函數(shù)。例如,使用系統(tǒng)定時(shí)器每3000毫秒喂一次狗,可以這樣設(shè)置:

            image.png

            通過以上步驟,你可以成功配置看門狗定時(shí)器的超時(shí)時(shí)間和喂狗周期,確保設(shè)備不會因?yàn)槲次构范貑ⅰ?/blockquote>


            *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。




            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉