国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

基于STM32、FreeRTOS 實現硬件看門狗+軟件看門狗監測多任務的方法

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-12 10:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們都知道硬件看門狗的目的:是用來監測系統,防止系統死機,并在死機的情況下使系統復位重啟。

RTOS操作系統中,如果任務(線程)較多,出現高優先級任務長時間占用CPU資源,低優先級任務長時間得不到執行這種想象,那么我們的系統就是具有Bug的系統。

如上描述,假如我們的線程沒有死機,只是長時間得不到執行。在這種異常情況下,我們又不希望系統復位,只希望執行特定代碼,那我們該如何來避免這種問題呢?

Ⅰ關于看門狗

硬件看門狗:利用一個定時器計數電路,其定時輸出連接到電路的復位端,程序在一定時間范圍內對定時“喂狗”。

因此程序正常工作時,定時器總不能溢出,也就不能產生復位信號。如果程序出現故障,不在定時周期內喂狗,就使得看門狗定時器溢出產生復位信號并重啟系統。

STM32中,有兩個看門狗:獨立看門狗和窗口看門狗。原理和功能都類似,只是應用場景不一樣。

軟件看門狗:軟件看門狗和硬件看門狗原理類似,都是定期(在時間溢出之內),對其喂狗。只是軟件喂狗的方式是通過自身設計的計數來實現。

Ⅱ硬件+軟件看門狗監測多任務的原理

1.利用一個監測線程(自身),來監測其它多個線程;

2.利用硬件看門狗來監測自身。

如圖:

假如我系統中有多個應用線程(如上圖),我就利用一個監測線程(自身),來監測其它多個應用線程。

同時,為了防止自身線程異常,利用一個硬件看門狗來監測自身。這樣就可以做到雙重監測的作用。

Ⅲ結合軟件來講原理

上一節上述的原理可能對于有些人來說,是比較抽象的。那么這一節來看看代碼:

監測線程(自身):

簡單來說:在監測線程(自身)之中,需要對硬件看門狗進行喂狗。軟件看門狗的角色:在這里就是對齊計數,瀏覽是否溢出,我把它封裝成一個瀏覽函數。具體的喂狗就在其他各個被監測的線程中。

那么,再看軟件看門狗對其中一個應用線程喂狗的代碼:

這里只是簡單的舉例,一個主線程里面的喂狗。相當于:我線程啟動之后,就需要定時喂狗。如果這里長時間不喂狗,那么監測線程(自身)就會發現你沒有喂狗。

Ⅳ簡答的實現方法

看到這里,相信大家都知道其原理了。具體實現的方式方法很多種,可根據自己實際項目需要,添加相應的接口。這里舉例幾點吧。

定義一個數據結構:

這里舉例,是實現最基礎的東西,比如計數器,最大超時值等。

注冊接口函數:

監測瀏覽函數接口:

以上只是教大家方法,具體的實現,可自己根據自己習慣,項目需求來定制化開發。

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

    關注

    10

    文章

    610

    瀏覽量

    72932
  • STM32
    +關注

    關注

    2309

    文章

    11162

    瀏覽量

    373399
  • FreeRTOS
    +關注

    關注

    14

    文章

    499

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【瑞薩RA × Zephyr評測】多線程和看門狗

    本文章旨在評估使用 Zephyr RTOS 在 Renesas FPB-RA6E2 開發板上實現多線程調度與硬件看門狗功能的應用。評估內容包括任務調度、
    的頭像 發表于 01-10 10:23 ?2462次閱讀
    【瑞薩RA × Zephyr評測】多線程和<b class='flag-5'>看門狗</b>

    什么是ADC模擬看門狗

    模擬看門狗功能,支持將 ADC 轉換結果與用戶設定的閾值進行比較,支持上閾值、下閾值、區間值比較,通過閾值寄存器 ADC_VTH 和 ADC_VTL 設置比較閾值。 模擬看門狗功能只在單通道模式
    發表于 12-12 06:15

    中科芯CKS32F107XX系列MCU的獨立看門狗介紹

    安全性、時間精確性和使用靈活性方面變現得非常優秀。兩個看門狗定時器單元都可用來檢測由軟件錯誤引起的故障,具體表現為當計數器達到給定的超時值或未能在指定時間窗口內刷新計數器的值,會觸發系統復位。
    的頭像 發表于 11-28 14:51 ?3852次閱讀
    中科芯CKS32F107XX系列MCU的獨立<b class='flag-5'>看門狗</b>介紹

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

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

    “喂狗”的藝術:看門狗不叫,才是系統好

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

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

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

    看門狗定時器、復位源、異常處理機制科普

    的作用、原理與應用。一、看門狗定時器(WatchdogTimer)1.原理看門狗定時器本質上是一個獨立定時器,持續倒計時:軟件在規定時間內“喂狗”(重置看門狗計數器
    的頭像 發表于 11-17 10:53 ?1213次閱讀
    <b class='flag-5'>看門狗</b>定時器、復位源、異常處理機制科普

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

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

    井下電子儀器守護者——高溫看門狗電源監控電路

    石油測井高溫看門狗電源監控電路是保障井下電子儀器在極端惡劣環境下生存和執行任務的關鍵“守護者”
    的頭像 發表于 07-30 17:21 ?624次閱讀
    井下電子儀器守護者——高溫<b class='flag-5'>看門狗</b>電源監控電路

    TPS3431 帶啟用功能的標準可編程看門狗定時器數據手冊

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

    TPS3430 具有可編程復位延遲的窗口看門狗定時器數據手冊

    TPS3430 是一款獨立的窗口看門狗定時器,具有可編程看門狗窗口和可編程看門狗復位延遲,適用于各種應用。TPS3430窗口看門狗實現 2
    的頭像 發表于 04-10 14:23 ?812次閱讀
    TPS3430 具有可編程復位延遲的窗口<b class='flag-5'>看門狗</b>定時器數據手冊

    TPS3430-Q1 具有可編程復位延遲的汽車級窗口看門狗定時器數據手冊

    TPS3430-Q1 是一款獨立的汽車窗口看門狗定時器,具有可編程看門狗窗口和可編程看門狗復位延遲,適用于汽車應用。TPS3430-Q1 窗口看門狗
    的頭像 發表于 04-10 14:15 ?922次閱讀
    TPS3430-Q1 具有可編程復位延遲的汽車級窗口<b class='flag-5'>看門狗</b>定時器數據手冊

    TPS3435 納米靜態電流精密超時看門狗定時器數據手冊

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

    看門狗,你真的會用嗎?

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