您好,歡迎訪問上海意泓電子科技有限責任公司網(wǎng)站!
      4新聞資訊
      您的位置: 首頁 ->  新聞資訊 -> 單片機

      ?STM32之獨立看門狗原理

      文章出處:單片機 責任編輯:上海意泓電子科技有限責任公司 發(fā)表時間:
      2020
      11-10

      STM32的獨立看門狗由內(nèi)部專門的40Khz低速時鐘驅(qū)動,即主時鐘發(fā)生故障,它也仍然有效,這里我們需要注意獨立看門狗的時鐘不是準確的40Khz,二是在30~60Khz之間變化的一個時鐘,只是我們估算以40Khz來計算,看門狗對時間要求不是很青雀,時鐘有點偏差還是可以接受的。

      獨立看門狗相關(guān)的幾個寄存器

      1.1. 鍵值寄存器(IWDG_KR)

      寄存器各位描述如下:

      獨立看門狗工作原理:在鍵值寄存器(IWDG_KR)中寫入0XCCCC,開始啟用獨立看門狗,此時計數(shù)器開始從其復(fù)位值OXFFF遞減計數(shù),當計數(shù)器計數(shù)到末尾0X000的時候,會產(chǎn)生一個復(fù)位信號(IWDG_RESET),無論何時,只要寄存器IWDG_KR中被寫入0XAAAA,IWDG_RLR中的值就會被重新加載到計數(shù)器中從而避免產(chǎn)生看門狗復(fù)位。

      預(yù)分頻寄存器(IWDG_PR)和重載寄存器(IWDG_RLR)的寫保護  :IWDG_PR和IWDG_RLR寄存器具有寫保護功能,要想修改這兩個寄存器的值,首先要向IWDG_KR中寫入0X5555。以不同的值寫入這個寄存器或者重裝載(寫入0XAAAA)都會重新啟動寫保護。

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

      該寄存器是用來設(shè)置看門狗的時鐘分頻系數(shù),最低為4,最高位256,雖然是32位寄存器,我們只使用了最低3位,其他保留,預(yù)分頻寄存器各位定義如下:

      1.3. 計數(shù)重裝載寄存器(IWDG_RLR)

      該寄存器保存重裝載計數(shù)器中的值,32位寄存器,我們只使用了低12位有效,寄存器描述如下:

      2. 獨立看門狗啟動過程

      這樣,只要我們對以上三個寄存器進行相應(yīng)設(shè)置,我們就可以啟動STM32獨立看門狗了,啟動過程如下:

      2.1. 1、向IWDG_KR中吸入0X5555

      通過這一步我們?nèi)∠薎WDG_PR和IWDG_RLR的寫保護,下一步我們設(shè)置他們初值。

      設(shè)置IWDG_PR和IWDG_RLR的初值。

      我們計算一下看門狗的喂狗時間(看門狗溢出時間)計算公式

      Tout=((4*2^prer)*rlr)/40

       其中Tout就是看門狗溢出時間(單位ms),prer是看門狗時鐘預(yù)分頻值(IWDG_PR值),范圍為0~7,rlr位看門狗重載值(IWDG_RLR)。比如我們設(shè)置prer為4,rlr的值為625,我們就可以計算得到Tout=64*625/40=1000ms,這樣,看門狗的溢出時間就是1S,只要在這一秒鐘內(nèi),有一次吸入0XAAAA到IWDG_KR,就不會導致看門狗復(fù)位(寫入多次也是可以的)(由于看門狗的時鐘不是準確40Khz,所以喂狗不要太晚,以免發(fā)生看門狗復(fù)位)。

      2.2. 2、向IWDG_KR中寫入0XAAAA

      通過這句可以將重載寄存器(IWDG_RLR)中的計數(shù)初值載入到看門狗計數(shù)器中(也可以時鐘該命令喂狗)。

      2.3. 3、向IWDG_KR中寫入0XCCCC

      通過這句我們就啟動了STM32的看門狗了,使能了看門狗,在程序里面我們就必須間隔一定的時間就喂狗,否則導致程序復(fù)位,利用這一點,我們通過一個LED來指示是否復(fù)位,驗證獨立看門狗。

      STM32中看門狗核心在芯片內(nèi)部,不需要外部電路,這里我們使用到了外部電路中的2個IO口,一個用來輸入喂狗信號,一個用來指示程序是否復(fù)位,喂狗使用WK_UP按鍵,程序重啟指示使用DS0。


      上海意泓電子科技有限責任公司 版權(quán)所有 未經(jīng)授權(quán)禁止復(fù)制或鏡像

      CopyRight 2020-2025 www.topsschool.com All rights reserved   滬ICP備2021005866號

      亚洲精品无码va人在线观看,少妇 逼小 水多,国产区免费av,国产精品无码观看

          国产成人一区二区三区| 91香蕉精品国产线观看免费| 99精品欧美一区二区三区综合在线| 91人妻丰满熟妇Aⅴ无码| 精品国产福利拍拍拍| 无码h动漫精品免费播放| 欧美日韩国产一区二区三区综合视频在线看| 办公室被吃奶好爽在线观看视频| 精品无码一二三四区| 国产无遮挡无码视频在线观看| 午夜精品一区二区三区免费视频| 日韩无码精品三级无码| 在线无码中文字幕一区| 一级AV在线免费播放| 亚洲日韩在线高清96| 日本按摩高潮a级中文片| 亚洲日产精品一二三四区新增区域| 亚洲精品动漫在线线观看人| 1313午夜精品理论片| 亚洲视频在线看| 国产精品无码加勒比在线| 久久亚洲白丝精品无码自慰| 亚洲成aⅴ人在线电影| 中文字幕有码人妻少妇| 在线免费观看黄| 一级毛片免费完整国语视频| 911国产在线观看一本| 九九久久精品| 久久精品毛片免费不卡|