无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

STM32學(xué)習(xí)——獨(dú)立看門狗

2023-06-26 23:09 作者:新芯-電子設(shè)計(jì)  | 我要投稿

為什么需要看門狗?

在由單片機(jī)構(gòu)成的微型計(jì)算機(jī)系統(tǒng)中,由于單片機(jī)的工作常常會(huì)受到來自外界電磁場(chǎng)的干擾,造成程序的跑飛,而陷入死循環(huán),程序的正常運(yùn)行被打斷,由單片機(jī)控制的系統(tǒng)無法繼續(xù)工作,會(huì)造成整個(gè)系統(tǒng)陷入停滯狀態(tài),發(fā)生不可預(yù)料的后果。所以出于對(duì)單片機(jī)運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè)的考慮,便產(chǎn)生了一種專門用于檢測(cè)單片機(jī)程序運(yùn)行狀態(tài)的模塊或者芯片,俗稱“看門狗”(watchdog)。

看門狗解決的問題是什么?

在啟動(dòng)正常運(yùn)行的時(shí)候,系統(tǒng)不能復(fù)位。

在系統(tǒng)跑飛(程序異常執(zhí)行)的情況,系統(tǒng)復(fù)位,程序重新執(zhí)行。

?

STM32內(nèi)置兩個(gè)看門狗

獨(dú)立看門狗(IWDG)由專用的低速時(shí)鐘(LSI)驅(qū)動(dòng),即使主時(shí)鐘發(fā)生故障它仍有效。

獨(dú)立看門狗適合應(yīng)用于需要看門狗作為一個(gè)在主程序之外能夠完全獨(dú)立工作,并且對(duì)時(shí)間精度要求低的場(chǎng)合。

窗口看門狗由從APB1時(shí)鐘分頻后得到時(shí)鐘驅(qū)動(dòng)。通過可配置的時(shí)間窗口來檢測(cè)應(yīng)用程序非正常的過遲或過早操作。

窗口看門狗最適合那些要求看門狗在精確計(jì)時(shí)窗口起作用的程序。

獨(dú)立看門狗功能描述

  • 在鍵值寄存器(IWDG_KR)中寫入0xCCCC,開始啟用獨(dú)立看門狗。此時(shí)計(jì)數(shù)器開始從其復(fù)位值0xFFF遞減,當(dāng)計(jì)數(shù)器值計(jì)數(shù)到尾值0x000時(shí)會(huì)產(chǎn)生一個(gè)復(fù)位信號(hào)(IWDG_RESET)。

  • 無論何時(shí),只要在鍵值寄存器IWDG_KR中寫入0xAAAA(通常說的喂狗),自動(dòng)重裝載寄存器IWDG_RLR的值就會(huì)重新加載到計(jì)數(shù)器,從而避免看門狗復(fù)位

  • 如果程序異常,就無法正常喂狗,從而系統(tǒng)復(fù)位。

獨(dú)立看門狗框圖


鍵值寄存器IWDG_KR:0~15位有效。

預(yù)分頻寄存器IWDG_PR:0~2位有效。具有寫保護(hù)功能,要操作先取消寫保護(hù)

重裝載寄存器IWDG_RLR:0~11位有效。具有寫保護(hù)功能,要操作先取消寫保護(hù)

狀態(tài)寄存器IWDG_SR:0~1位有效。

鍵寄存器(IWDG_KR)

預(yù)分頻寄存器(IWDG_PR)

因此,只有當(dāng)IWDG_SR寄存器的PVU位為0時(shí),讀出的值才有效。

重裝載寄存器(IWDG_RLR)

因此,只有當(dāng)IWDG_SR寄存器的PVU位為0時(shí),讀出的值才有效。

狀態(tài)寄存器(IWDG_SR)

預(yù)分頻值只有在PVU位被清“0”后才可更新。

獨(dú)立看門狗超時(shí)時(shí)間

超時(shí)時(shí)間的公式為


超時(shí)公式


Tout:超時(shí)時(shí)間

PR:IWDG_PR寄存器中位[2:0]的十進(jìn)制值

RLR:重裝載寄存器IWDG_RLR所對(duì)應(yīng)的重裝載數(shù)值(比如最短裝載值1,最長(zhǎng)裝載值0xFFF)。

?

??????????????????????


STM32學(xué)習(xí)——獨(dú)立看門狗的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
寻乌县| 德昌县| 盘锦市| 环江| 依兰县| 临海市| 桂阳县| 滦平县| 凯里市| 洛隆县| 调兵山市| 元朗区| 江口县| 鹤岗市| 昌吉市| 沂源县| 秦安县| 海宁市| 隆昌县| 吐鲁番市| 高安市| 永兴县| 老河口市| 侯马市| 普陀区| 盐边县| 共和县| 明星| 五原县| 上虞市| 建水县| 巴林右旗| 崇文区| 乌什县| 柞水县| 巴彦淖尔市| 富平县| 三原县| 基隆市| 巩留县| 获嘉县|