在线观看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)不再提示

MCU硬件看門(mén)狗+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)的思路

jf_pJlTbmA9 ? 來(lái)源:strongerHuang ? 作者:strongerHuang ? 2023-10-24 15:25 ? 次閱讀

我們都知道硬件看門(mén)狗的目的:是用來(lái)監(jiān)測(cè)系統(tǒng),防止系統(tǒng)死機(jī),并在死機(jī)的情況下使其系統(tǒng)復(fù)位重啟。

RTOS操作系統(tǒng)中,如果任務(wù)(線程)較多,出現(xiàn)高優(yōu)先級(jí)任務(wù)長(zhǎng)時(shí)間占用CPU資源,低優(yōu)先級(jí)任務(wù)長(zhǎng)時(shí)間得不到執(zhí)行這種想象,那么我們的系統(tǒng)就是具有“Bug”的系統(tǒng)。

如上描述,假如我們的線程沒(méi)有死機(jī),只是長(zhǎng)時(shí)間得不到執(zhí)行。在這種異常情況下,我們又不希望系統(tǒng)復(fù)位,只希望執(zhí)行特定代碼,那我們?cè)撊绾蝸?lái)避免這種問(wèn)題呢?

關(guān)于看門(mén)狗

硬件看門(mén)狗:利用一個(gè)定時(shí)器計(jì)數(shù)電路,其定時(shí)輸出連接到電路的復(fù)位端,程序在一定時(shí)間范圍內(nèi)對(duì)定時(shí)“喂狗”。

因此程序正常工作時(shí),定時(shí)器總不能溢出,也就不能產(chǎn)生復(fù)位信號(hào)。如果程序出現(xiàn)故障,不在定時(shí)周期內(nèi)喂狗,就使得看門(mén)狗定時(shí)器溢出產(chǎn)生復(fù)位信號(hào)并重啟系統(tǒng)。

STM32中,有兩個(gè)看門(mén)狗:獨(dú)立看門(mén)狗和窗口看門(mén)狗。原理和功能都類(lèi)似,只是應(yīng)用場(chǎng)景不一樣。
軟件看門(mén)狗:軟件看門(mén)狗和硬件看門(mén)狗原理類(lèi)似,都是定期(在時(shí)間溢出之內(nèi)),對(duì)其喂狗。只是軟件喂狗的方式是通過(guò)自身設(shè)計(jì)的計(jì)數(shù)來(lái)實(shí)現(xiàn)。

硬件+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)的原理

1.利用一個(gè)監(jiān)測(cè)線程(自身),來(lái)監(jiān)測(cè)其它多個(gè)線程;2.利用硬件看門(mén)狗來(lái)監(jiān)測(cè)自身。

wKgZomUD0CiAMZsbAAJGanNheg0439.jpg

如圖:

假如我系統(tǒng)中有多個(gè)應(yīng)用線程(如上圖),我就利用一個(gè)監(jiān)測(cè)線程(自身),來(lái)監(jiān)測(cè)其它多個(gè)應(yīng)用線程。

同時(shí),為了防止自身線程異常,利用一個(gè)硬件看門(mén)狗來(lái)監(jiān)測(cè)自身。這樣就可以做到雙重監(jiān)測(cè)的作用。

軟件案例

上一節(jié)上述的原理可能對(duì)于有些人來(lái)說(shuō),是比較抽象的。那么這一節(jié)來(lái)看看代碼:

監(jiān)測(cè)線程(自身):

wKgaomUD0CqAKIgTAAKLYqg47Vw442.jpg

簡(jiǎn)單來(lái)說(shuō):在監(jiān)測(cè)線程(自身)之中,需要對(duì)硬件看門(mén)狗進(jìn)行喂狗。軟件看門(mén)狗的角色:在這里就是對(duì)齊計(jì)數(shù),瀏覽是否溢出,我把它封裝成一個(gè)瀏覽函數(shù)。具體的喂狗就在其他各個(gè)被監(jiān)測(cè)的線程中。

wKgZomUD0C2AaSk0AAKKGiq4UzQ804.jpg那么,再看軟件看門(mén)狗對(duì)其中一個(gè)應(yīng)用線程喂狗的代碼:這里只是簡(jiǎn)單的舉例,一個(gè)主線程里面的喂狗。相當(dāng)于:我線程啟動(dòng)之后,就需要定時(shí)喂狗。如果這里長(zhǎng)時(shí)間不喂狗,那么監(jiān)測(cè)線程(自身)就會(huì)發(fā)現(xiàn)你沒(méi)有喂狗。

實(shí)現(xiàn)方法

看到這里,相信大家都知道其原理了。具體實(shí)現(xiàn)的方式方法很多種,可根據(jù)自己實(shí)際項(xiàng)目需要,添加相應(yīng)的接口。這里舉例幾點(diǎn)吧。
定義一個(gè)數(shù)據(jù)結(jié)構(gòu):

