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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > avr單片機(jī)看門狗初始化配置及說明

          avr單片機(jī)看門狗初始化配置及說明

          作者: 時(shí)間:2016-11-18 來源:網(wǎng)絡(luò) 收藏
          MCU 控制和狀態(tài)寄存器-MCUCSR

          MCU 控制和狀態(tài)寄存器提供了有關(guān)引起 MCU 復(fù)位的復(fù)位源的信息。

          Bit 7 6 5 4 3 2 1 0

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

          JTD ISC2 – JTRF WDRF BORF EXTRF PORF MCUCSR

          讀 / 寫 R/W R/W R R/W R/W R/W R/W R/W

          初始值 0 0 0 參見各個(gè)位的說明

          * Bit 4 – JTRF: JTAG 復(fù)位標(biāo)志

          通過 JTAG 指令 AVR_RESET 可以使 JTAG 復(fù)位寄存器置位,并引發(fā) MCU 復(fù)位,并使
          JTRF 置位。上電復(fù)位將使其清零,也可以通過寫 ”0” 來清除。

          * Bit 3 – WDRF: 看門狗復(fù)位標(biāo)志

          看門狗復(fù)位發(fā)生時(shí)置位。上電復(fù)位將使其清零,也可以通過寫 ”0” 來清除。

          * Bit 2 – BORF: 掉電檢測(cè)復(fù)位標(biāo)志

          掉電檢測(cè)復(fù)位發(fā)生時(shí)置位。上電復(fù)位將使其清零,也可以通過寫 ”0” 來清除。

          * Bit 1 – EXTRF: 外部復(fù)位標(biāo)志

          外部復(fù)位發(fā)生時(shí)置位。上電復(fù)位將使其清零,也可以通過寫 ”0” 來清除。

          * Bit 0 – PORF: 上電復(fù)位標(biāo)志

          上電復(fù)位發(fā)生時(shí)置位。只能通過寫 ”0” 來清除。

          為了使用這些復(fù)位標(biāo)志來識(shí)別復(fù)位條件,用戶應(yīng)該盡早讀取此寄存器的數(shù)據(jù),然后將其復(fù)
          位。如果在其他復(fù)位發(fā)生之前將此寄存器復(fù)位,則后續(xù)復(fù)位源可以通過檢查復(fù)位標(biāo)志來了
          解。


          看門狗定時(shí)器控制寄存器-
          WDTCR

          Bit 7 6 5 4 3 2 1 0

          – – – WDTOE WDE WDP2 WDP1 WDP0

          * Bits 7..5 – Res: 保留位

          ATmega16 保留位,讀操作返回值為零。

          * Bit 4 – WDTOE: 看門狗修改使能

          清零 WDE 時(shí)必須置位 WDTOE ,否則不能禁止看門狗。一旦置位,硬件將在緊接的4 個(gè)
          時(shí)鐘周期之后將其清零。請(qǐng)參考有關(guān) WDE 的說明來禁止看門狗。

          * Bit 3 – WDE: 使能看門狗

          WDE 為 "1“ 時(shí),看門狗使能,否則看門狗將被禁止。只有在WDTOE 為 "1“ 時(shí)WDE 才能清
          零。以下為關(guān)閉看門狗的步驟:

          1. 在同一個(gè)指令內(nèi)對(duì) WDTOE 和 WDE 寫 "1“ ,即使WDE 已經(jīng)為 "1“

          2. 在緊接的 4 個(gè)時(shí)鐘周期之內(nèi)對(duì) WDE 寫 "0”

          * Bits 2..0 – WDP2, WDP1, WDP0: 看門狗定時(shí)器預(yù)分頻器 2, 1 和 0

          WDP2、 WDP1 和 WDP0 決定看門狗定時(shí)器的預(yù)分頻器,如 Table 17 所示。

          Table 17. 看門狗定時(shí)器預(yù)分頻器選項(xiàng)

          VCC = 3.0V 時(shí)典型 VCC = 5.0V 時(shí)典型
          WDP2 WDP1 WDP0 看門狗振蕩器周期 的溢出周期 的溢出周期

          0 0 0 16K (16,384) 17.1 ms 16.3 ms

          0 0 1 32K (32,768) 34.3 ms 32.5 ms

          0 1 0 64K (65,536) 68.5 ms 65 ms

          0 1 1 128K (131,072) 0.14 s 0.13 s

          1 0 0 256K (262,144) 0.27 s 0.26 s

          1 0 1 512K (524,288) 0.55 s 0.52 s

          1 1 0 1,024K (1,048,576) 1.1 s 1.0 s

          1 1 1 2,048K (2,097,152) 2.2 s 2.1 s

          #include
          #include
          ///#pragma interrupt_handler WDT_over:iv_RESET
          unsigned char f_WDT=0;
          void WDT_OFF(void)
          {
          /* WDT復(fù)位*/
          _WDR();

          /*修改看門狗使能時(shí)必須先要同時(shí) 置位WDTOE 和 WDE,然后對(duì)寫0禁用看門狗*/
          WDTCR |= (1</* WDT */
          WDTCR = 0x00;
          }
          void WDT_ON(unsigned char t)
          {//在5v的電源下,t為0-8時(shí),看門狗定時(shí)器的溢出時(shí)間分別16.3ms,32.5ms,65ms,0.13s,0.26s,0.52s,1s,2.1s。
          //*修改看門狗使能時(shí)必須先要同時(shí) 置位WDTOE 和 WDE
          WDTCR |= (1<//WDTCR =1<WDTCR=t|(1<}
          void WDT_over(void)
          {f_WDT++;
          MCUCSR&=~(1<}



          評(píng)論


          技術(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); })();