新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PIC看門狗定時器WDT(watch dog timer)的理解

        PIC看門狗定時器WDT(watch dog timer)的理解

        作者: 時間:2013-05-30 來源:網絡 收藏

        pic單片機計時器(Watch Dog Timer)是一個片內自振式的RC振蕩計時器,無需任何的外接元件。這意味著即使芯片OSC1/OSC2上振蕩停止了(例如執行指令SLEEP后),照樣保持計時。計時溢出將產生RESET。在16C5X 芯片內有一個特殊的謂之"定義EPROM"(Configuration EPROM)的單元,其中的一個位是用于定義的。你可以將其置"0"來抑制WDT使之永遠不起作用。這將在第七章的燒寫器介紹部分詳細說明,請參閱。

        1、WDT周期

        WDT有一個基本的溢出周期16ms(無預分頻器pic16F917),如果你需要更長的WDT周期,可以把預分頻器分配給WDT,最大分頻比可達1:128,這時的WDT溢出周期約為2.5S。pic16F917還提供了一個16位的預分頻器,使WTD的超時值提高到268s。WDT溢出周期和環境溫度、VDD等參數有關系,請參閱附錄的圖表。

        "CLRWDT"和"SLEEP"指令將清除WDT計時器以及預分頻器里已有的計數值(當預分頻器分配給WDT時)。WDT一般用來防止系統失控或者說防止單片機程序運行"失控"。在正常情況下,WDT應在計滿溢出前被CLRWDT指令清零,以防止產生RESET。如果程序由于某種干擾而失控,那么不能在WDT溢出前執行一條CLRWDT指令,就會使WDT溢出而產生RESET,使系統重新啟動運行而不至失去控制。若WDT溢出產生RESET,則狀態寄存器STATUS的"TO"位會被清零,用戶程序可藉此判斷復位是否由WDT溢時所造成。

        2、pic單片機WDT編程注意事項

        如果使用WDT,一定要仔細在程序中的某些地方放一條"CLRWDT"指令,以保證在WDT在溢出前能被請零。否則會造成芯片不停地產生RESET,使系統無法正常工作。

        分頻器相關文章:分頻器原理


        關鍵詞: PIC 看門狗 定時器 WDT

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 精河县| 刚察县| 贵溪市| 崇文区| 洛浦县| 苍山县| 司法| 石棉县| 鹰潭市| 济南市| 中方县| 郴州市| 鹤峰县| 宁夏| 永济市| 泉州市| 贵州省| 舞钢市| 鹤岗市| 休宁县| 台南市| 静宁县| 弥勒县| 松滋市| 甘孜| 霍城县| 晋江市| 改则县| 寻乌县| 子洲县| 洮南市| 普格县| 扶余县| 宜都市| 克拉玛依市| 桃源县| 陕西省| 台北县| 英吉沙县| 高邮市| 凤台县|