wKgZomUD0C-AX58MAAHMzH1VzNc585.jpg

這里舉例,是實(shí)現(xiàn)最基礎(chǔ)的東西,比如計(jì)數(shù)器,最大超時(shí)值等。

注冊(cè)接口函數(shù):

wKgZomUD0DCATdzOAAMN_PLf7O8191.jpg

監(jiān)測(cè)瀏覽函數(shù)接口:

wKgaomUD0DKALgg5AAJt1-OhQbM173.jpg

以上只是教大家方法,具體的實(shí)現(xiàn),可自己根據(jù)自己習(xí)慣,項(xiàng)目需求來(lái)定制化開(kāi)發(fā)。

來(lái)源:strongerHuang

免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)聯(lián)系小編進(jìn)行處理


審核編輯 黃宇

聲明:本文內(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)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17696

    瀏覽量

    357832
  • 看門(mén)狗
    +關(guān)注

    關(guān)注

    10

    文章

    576

    瀏覽量

    71432
  • 監(jiān)測(cè)
    +關(guān)注

    關(guān)注

    2

    文章

    3815

    瀏覽量

    45206
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    看門(mén)狗多任務(wù)系統(tǒng)及喂狗方法詳解

    看門(mén)狗硬件看門(mén)狗軟件看門(mén)狗硬件看門(mén)狗是利用一
    的頭像 發(fā)表于 07-05 09:21 ?1.9w次閱讀
    <b class='flag-5'>看門(mén)狗</b><b class='flag-5'>多任務(wù)</b>系統(tǒng)及喂狗方法詳解

    STM32中的獨(dú)立看門(mén)狗和窗口看門(mén)狗是什么

    在早期的MCU中是沒(méi)有看門(mén)狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門(mén)狗的功能。但是目前看門(mén)
    的頭像 發(fā)表于 02-20 17:47 ?3164次閱讀
    STM32中的獨(dú)立<b class='flag-5'>看門(mén)狗</b>和窗口<b class='flag-5'>看門(mén)狗</b>是什么

    MCU獨(dú)立看門(mén)狗和窗口看門(mén)狗的區(qū)別

    早期的MCU沒(méi)有看門(mén)狗,就容易引起有些產(chǎn)品死機(jī)了不能重啟工作。為了避免這個(gè)問(wèn)題,后期的MCU在內(nèi)部集成了看門(mén)狗的功能。
    發(fā)表于 03-03 09:18 ?1018次閱讀

    如何去實(shí)現(xiàn)一種硬件+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)方案

    硬件+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)的原理是什么?如何去實(shí)現(xiàn)一種硬件+
    發(fā)表于 08-05 07:55

    什么是看門(mén)狗電路

    看門(mén)狗電路 看門(mén)狗電路一般有軟件看門(mén)狗硬件看門(mén)狗兩種。
    發(fā)表于 10-21 01:40 ?8356次閱讀

    什么是stm32看門(mén)狗?獨(dú)立看門(mén)狗和窗口看門(mén)狗工作原理解析

    stm32有兩個(gè)看門(mén)狗,獨(dú)立看門(mén)狗和窗口看門(mén)狗,其實(shí)兩者的功能是類(lèi)似的,只是喂狗的限制時(shí)間不同。 獨(dú)立看門(mén)狗
    的頭像 發(fā)表于 11-06 11:48 ?2.8w次閱讀
    什么是stm32<b class='flag-5'>看門(mén)狗</b>?獨(dú)立<b class='flag-5'>看門(mén)狗</b>和窗口<b class='flag-5'>看門(mén)狗</b>工作原理解析

    STM32看門(mén)狗配置(獨(dú)立看門(mén)狗IWDG和窗口看門(mén)狗WWDG)

    stm32自帶兩個(gè)看門(mén)狗模塊,獨(dú)立看門(mén)狗IWDG和窗口看門(mén)狗WWDG。看門(mén)狗主要作用是可用來(lái)檢測(cè)和解決由軟件錯(cuò)誤引起的故障;當(dāng)計(jì)數(shù)器達(dá)到給定
    發(fā)表于 11-09 17:17 ?8532次閱讀
    STM32<b class='flag-5'>看門(mén)狗</b>配置(獨(dú)立<b class='flag-5'>看門(mén)狗</b>IWDG和窗口<b class='flag-5'>看門(mén)狗</b>WWDG)

    uC/OS-II 系統(tǒng)的多任務(wù)看門(mén)狗設(shè)計(jì)

    在嵌入式系統(tǒng)中為提高微型機(jī)系統(tǒng)的可靠性和安全性, 常用的方法就是使用看門(mén)狗看門(mén)狗硬件看門(mén)狗軟件看門(mén)
    發(fā)表于 11-30 06:39 ?775次閱讀

    軟件看門(mén)狗硬件看門(mén)狗的作用和區(qū)別

    就來(lái)看看軟硬件看門(mén)狗區(qū)別。  看門(mén)狗,又叫 watchdog timer,是一個(gè)定時(shí)器電路, 一般有一個(gè)輸入,叫喂狗,一個(gè)輸出到MCU的RST端,M
    的頭像 發(fā)表于 10-15 17:29 ?4w次閱讀

    基于STM32、FreeRTOS 實(shí)現(xiàn)硬件看門(mén)狗+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)的方法

    基于STM32、FreeRTOS實(shí)現(xiàn)硬件看門(mén)狗+軟件看門(mén)狗監(jiān)測(cè)多任務(wù)的方法
    的頭像 發(fā)表于 03-12 10:11 ?9815次閱讀

    MCU獨(dú)立看門(mén)狗與窗口看門(mén)狗的區(qū)別

    早期的MCU沒(méi)有看門(mén)狗,就容易引起有些產(chǎn)品死機(jī)了不能重啟工作。為了避免這個(gè)問(wèn)題,后期的MCU在內(nèi)部集成了看門(mén)狗的功能。為了滿足更多使用場(chǎng)景,現(xiàn)在很多
    發(fā)表于 10-28 20:06 ?8次下載
    <b class='flag-5'>MCU</b>獨(dú)立<b class='flag-5'>看門(mén)狗</b>與窗口<b class='flag-5'>看門(mén)狗</b>的區(qū)別

    STM32中的獨(dú)立看門(mén)狗和窗口看門(mén)狗

    一、前言 在早期的MCU中是沒(méi)有看門(mén)狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門(mén)狗的功能。但是目前
    的頭像 發(fā)表于 12-22 16:58 ?2416次閱讀

    STM32中的獨(dú)立看門(mén)狗和窗口看門(mén)狗

    在早期的MCU中是沒(méi)有看門(mén)狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門(mén)狗的功能。但是目前看門(mén)
    的頭像 發(fā)表于 01-30 14:38 ?1562次閱讀
    STM32中的獨(dú)立<b class='flag-5'>看門(mén)狗</b>和窗口<b class='flag-5'>看門(mén)狗</b>

    MCU如何集成看門(mén)狗的功能

    一、前言 在早期的MCU中是沒(méi)有看門(mén)狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門(mén)狗的功能。但是目前
    的頭像 發(fā)表于 06-22 09:09 ?2070次閱讀
    <b class='flag-5'>MCU</b>如何集成<b class='flag-5'>看門(mén)狗</b>的功能

    軟件看門(mén)狗硬件看門(mén)狗的區(qū)別

    軟件看門(mén)狗硬件看門(mén)狗都是用于監(jiān)控系統(tǒng)崩潰的工具,它們的作用是在系統(tǒng)出現(xiàn)故障或異常情況時(shí)自動(dòng)恢復(fù)系統(tǒng)。 ?軟件
    的頭像 發(fā)表于 04-16 15:10 ?1446次閱讀
    主站蜘蛛池模板: 一个人看aaaa免费中文 | 男人免费看片 | 四虎在线最新地址4hu | 熊出没之环球大冒险旧版免费观看 | 主人扒开腿揉捏花蒂调教cfh | 国产大片免费观看资源 | 黄色片香蕉视频 | 韩国黄色三级视频 | 久久免费精品高清麻豆 | 717影院理论午夜伦不卡久久 | 韩国成人毛片aaa黄 韩国床戏合集三小时hd中字 | 亚洲国产精品乱码一区二区三区 | 女人张开双腿让男人桶爽免 | 五月婷婷综合在线 | 欧美一区二区三区在线观看免费 | 思思99re66在线精品免费观看 | 日本jlzz | 欧美午夜视频一区二区 | 久久婷婷丁香七月色综合 | 手机看片免费福利 | 色偷偷.com | 国产ar高清视频+视频 | 国产精品推荐天天看天天爽 | 午夜精品久久久久久毛片 | 四虎国产视频 | 97色在线视频观看香蕉 | 你懂的在线视频网站 | 国产精品久久久香蕉 | 性欧美欧美之巨大69 | 成人女人a毛片在线看 | 欧美一级欧美一级高清 | 婷婷色在线观看 | 欧美成人一区二区三区在线视频 | 龙口护士门91午夜国产在线 | 91亚洲国产成人久久精品网站 | 久久综合99 | 在线视免费频观看韩国aaa | 天天干天天爽天天操 | 日韩一级片视频 | 女人张开腿 让男人桶个爽 免费观看 | 成人涩涩网站 |