91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

看門狗芯片的應(yīng)用場景

姚小熊27 ? 來源:英銳恩 ? 作者:英銳恩 ? 2020-06-26 14:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

對(duì)于那些人類無法持續(xù)監(jiān)視的嵌入式系統(tǒng),看門狗芯片可能是個(gè)很好的解決方案。英銳恩單片機(jī)開發(fā)工程師表示,大多數(shù)嵌入式系統(tǒng)需要自主處理異常,如果運(yùn)算跑偏了,通常不可能等人們重新引導(dǎo)他們。這種情況下需要一個(gè)復(fù)位芯片,以引導(dǎo)嵌入式系統(tǒng)的重啟。

看門狗芯片是一種硬件,可以用來自動(dòng)檢測軟件異常,并在發(fā)生任何異常時(shí)重置處理器。一般來說,看門狗芯片基于一個(gè)從某個(gè)初始值遞減到零的計(jì)數(shù)器。嵌入式軟件選擇計(jì)數(shù)器的初始值并定期重新啟動(dòng)它。如果計(jì)數(shù)器在軟件重新啟動(dòng)之前達(dá)到零,則認(rèn)為軟件發(fā)生故障,并且處理器的復(fù)位信號(hào)有效。處理器(及其運(yùn)行的嵌入式軟件)將重新啟動(dòng),就像人工操作員已關(guān)閉電源再打開一樣。

如下圖所示,看門狗芯片是處理器外部的芯片。但是,它也可以與CPU包含在同一芯片中。這是在許多單片機(jī)中完成的。無論哪種情況,看門狗芯片的輸出都直接與處理器的復(fù)位信號(hào)相關(guān)。

看門狗芯片的應(yīng)用場景

一、什么是踢狗(也叫:喂狗)

重新啟動(dòng)看門狗芯片計(jì)數(shù)器的過程有時(shí)稱為“踢狗(喂狗)”。踢狗的作用作用主要是起到復(fù)位重啟的作用,確保機(jī)器能夠一直運(yùn)行。

如下面的案例1中,做了一個(gè)簡單的示例。這里,我們有一個(gè)無限循環(huán)來控制系統(tǒng)的整個(gè)行為。這種軟件體系結(jié)構(gòu)在許多具有低端處理器和基于單個(gè)工作頻率的行為的嵌入式系統(tǒng)中很常見。該看門狗的硬件實(shí)現(xiàn)允許通過內(nèi)存映射寄存器設(shè)置計(jì)數(shù)器值。

uint16 volatile * pWatchdog =

(uint16 volatile *) 0xFF0000;

main(void)

{

hwinit();

for (;;)

{

*pWatchdog = 10000;

read_sensors();

control_motor();

display_status();

}

}

案例1:踢狗

假設(shè)循環(huán)必須每五毫秒至少執(zhí)行一次。(假設(shè)必須至少經(jīng)常向電動(dòng)機(jī)提供新的控制參數(shù)。)如果看門狗芯片的計(jì)數(shù)器初始化為與經(jīng)過的時(shí)間(即10000毫秒)對(duì)應(yīng)的五毫秒的值,并且軟件沒有錯(cuò)誤,看門狗芯片將永遠(yuǎn)不會(huì)到期,軟件將始終在達(dá)到零之前重新啟動(dòng)計(jì)數(shù)器。

二、軟件異常

看門狗芯片可以使系統(tǒng)擺脫許多危險(xiǎn)情況。但是,如果要有效,必須在整個(gè)軟件設(shè)計(jì)中考慮復(fù)位看門狗芯片。設(shè)計(jì)人員必須知道其軟件可能出什么問題,并確??撮T狗芯片能夠檢測到它們(如果有的話)。

系統(tǒng)掛起有多種原因。導(dǎo)致執(zhí)行無限循環(huán)的邏輯謬誤是最簡單的。假設(shè)這種情況發(fā)生在案例1的read_sensors()調(diào)用中。其他任何軟件(ISR除外,如果仍然啟用中斷)都不會(huì)再次運(yùn)行。

