STM32F0xx_看門狗(獨立+視窗)配置詳細過程
Ⅰ、概述
對於看門狗,我覺得做微控制器或者嵌入式開發的人員來說並不陌生,今天總結STM32F0看門狗的功能,F0的看門狗有兩種:獨立和視窗看門狗。
今天提供兩種看門狗的軟體工程例項,供大家下載。
兩種看門狗各有各的特點,應用在不同的場合,下面將分別簡單總結一下獨立和視窗看門狗的功能。
本著免費分享的原則,方便大家手機學習知識,每天在微信分享技術知識。如果你覺得分享的內容對你有用,又想了解更多相關的文章,請用微信搜尋“EmbeddDeveloper” 或者掃描下面二維碼、關注,將有更多精彩內容等著你。
Ⅱ、下載
文章提供的“軟體工程”都是在硬體板子上進行多次測試、並保證沒問題才上傳至360雲盤,請放心下載測試,如有問題請檢查一下你的板子是否有問題。
ST標準外設庫和參考手冊、資料手冊等都可以在ST官網下載,你也可以到我的360雲盤下載。關於F0系列晶片的參考手冊有多個版本(針對F0不同晶片),但有一個通用版本,就是“STM32F0x128參考手冊V8(英文)2015-07”建議參考該手冊,以後如果你換用一種型號晶片也方便了解。
今天的軟體工程下載地址(360雲盤):
IWDG獨立看門狗:
WWDG視窗看門狗:
STM32F0xx的資料可以在我360雲盤下載:
Ⅲ、準備工作
對於看門狗的程式設計,建議大家準備F0的參考手冊和資料手冊,方便查閱相關知識,沒有的請到ST官網或到我360雲盤下載。
今天總結的軟體工程是基於“TIM基本延時配置詳細過程”修改而來,因此需要將該軟體工程下載準備好。我每次都是提供整理好的軟體工程供大家下載,但是,如果你是一位學習者,建議自己親手一步一步操作。
Ⅳ、看門狗原理
①IWDG獨立看門狗
獨立看門狗由內部低速時鐘LSI提供計數時鐘,8 位分頻,12位計數,需要定期喂狗(過載數值 ReloadCounter),如果計數值減為0了,還沒有過載數值,則會響應復位事件。
②WWDG視窗看門狗
視窗看門狗由APB1(RCC_APB1Periph_WWDG)提供計數時鐘,2 位分頻,7位計數,需要定期喂狗(更新計數值),如果計數值減為0x40了,還未更新計數值,則會響應復位事件。
Ⅴ、程式碼描述
今天提供兩種看門狗軟體工程,下面分別來總結一下,主要講解配置的函式介面。
①IWDG獨立看門狗
該函式位於main.c檔案上面;
過載數值的計算請結合上面的結構框圖配合函式原始碼,從函式中可以看的出來,只要0.5s。
執行效果:
喂狗最大時間500ms(理論值),但內部低速時鐘LSI存在誤差,建議修改測試時間:小於450,大於550;
小於450ms: 正常喂狗,串列埠間隔列印"Running..."LED變化;
大於550ms: 喂狗超時,系統復位,串列埠列印"System Reset..."
②WWDG視窗看門狗
該函式位於main.c檔案上面;
這裡的時鐘和上面IWDG的時鐘不同,結合框圖也看得出了經過分頻之後計數的值也是計算的出來的。
執行效果:
喂狗最大時間43ms(理論值),但串列埠列印需要一兩毫秒,建議修改測試時間:小於41,大於43;
小於41ms: 正常喂狗,串列埠間隔列印"Running..."LED變化;
大於43ms: 喂狗超時,系統復位,串列埠列印"System Reset..."
③總結一下二者的區別
1)、IWDG使用內部低速時鐘LSI,WWDG使用系統時鐘APB1ENR
2)、IWDG沒有中斷,WWDG有中斷
3)、IWDG是12位遞減的。WWDG是7位遞減的
4)、IWDG只有下限,WWDG有下限和上限
5)、IWDG最適合應用於那些需要看門狗作為一個在主程式之外,能夠完全獨立工作,並且對時間精度要求較低的場合。 WWDG最適合那些要求看門狗在精確計時視窗起作用的應用程式。
看門狗在長期工作的產品中用到比較多,作用很簡單,防止宕機。看門狗的功能也可用於定時計數等。
Ⅵ、說明
或許你硬體晶片不是提供工程裡面的晶片,但是STM32F0的晶片軟體相容性很好,可以適用於F0其他很多型號的晶片,甚至是F2、F4等晶片上(具體請看手冊、或者親自測試)。
本文章提供的軟體工程是基於ST標準外設庫為基礎建立而成,而非使用STM32CubeMX建立工程。個人覺得使用ST的標準外設庫適合與學習者,STM32CubeMX建立工程結構複雜,對於學習者,特別是初學者估計會頭疼。
今天的工程是基於工程“STM32F0xx_TIM基本延時配置詳細過程”修改而來,以上例項總結僅供參考,若有不對之處,敬請諒解。
Ⅶ、最後
關注微信,回覆“更多內容”,將獲得更多內容(如:UCOS例項等,不斷更新中......)。
如果你喜歡我分享的內容,你又想了解更多相關內容,請關注文章開頭的微信公眾號,新內容持續更新中,後期將會有更多精彩內容出現。
相關推薦
STM32F0xx_看門狗(獨立+視窗)配置詳細過程
Ⅰ、概述 對於看門狗,我覺得做微控制器或者嵌入式開發的人員來說並不陌生,今天總結STM32F0看門狗的功能,F0的看門狗有兩種:獨立和視窗看門狗。 今天提供兩種看門狗的軟體工程例項,供大家下載。 兩種看門狗各有各的特點,應用在不同的場合,下面將分別簡單總結一下獨立和視窗看門
STM32F1_WDG看門狗(獨立+視窗)
前言 今天總結“STM32F103 WDG看門狗”,STM32F1有兩個看門狗,IWDG獨立看門狗和WWDG視窗看門狗,今天將兩個看門狗一併總結了。 總結一下二者的區別: 1)、IWDG使用內部低速時鐘LSI,WWDG使用系統時鐘APB1ENR 2)、IWDG沒有中斷,WW
STM32F030C6看門(獨立+視窗)狗詳細配置
1、(IWDG獨立看門狗) 獨立看門狗由內部低速時鐘LSI提供計數時鐘,8 位分頻,12位計數,需要定期喂狗(過載數值 ReloadCounter),如果計數值減為0了,還沒有過載數值,則會響應復位事件。 獨立看門狗的配置程式碼: 總結:在1.6s內喂狗正常執行
看門狗(獨立看門狗)與視窗看門狗的區別!
看門狗(獨立看門狗)與視窗看門狗的區別 在cortex-M系列晶片上有兩個看門狗:看門狗(獨立看門狗)和視窗看門狗。 1、相同點  
stm32 看門狗(HAL庫)
(一)概述 stm32有兩個看門狗:硬體看門狗(LSI 40KHz)和視窗看門狗(APB1)。 (二)硬體看門狗實現程式碼 IWDG_HandleTypeDef hiwdg; // 硬體看門狗初始化 static void MX_IWDG_Init(IWDG_Hand
VMware Tools (ubuntu系統)安裝詳細過程與使用
前一段時間博主在VMware虛擬機器上安裝了Ubuntu系統,如果還沒有安裝的同學可以參考博主上一篇文章:VMware Ubuntu安裝詳細過程。 猿友們都知道linux不太好用,如果你想將你主機Windows上的檔案或安裝包放到虛擬機器上,VMware Tools是必
VMware Tools (ubuntu系統)安裝詳細過程與使用(適合沒有linux基礎的)
下面我們快捷鍵Ctrl+Alt+T,啟動命令框,然後切換到root使用者(切換命令為:sudo su,回車然後會提示你輸入當前登入使用者的密碼,輸入成功後即可進入root使用者): 在執行完sudo
STM32F1小白系列之四、獨立看門狗(IWDG)
一、看門狗原理 1、微控制器中有一個【暫存器(計數器)】專門用來倒計數,這個計數器倒計數是獨立於程式之外的,不受程式影響的。(程式是井,計數器是河,井水不犯河水,你跑你的程式,我記我的數,互不影響。) 2、但是: 這個【計數器】會有一個初值,這個值會逐次遞
Jetty入門(1-2)配置Jetty - 獨立運行模式
https monitored log www rtu mon 方式 新版本 demo 本文詳述如何安裝和配置Jetty服務器,主要講述Jetty的獨立運行模式(Standalone)。隨後介紹它的配置選項,以及模塊化的架構。 Jetty有獨立運行模式、嵌入運行模式和J
基於S3C2440的嵌入式Linux驅動——看門狗(watchdog)驅動解讀
csdn note 動作 strong 申請 信號 error started 讀者 本文將介紹看門狗驅動的實現。 目標平臺:TQ2440 CPU:s3c2440 內核版本:2.6.30 1. 看門狗概述 看門狗其實就是一個定時器,當該定時器溢出前必須對看門狗進
STM32 嵌入式學習入門 —— 視窗看門狗 & 獨立看門狗
STM32的視窗看門狗 & 獨立看門狗 一、看門狗概述: 1.為什麼需要看門狗? 在由微控制器構成的微型計算機系統中,由於微控制器的工作常常會受到來自外界電磁場的干擾,造成程式的跑飛,而陷入死迴圈,程式
試用vSphere 6(三):安裝vCenter 6(獨立資料庫)之:vCenter安裝與配置
—————————————————————————————————————————- 一、VMware vSphere 6(RC版)安裝配置系列文章: 三、整個實驗環境如下: 資料中心名稱:DataCenter ESXi叢集名稱:Cluster 域:vsp
哈爾濱理工大學第七屆程式設計競賽初賽(高年級組)F.苦逼單身狗(滑動視窗 or DP or 二分)
思路:滑動視窗 or DP or 二分。滑動視窗:#include <bits/stdc++.h> using namespace std; const int MAXN = 100005;
視窗看門狗和獨立看門狗區別
最近在cortex-M系列晶片上進行看門狗程式設計的時候發現了關於看門狗有兩個:(獨立)看門狗和視窗看門狗。然後就查找了下網路資源,對這兩個看門狗做了區分。1、相同點 都是為了保證CPU程式跑飛2、獨立看門狗 根據內部看門狗時鐘頻率,裝載暫存器定一個時間值,比如是
openstack controller ha測試環境搭建記錄(十四)——配置cinder(存儲節點)
nbsp 設置 ntp reason script snap rate 文件 esc 先簡述cinder存儲節點的配置: 1、IP地址是10.0.0.41; 2、主機名被設置為block1; 3、所有節點的hosts文件已添加相應條目; 4、已經配置了ntp時間同
openstack controller ha測試環境搭建記錄(十一)——配置neutron(網絡節點)
efault delete none _for set ext ranges tar edr 在網絡節點配置內核參數:vi /etc/sysctl.confnet.ipv4.ip_forward=1net.ipv4.conf.all.rp_filter=0net.ipv4.
紅帽7(centos 7)配置VSFTP
ftp centos 老唐 紅帽7(centos 7)配置vsftp laotang VSFTP是一個基於GPL發布的類Unix系統上使用的FTP服務器軟件,它的全稱是Very Secure FTP 從此名稱可以看出來,編制者的初衷是代碼的安全。它是一個安全、高速、穩定的FTP服務器。vs
Nginx配置文件(nginx.conf)配置詳解
最好 緩沖區 網絡io dev mp3 forward val eight 超時 Nginx的配置文件nginx.conf配置詳解如下: user nginx nginx ; Nginx用戶及組:用戶 組。window下不指定 worker_process
spring-boot-starter-actuator(健康監控)配置和使用
frame maven git 追蹤 包括 屬性 per dump zookeepe 在生產環境中,需要實時或定期監控服務的可用性。Spring Boot的actuator(健康監控)功能提供了很多監控所需的接口,可以對應用系統進行配置查看、相關功能統計等。 集成:
[轉載]nginx負載均衡+keepalived三主(多主)配置
rtu bucket 次數 with 信息 .gz plain int x86_64 nginx負載均衡+keepalived三主(多主)配置 1.實驗環境,實現目標三臺主機分別配置nginx負載均衡對後端多臺主機做轉發,同時配置keepalived實現HA,保證任意主機出