<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32---IWDG獨(dú)立看門狗的使用

          STM32---IWDG獨(dú)立看門狗的使用

          作者: 時(shí)間:2016-12-02 來源:網(wǎng)絡(luò) 收藏
          獨(dú)立看門狗(IWDG)由專用的40kHz的低速時(shí)鐘驅(qū)動(dòng),

          即使主時(shí)鐘發(fā)生故障它也仍然有效。
          窗口看門狗由從APB1時(shí)鐘分頻后得到的時(shí)鐘驅(qū)動(dòng),
          通過可配置的時(shí)間窗口來檢測應(yīng)用程序非正常的過遲或過早的操作。

          本文引用地址:http://www.ex-cimer.com/article/201612/325024.htm

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

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

          IWDG主要性能
          ●自由運(yùn)行的遞減計(jì)數(shù)器
          ●時(shí)鐘由獨(dú)立的RC振蕩器提供(可在停止和待機(jī)模式下工作)
          ●看門狗被激活后,則在計(jì)數(shù)器計(jì)數(shù)至0x000時(shí)產(chǎn)生復(fù)位

          在鍵寄存器(IWDG_KR)中寫入0xCCCC,開始啟用獨(dú)立看門狗;
          此時(shí)計(jì)數(shù)器開始從其復(fù)位值0xFFF遞減計(jì)數(shù)。
          當(dāng)計(jì)數(shù)器計(jì)數(shù)到末尾0x000時(shí),會(huì)產(chǎn)生一個(gè)復(fù)位信號(IWDG_RESET)。
          無論何時(shí),只要鍵寄存器IWDG_KR中被寫入0xAAAA,
          IWDG_RLR中的值就會(huì)被重新加載到計(jì)數(shù)器中從而避免產(chǎn)生看門狗復(fù)位 。


          如果用戶在選擇字節(jié)中啟用了“硬件看門狗“功能,
          在系統(tǒng)上電復(fù)位后,看門狗會(huì)自動(dòng)開始運(yùn)行;
          如果在計(jì)數(shù)器計(jì)數(shù)結(jié)束前,若軟件沒有向鍵寄存器寫入相應(yīng)的值,
          則系統(tǒng)會(huì)產(chǎn)生復(fù)位寄存器訪問保護(hù)


          IWDG_PR和IWDG_RLR寄存器具有寫保護(hù)功能。
          要修改這兩個(gè)寄存器的值,必須先向IWDG_KR寄存器中寫入0x5555。
          以不同的值寫入這個(gè)寄存器將會(huì)打亂操作順序,寄存器將重新被保護(hù)。
          重裝載操作(即寫入0xAAAA)也會(huì)啟動(dòng)寫保護(hù)功能。
          狀態(tài)寄存器指示預(yù)分頻值和遞減計(jì)數(shù)器是否正在被更新。

          //啟動(dòng)獨(dú)立看門狗
          IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //訪問之前要首先使能寄存器寫

          IWDG_SetPrescaler(IWDG_Prescaler_64);//64分頻 一個(gè)周期1.6ms
          IWDG_SetReload(800);//最長12位 [0,4096] 800*1.6=1.28S
          /* Reload IWDG counter */
          IWDG_ReloadCounter();
          IWDG_Enable();// Enable IWDG (the LSI oscillator will be enabled by hardware)

          因?yàn)楠?dú)立看門狗使用的是LSI,所以最好程序啟動(dòng)的時(shí)候,使時(shí)鐘源穩(wěn)定:

          /* LSI的啟動(dòng)*/
          RCC_LSICmd(ENABLE);//打開LSI
          while(RCC_GetFlagStatus(RCC_FLAG_LSIRDY)==RESET);//等待直到LSI穩(wěn)定



          關(guān)鍵詞: STM32IWDG獨(dú)立看門

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();