另一種可能性是,在循環(huán)的一次通過期間,異常數(shù)量的中斷到達(dá)。在ISR中花費(fèi)的任何額外時(shí)間就是沒有花費(fèi)在執(zhí)行主循環(huán)上的時(shí)間。可能會(huì)給電機(jī)新的控制指令帶來危險(xiǎn)的延遲。

使用多任務(wù)內(nèi)核時(shí),可能會(huì)發(fā)生死鎖。例如,一組任務(wù)可能會(huì)卡在彼此之間等待,并且其中一個(gè)需要一些外部信號(hào),從而使整個(gè)任務(wù)組無限期地掛起。

如果此類故障是瞬態(tài)的,則每次看門狗引起的復(fù)位后,系統(tǒng)可能會(huì)在一段時(shí)間內(nèi)正常運(yùn)行。但是,發(fā)生故障的硬件可能會(huì)導(dǎo)致系統(tǒng)不斷重置。因此,計(jì)算看門狗引起的復(fù)位次數(shù)并在固定次數(shù)的故障后放棄嘗試可能是明智的。

三、Karate框架接口測試

實(shí)際的看門狗實(shí)現(xiàn)通常會(huì)具有一個(gè)與案例1中的軟件相比更為復(fù)雜的軟件接口。當(dāng)重置看門狗所需的指令集非常簡單時(shí),有漏洞的軟件可能會(huì)偶然執(zhí)行此操作??紤]一個(gè)錯(cuò)誤,該錯(cuò)誤導(dǎo)致將值10000一次又一次地寫入內(nèi)存中的每個(gè)位置。此代碼將定期重新啟動(dòng)看門狗計(jì)數(shù)器,并且看門狗可能永遠(yuǎn)不會(huì)咬人。為防止這種情況,許多看門狗實(shí)現(xiàn)要求使用兩個(gè)或多個(gè)連續(xù)寫入的復(fù)雜序列來重新啟動(dòng)看門狗芯片。

如果看門狗內(nèi)置在你的單片機(jī)中,則在設(shè)備復(fù)位時(shí)可能不會(huì)自動(dòng)啟用它。你必須確保在硬件初始化期間啟用它。為了提供保護(hù)以防止意外禁用看門狗的錯(cuò)誤,硬件設(shè)計(jì)通常使得一旦啟用看門狗芯片就無法禁用它。

如果你的軟件可以比看門狗周期更快地完成一個(gè)完整的循環(huán),那么案例1中的結(jié)構(gòu)可能對(duì)你來說很好。如果你的軟件的某些部分需要很長時(shí)間才能完成,那么挑戰(zhàn)就更大了。假設(shè)你有一個(gè)循環(huán),等待元素加熱到一定溫度再返回。許多看門狗芯片的最長持續(xù)時(shí)間約為兩秒鐘。如果你要延遲的時(shí)間超過該時(shí)間長度,則可能必須在等待循環(huán)中踢狗。如果你的軟件中有很多這樣的地方,看門狗的控制可能會(huì)出現(xiàn)問題。

系統(tǒng)初始化是代碼的一部分,通常需要比看門狗芯片的最大時(shí)間更長的時(shí)間。也許進(jìn)行內(nèi)存測試或從ROMRAM的數(shù)據(jù)傳輸會(huì)減慢此速度。因此,某些看門狗可以比其后繼踢等待更長的時(shí)間來等待他們的第一個(gè)踢。

