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

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

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

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

嵌入式開發(fā)中的軟、硬件看門狗

嵌入式星球 ? 2020-10-12 11:13 ? 次閱讀

本文從原理、異同、舉例來說明硬件軟件看門狗怎么選擇:

一、 硬件看門狗的原理
硬件看門狗是利用一個定時器電路,其定時輸出連接到電路的復(fù)位端,程序在一定時間范圍內(nèi)對定時器清零(俗稱“喂狗”),因此程序正常工作時,定時器總不能溢出,也就不能產(chǎn)生復(fù)位信號。
如果程序出現(xiàn)故障,不在定時周期內(nèi)復(fù)位看門狗,就使得看門狗定時器溢出產(chǎn)生復(fù)位信號并重啟系統(tǒng)。
我們以ADI公司的ADM6316看門狗芯片為例。

圖1 :看門狗芯片功能框圖

該看門狗芯片的主要功能有:
1. 可以監(jiān)控電源VCC,26種復(fù)位閾值選項(xiàng):2.5 V至5 V,以100 mV遞增;
2. 4種復(fù)位延遲選項(xiàng):1 ms、20 ms、140 ms、1120 ms(最小值);
3. 4種看門狗喂狗超時選項(xiàng):6.3 ms、102 ms、1600 ms、25.6 s(典型值);
4. 支持手動復(fù)位輸入;
5. 復(fù)位輸出級:推挽低電平有效,開漏低電平有效,推挽高電平有效;
復(fù)位功能說明:
該芯片內(nèi)置復(fù)位功能。設(shè)備上電時,芯片的VCC電壓一旦到達(dá)開啟閾值電壓Vth,延遲定時器啟動,經(jīng)過延遲時間Trp,復(fù)位信號RESET或者/RESET即可輸出,實(shí)現(xiàn)設(shè)備的延遲上電復(fù)位;芯片同時會監(jiān)測VCC的電壓,一旦VCC跌落到Vth以下,經(jīng)過延遲時間Rrd后,復(fù)位信號輸出電平翻轉(zhuǎn),實(shí)現(xiàn)設(shè)備的復(fù)位。

圖2 :復(fù)位功能時序圖

看門狗功能說明:
該芯片內(nèi)置看門狗功能,設(shè)備上電時,芯片的VCC電壓一旦到達(dá)開啟閾值電壓Vth,延遲定時器啟動,經(jīng)過延遲時間Trp,復(fù)位信號RESET或者/RESET即可輸出,實(shí)現(xiàn)設(shè)備的延遲上電復(fù)位;當(dāng)喂狗信號WDI收到第一個脈沖電平時,就出發(fā)芯片內(nèi)部的定時器,軟件必須在Twd時間內(nèi)輸出喂狗信號WDI,否則復(fù)位信號/RESET將會在定時時間TWd到達(dá)時,進(jìn)行復(fù)位,設(shè)備重新復(fù)位。

圖3:看門狗功能時序圖

二、 軟件看門狗的原理
軟件看門狗原理上一樣,只是將硬件電路上的定時器用處理器的內(nèi)部定時器代替,這樣可以簡化硬件電路設(shè)計,一般是將一個芯片中的定時器來作為看門狗,通過程序的初始化,寫入初值,并啟動定時器。程序按時對定時器賦初值(或復(fù)位),以免它餓了。
這種看門狗是可以被禁用的(只要停止這個定時器即可),好比對那只要咬你的狗來個“葵花點(diǎn)穴手”, 大部分CPU都內(nèi)置看門狗,硬件原理可參考各芯片數(shù)據(jù)手冊
優(yōu)點(diǎn):可以通過程序改變初始時間,也可以隨時禁用。
缺點(diǎn):需要初始化,如果程序在初始化、啟動完成前跑飛或在禁用后跑飛,看門狗就無法復(fù)位系統(tǒng),這樣看門狗的作用就沒有了,系統(tǒng)恢復(fù)能力降低。

圖4:軟件看門狗功能示意圖

