新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > stm32 獨立看門狗

        stm32 獨立看門狗

        作者: 時間:2016-11-17 來源:網(wǎng)絡 收藏
        獨立看門狗(IWDG)由專用的低速時鐘(LSI)驅動,即使主時鐘發(fā)生故障它也仍然有效。IWDG最適合應用于那些需要看門狗作為一個在主程序之外,能夠完全獨立工作,并且對時間精度要求較低的場合。WWDG最適合那些要求看門狗在精確計時窗口起作用的應用程序。”
        /*
        * 采用獨立看門狗作為看門狗定時器
        * 獨立看門狗由內部專門的 40Khz 低速時鐘驅動,
        * 即使主時鐘發(fā)生故障,它也仍然有效
        *000:預分頻因子=4 // 最短時間 0.1 ms
        *001:預分頻因子=8 // 最短時間 0.2 ms
        *010:預分頻因子=16 // 最短時間 0.4 ms
        *011:預分頻因子=32 // 最短時間 0.8 ms
        *100:預分頻因子=64 // 最短時間 1.6 ms
        *101:預分頻因子=128 // 最短時間 3.2 ms
        *110:預分頻因子=256 // 最短時間 6.4 ms
        *111:預分頻因子=256 //
        */
        初始化,并且啟動看門狗
        void IWDG_Initial(void)
        {
        IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //①使能對寄存器 I 寫操作
        IWDG_SetPrescaler(IWDG_Prescaler_16); //②設置 IWDG 預分頻值:設置 IWDG 預分頻值
        IWDG_SetReload(0xFFF); //②設置 IWDG 重裝載值 定時時間1638.4ms
        IWDG_ReloadCounter(); //③按照 IWDG 重裝載寄存器的值重裝載 IWDG 計數(shù)器
        IWDG_Enable(); //④使能 IWDG
        }
        IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//使能寫入PR和RLR
        主程序中喂狗
        void main void
        {
        while(1)
        {
        IWDG_ReloadCounter();// 喂狗 1.6 s的看門狗
        }
        }


        關鍵詞: stm32獨立看門

        評論


        技術專區(qū)

        關閉
        主站蜘蛛池模板: 山西省| 大理市| 兰坪| 鸡西市| 五河县| 千阳县| 崇仁县| 桓仁| 通州市| 章丘市| 美姑县| 中方县| 梁河县| 潮州市| 栖霞市| 晋中市| 阿拉善左旗| 陆河县| 大丰市| 宁武县| 兰坪| 湖南省| 岢岚县| 德阳市| 七台河市| 台北县| 浏阳市| 门头沟区| 大竹县| 宁河县| 松滋市| 措美县| 海阳市| 拉萨市| 外汇| 荔浦县| 台江县| 连山| 平乡县| 太仆寺旗| 勃利县|