隨著將控制線程添加到軟件中(以ISR和軟件任務(wù)的形式),在代碼中僅放置一處看門狗變得無效。所以,選擇合適的踢腳間隔也是一個(gè)重要問題,這只能以系統(tǒng)特定的方式解決。

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

    關(guān)注

    32

    文章

    2317

    瀏覽量

    98225
  • 看門狗芯片
    +關(guān)注

    關(guān)注

    0

    文章

    19

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【瑞薩RA × Zephyr評(píng)測】多線程和看門狗

    本文章旨在評(píng)估使用 Zephyr RTOS 在 Renesas FPB-RA6E2 開發(fā)板上實(shí)現(xiàn)多線程調(diào)度與硬件看門狗功能的應(yīng)用。評(píng)估內(nèi)容包括任務(wù)調(diào)度、看門狗初始化流程、主程序邏輯的詳細(xì)解析,以及實(shí)驗(yàn)現(xiàn)象與數(shù)據(jù)分析。
    的頭像 發(fā)表于 01-10 10:23 ?2483次閱讀
    【瑞薩RA × Zephyr評(píng)測】多線程和<b class='flag-5'>看門狗</b>

    什么是ADC模擬看門狗

    模擬看門狗功能,支持將 ADC 轉(zhuǎn)換結(jié)果與用戶設(shè)定的閾值進(jìn)行比較,支持上閾值、下閾值、區(qū)間值比較,通過閾值寄存器 ADC_VTH 和 ADC_VTL 設(shè)置比較閾值。 模擬看門狗功能只在單通道模式
    發(fā)表于 12-12 06:15

    中科芯CKS32F107XX系列MCU的獨(dú)立看門狗介紹

    中科芯CKS32F107xx系列產(chǎn)品內(nèi)部提供兩個(gè)看門狗定時(shí)器單元,獨(dú)立型看門狗IWDG(Independent Watchdog)和窗口型看門狗WWDG(Window Watchdog),它們?cè)?/div>
    的頭像 發(fā)表于 11-28 14:51 ?3888次閱讀
    中科芯CKS32F107XX系列MCU的獨(dú)立<b class='flag-5'>看門狗</b>介紹

    中科芯CKS32F107XX系列MCU的窗口看門狗介紹

    中科芯CKS32F107xx系列產(chǎn)品內(nèi)部提供兩個(gè)看門狗定時(shí)器單元,獨(dú)立型看門狗IWDG(Independent Watchdog)和窗口型看門狗WWDG(Window Watchdog),本文主要介紹WWDG的應(yīng)用,關(guān)于IWDG
    的頭像 發(fā)表于 11-28 14:48 ?4149次閱讀
    中科芯CKS32F107XX系列MCU的窗口<b class='flag-5'>看門狗</b>介紹

    “喂狗”的藝術(shù):看門狗不叫,才是系統(tǒng)好

    看門狗選哪只好呢? 中間那只看起來不錯(cuò)。 咳咳搞錯(cuò)了,自動(dòng)化項(xiàng)目中說的看門狗是PLC的看門狗,那這個(gè)有什么用呢?難道真的是看大門的?
    的頭像 發(fā)表于 11-25 10:50 ?318次閱讀
    “喂狗”的藝術(shù):<b class='flag-5'>看門狗</b>不叫,才是系統(tǒng)好

    既然有獨(dú)立看門狗了,為啥還要窗口看門狗(WWDT),窗口看門狗的特色是什么?

    既然有獨(dú)立看門狗了,為啥還要窗口看門狗(WWDT),窗口看門狗的特色是什么?
    發(fā)表于 11-21 06:42

    看門狗定時(shí)器、復(fù)位源、異常處理機(jī)制科普

    在嵌入式開發(fā)中,系統(tǒng)一旦“跑飛”,工程師最怕的不是bug,而是程序卡死無人知。這時(shí),芯片自身的自我保護(hù)機(jī)制就至關(guān)重要。看門狗、復(fù)位源和異常處理機(jī)制,是保證系統(tǒng)可靠性的三大基石。本文帶你梳理清楚它們
    的頭像 發(fā)表于 11-17 10:53 ?1295次閱讀
    <b class='flag-5'>看門狗</b>定時(shí)器、復(fù)位源、異常處理機(jī)制科普

    小安派BW21-CBV-Kit入門教程之看門狗簡介

    這是一個(gè)簡單的看門狗定時(shí)器(WDT)示例,演示了看門狗 API 的用法。 有關(guān)看門狗的定義和工作原理,請(qǐng)參閱以下信息。
    的頭像 發(fā)表于 11-13 17:22 ?5113次閱讀
    小安派BW21-CBV-Kit入門教程之<b class='flag-5'>看門狗</b>簡介

    德州儀器TPS3436-Q1汽車級(jí)窗口看門狗定時(shí)器技術(shù)解析

    Texas Instruments TPS3436-Q1精密窗口看門狗定時(shí)器是一款超低功耗(250nA典型值)器件,提供可編程窗口看門狗定時(shí)器。TPS3436-Q1可提供具有多種功能的高精度超時(shí)
    的頭像 發(fā)表于 08-18 14:54 ?1230次閱讀
    德州儀器TPS3436-Q1汽車級(jí)窗口<b class='flag-5'>看門狗</b>定時(shí)器技術(shù)解析

    TPS3431 帶啟用功能的標(biāo)準(zhǔn)可編程看門狗定時(shí)器數(shù)據(jù)手冊(cè)

    TPS3431 是一款標(biāo)準(zhǔn)的可編程看門狗定時(shí)器,具有使能功能,適用于各種應(yīng)用。看門狗超時(shí)具有 15% 的精度、高精度定時(shí) (–40°C 至 +125°C) 和 25°C 時(shí) 2.5% 的典型值
    的頭像 發(fā)表于 04-10 14:28 ?878次閱讀
    TPS3431 帶啟用功能的標(biāo)準(zhǔn)可編程<b class='flag-5'>看門狗</b>定時(shí)器數(shù)據(jù)手冊(cè)

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

    TPS3430 是一款獨(dú)立的窗口看門狗定時(shí)器,具有可編程看門狗窗口和可編程看門狗復(fù)位延遲,適用于各種應(yīng)用。TPS3430窗口看門狗可實(shí)現(xiàn) 2.5% 的定時(shí)精度(25°C 時(shí)的典型值),
    的頭像 發(fā)表于 04-10 14:23 ?843次閱讀
    TPS3430 具有可編程復(fù)位延遲的窗口<b class='flag-5'>看門狗</b>定時(shí)器數(shù)據(jù)手冊(cè)

    TPS3430-Q1 具有可編程復(fù)位延遲的汽車級(jí)窗口看門狗定時(shí)器數(shù)據(jù)手冊(cè)

    TPS3430-Q1 是一款獨(dú)立的汽車窗口看門狗定時(shí)器,具有可編程看門狗窗口和可編程看門狗復(fù)位延遲,適用于汽車應(yīng)用。TPS3430-Q1 窗口看門狗可實(shí)現(xiàn) 2.5% 的定時(shí)精度(25°
    的頭像 發(fā)表于 04-10 14:15 ?954次閱讀
    TPS3430-Q1 具有可編程復(fù)位延遲的汽車級(jí)窗口<b class='flag-5'>看門狗</b>定時(shí)器數(shù)據(jù)手冊(cè)

    TPS3435 納米靜態(tài)電流精密超時(shí)看門狗定時(shí)器數(shù)據(jù)手冊(cè)

    TPS3435 是一款超低功耗 (典型值為 250nA) 器件,提供可編程超時(shí)看門狗定時(shí)器。 TPS3435 提供高精度超時(shí)看門狗定時(shí)器,具有適用于各種應(yīng)用的一系列功能。超時(shí)看門狗定時(shí)器可由
    的頭像 發(fā)表于 04-09 15:49 ?932次閱讀
    TPS3435 納米靜態(tài)電流精密超時(shí)<b class='flag-5'>看門狗</b>定時(shí)器數(shù)據(jù)手冊(cè)

    看門狗,你真的會(huì)用嗎?

    嵌入式系統(tǒng)開發(fā)中,看門狗是一種重要的機(jī)制,用于在程序異常時(shí)自動(dòng)重啟系統(tǒng),保障其穩(wěn)定性。本文將深入探討看門狗及其在程序穩(wěn)定性中的作用,幫助您更好地理解和應(yīng)用看門狗技術(shù)。看門狗首先需要明確
    的頭像 發(fā)表于 03-12 11:37 ?5130次閱讀
    <b class='flag-5'>看門狗</b>,你真的會(huì)用嗎?