三、 軟、硬件看門狗的主要異同
學(xué)習(xí)了上述的軟硬件看門狗,我們總結(jié)一下兩者的異同。
兩者相同點(diǎn)如下:
1) 都是通過定時器實(shí)現(xiàn);定時時間到?jīng)]有喂狗就進(jìn)行復(fù)位。
2) 都是需要在規(guī)定的時間內(nèi)喂狗。
3) 兩者都是靠軟件進(jìn)行喂狗。
兩者的主要差異如下:
1) 附加功能:硬件看門狗芯片一般還附帶了延遲復(fù)位和電源檢 測的功能,軟件則沒有。
2) 屏蔽方法:軟件看門狗很容易屏蔽關(guān)閉,只需修改其中的寄存器,而硬件看門狗一旦啟動不斷電就停不下來。
3) 啟動方式:軟件看門狗很容易啟動,只需修改其中的寄存器。硬件一般是收到第一個喂狗信號后就啟動。
4) 初始化:硬件看門狗上電后收到第一個喂狗脈沖就完成了初始化,軟件看門狗則需要配置相關(guān)的寄存器(或者調(diào)用相關(guān)的看門狗子程序)。

四、 一個軟件看門狗搞不定的案例
項(xiàng)目組研發(fā)一款戶外遠(yuǎn)程采集器,應(yīng)用場景包括偏僻的郊外,對可靠性要求很高,出現(xiàn)故障后或者遠(yuǎn)程升級后能夠自動復(fù)位重啟。為了節(jié)省成本,該產(chǎn)品采用主芯片內(nèi)置的看門狗功能。主芯片其他資源初始化完成后,再初始化看門狗功能。產(chǎn)品批量后,遠(yuǎn)程升級過程中,大概有5%的概率設(shè)備升級后變磚,需要人工斷電后再上電才能恢復(fù)正常。
經(jīng)過研發(fā)人員分析,軟件的看門狗的流程如下圖,一小部分設(shè)備,在升級程序過程,出現(xiàn)了死機(jī)的問題,程序還沒有運(yùn)行到初始化看門狗的階段,看門狗無法生效,導(dǎo)致設(shè)備處于一直死機(jī)的狀態(tài),人工斷電重啟后恢復(fù)正常。

圖5:軟件看門狗流程圖

經(jīng)過改良升級,研發(fā)人員使用了硬件看門狗,上電瞬間就依賴上拉電阻形成的高脈沖開啟看門狗,看門狗的延遲最遲喂狗時間為1.8S,評估升級+初始化時間最遲為1.2S,所以該看門狗芯片滿足要求,一旦1.8S內(nèi)應(yīng)用程序還無法喂狗,則復(fù)位重啟,問題得以解決。

圖6:硬件看門狗流程圖

五、 總結(jié)
軟件和硬件的看門狗的最主要差異在于開啟看門狗的時機(jī),軟件看門狗必須初始化(配置)看門狗才能使用,如果軟件看門狗是廠商提供的SDK中的一個API接口,開發(fā)者又沒有能力修改底層的uboot、內(nèi)核,無法在uboot、內(nèi)核階段開啟和喂狗,開啟看門狗的時機(jī)就很晚了,程序就有可能還沒有跑到看門狗初始化就掛了,中間的各種幺蛾子都不受控,就像上述的案例。
而硬件看門狗開啟則不受軟件的約束,設(shè)備上電就可以依賴上拉電阻提供的高脈沖開啟看門狗,只要軟件不及時喂狗,就復(fù)位,這個是無條件的。所謂一分錢一分貨,在電子產(chǎn)品也是適用的。
當(dāng)然,如果你能說服驅(qū)動工程師,能夠在主芯片上電第一時間,就初始化和開啟軟件看門狗,理論上,軟件看門狗也可以做的和硬件看門狗一樣可靠。

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

    評論

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

    TPS3430 具有可編程復(fù)位延遲的窗口看門狗定時器數(shù)據(jù)手冊

    (WDO) 復(fù)位延遲可通過工廠編程的默認(rèn)延遲設(shè)置進(jìn)行設(shè)置,也可通過外部電容器進(jìn)行編程。可以通過 SET 引腳禁用看門狗,以避免在開發(fā)過程或開機(jī)期間出現(xiàn)意外的看門狗超時。
    的頭像 發(fā)表于 04-10 14:23 ?131次閱讀
    TPS3430 具有可編程復(fù)位延遲的窗口<b class='flag-5'>看門狗</b>定時器數(shù)據(jù)手冊

    嵌入式開發(fā):高門檻的系統(tǒng)性工程與 996 的行業(yè)困局

    嵌入式開發(fā)的門檻,往往被培訓(xùn)機(jī)構(gòu)和表象所掩蓋。許多人誤以為 “用 C 語言寫個跑在 ARM 上的程序” 就是嵌入式,實(shí)則連皮毛都未觸及。真正的嵌入式開發(fā)硬件與軟件深度融合的系統(tǒng)性工程
    的頭像 發(fā)表于 04-09 11:06 ?186次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>:高門檻的系統(tǒng)性工程與 996 的行業(yè)困局

    看門狗,你真的會用嗎?

    嵌入式系統(tǒng)開發(fā)看門狗是一種重要的機(jī)制,用于在程序異常時自動重啟系統(tǒng),保障其穩(wěn)定性。本文將深入探討看門狗及其在程序穩(wěn)定性
    的頭像 發(fā)表于 03-12 11:37 ?854次閱讀
    <b class='flag-5'>看門狗</b>,你真的會用嗎?

    安利給工程師!看門狗相關(guān)知識

    適當(dāng)?shù)膮?shù)來確保系統(tǒng)在正常運(yùn)行和故障場景下都能自動恢復(fù)。? ▼ 看門狗簡介 ▼ 看門狗(Watch Dog Timer,WDT) ——是一種監(jiān)控電路,主要應(yīng)用于嵌入式系統(tǒng),目的是為了提高系統(tǒng)的可靠性和穩(wěn)定性。在
    的頭像 發(fā)表于 12-31 14:29 ?428次閱讀
    安利給工程師!<b class='flag-5'>看門狗</b>相關(guān)知識

    抄作業(yè)!看門狗定時器必備知識

    Air201在模組內(nèi)部集成了硬件看門狗,今天就一起來聊聊~ 本文將帶你了解看門狗的工作原理、應(yīng)用架構(gòu)、定時時間設(shè)置、軟硬件看門狗的區(qū)別,以及
    的頭像 發(fā)表于 12-30 14:44 ?582次閱讀
    抄作業(yè)!<b class='flag-5'>看門狗</b>定時器必備知識

    常用硬件看門狗電路

    硬件看門狗電路分享
    的頭像 發(fā)表于 12-18 14:09 ?4122次閱讀
    常用<b class='flag-5'>硬件</b><b class='flag-5'>看門狗</b>電路

    如何使用 RISC-V 進(jìn)行嵌入式開發(fā)

    RISC-V是一種開源的指令集架構(gòu)(ISA),它允許任何人設(shè)計、制造和銷售基于RISC-V的處理器,這為嵌入式開發(fā)提供了極大的靈活性和創(chuàng)新空間。以下是使用RISC-V進(jìn)行嵌入式開發(fā)的基本步驟: 一
    的頭像 發(fā)表于 12-11 17:32 ?1489次閱讀

    看門狗定時器的工作原理

    看門狗定時器是一種獨(dú)立的計時器硬件模塊,其核心功能是倒計時。如果系統(tǒng)軟件在計時器超時前沒有對其進(jìn)行復(fù)位操作(即“喂狗”),看門狗將觸發(fā)一個預(yù)定義的動作,通常是系統(tǒng)復(fù)位或中斷。
    的頭像 發(fā)表于 10-21 14:18 ?1010次閱讀
    <b class='flag-5'>看門狗</b>定時器的工作原理

    單片機(jī)開發(fā):使用內(nèi)部看門狗定時器(WDT)還是外掛看門狗芯片?

    不需要看門狗功能。 看門狗定時器(WDT)是一種用于檢測在嵌入式系統(tǒng)的異常并復(fù)位單片機(jī)。它通常包含一個預(yù)裝計時器,該計時器遞減為零。當(dāng)預(yù)裝的
    發(fā)表于 09-25 13:46

    嵌入式開發(fā)常見問題排查

    嵌入式開發(fā)問題排查很多人認(rèn)為嵌入式開發(fā)很難,主要是因?yàn)樵谶@個過程中常常會遇到各式各樣的問題。這些問題的復(fù)雜性和多樣性使得許多人感到困惑和無所適從。然而,如果將這些問題逐一拆解,實(shí)際上大部分都可以
    的頭像 發(fā)表于 09-22 08:04 ?634次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>常見問題排查

    【「ARM MCU嵌入式開發(fā) | 基于國產(chǎn)GD32F10x芯片」閱讀體驗(yàn)】+書籍整體概況

    一、導(dǎo)言 上周收到《ARM MCU嵌入式開發(fā) | 基于國產(chǎn)GD32F10x芯片》書籍,該紙質(zhì)書籍內(nèi)容可謂是面面俱到,由“清華大學(xué)出版社”出版,印刷第1版時間為2024年6月份,總共464千字
    發(fā)表于 08-25 22:48

    嵌入式C編程常用的異常錯誤處理

    嵌入式C編程,異常錯誤處理是確保系統(tǒng)穩(wěn)定性和可靠性的重要部分。以下是一些常見的異常錯誤處理方法及其詳細(xì)說明和示例: 1. 斷言 (Assertions) 斷言用于在開發(fā)階段捕獲程序
    發(fā)表于 08-06 14:32

    聚焦嵌入式開發(fā)的合規(guī)性工具、項(xiàng)目管理工具、版本迭代工具應(yīng)用

    ,就嵌入式開發(fā)與管理領(lǐng)域的最新趨勢、工具選擇以及DevSecOps實(shí)踐應(yīng)用等方面展開了深入探討。 本期對話龍智資深DevSecOps顧問徐晨暉, 分享嵌入式開發(fā)的合規(guī)性工具、項(xiàng)目管理和版本管理的工具選擇,以及DevSecOps
    的頭像 發(fā)表于 07-29 15:15 ?885次閱讀

    嵌入式開發(fā)前景怎么樣?

    嵌入式開發(fā)前景非常廣闊,這主要得益于物聯(lián)網(wǎng)、人工智能、大數(shù)據(jù)等技術(shù)的快速發(fā)展,以及嵌入式系統(tǒng)在各個領(lǐng)域的廣泛應(yīng)用。以下是對嵌入式開發(fā)前景的詳細(xì)分析
    的頭像 發(fā)表于 07-10 09:00 ?3900次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>前景怎么樣?

    嵌入式開發(fā)就業(yè)前景怎么樣?

    。在智能家居領(lǐng)域,嵌入式開發(fā)的主要工作是開發(fā)各種智能化設(shè)備和系統(tǒng),如智能照明、智能安防、智能家電等。嵌入式開發(fā)人員需要掌握相關(guān)的硬件和軟件技術(shù),如處理器、傳感器、通信技術(shù)、操作系統(tǒng)等,
    發(fā)表于 06-07 14:51
    主站蜘蛛池模板: 1000部又爽又黄的做黄禁片 | 天天爽爽 | ak福利午夜在线观看 | 久久青草精品一区二区三区 | 久久精品国产精品亚洲红杏 | 男人视频网站 | 免费性视频 | 欧美一级视频免费 | 国产小视频免费看 | 华人被黑人粗大猛然进 | 免费在线观看大片影视大全 | 免费精品美女久久久久久久久 | 国产精品麻豆va在线播放 | 么公的好大好硬好深好爽在线视频 | 特黄三级 | 婷婷婷色| 亚洲永久免费视频 | 思思99re66在线精品免费观看 | 国产黄在线观看免费观看不卡 | 伊人网综合视频 | 欧美性天天 | 色www永久免费视频 色y情视频免费看 | 天天插天天爽 | 年轻护士3的滋味 | 11111日本网站| 女同性大尺度床戏视频 | 99热久久国产精品 | 视频一二三区 | 亚洲乱亚洲乱妇41p 亚洲乱亚洲乱妇41p国产成人 | 人人看人人玩 | 天堂资源在线bt种子8 | 天天曰天天操 | 人人人人凹人人爽人人澡 | 国产在线播| 六月丁香激情综合成人 | 国产精品国产主播在线观看 | 成年网站在线在免费播放 | 在线观看视频一区二区 | 久久久国产精品免费看 | 免费看啪 | www.色亚洲|