日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] 看門狗定時器用來防止程序因供電電源、空間電磁干擾或其它原因引起的強烈干擾噪聲而跑飛的事故。在很多單片機中都內(nèi)置了看門狗,看門狗本身是一個定時器,當(dāng)定時器溢出時即進行系統(tǒng)復(fù)位,因此需要在程序

看門狗定時器用來防止程序因供電電源、空間電磁干擾或其它原因引起的強烈干擾噪聲而跑飛的事故。在很多單片機中都內(nèi)置了看門狗,看門狗本身是一個定時器,當(dāng)定時器溢出時即進行系統(tǒng)復(fù)位,因此需要在程序中對看門狗定時器進行清零,即常說的喂狗。
由于我用過AVR的單片機,和AVR的相比,MSP430的看門狗要靈活的多,首先默認看門狗是開著的,因此如果不使用看門狗的話要關(guān)閉,指令如下:
WDTCTL = WDTPW + WDTHOLD
如果打開看門狗則需要在程序中清零,指令如下:
WDTCTL=WDTPW+WDTCNTCL

這只是基本的應(yīng)用,430的看門狗要稍微復(fù)雜一些,首先從IAR的頭文件中看看定義了幾種工作狀態(tài):

  1. /*WDT-intervaltimes[1ms]codedwithBits0-2*/

  2. /*WDTisclockedbyfSMCLK(assumed1MHz)*/

  3. #defineWDT_MDLY_32(WDTPW+WDTTMSEL+WDTCNTCL)/*32msinterval(default)*/

  4. #defineWDT_MDLY_8(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS0)/*8ms"*/

  5. #defineWDT_MDLY_0_5(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1)/*0.5ms"*/

  6. #defineWDT_MDLY_0_064(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1+WDTIS0)/*0.064ms"*/

  7. /*WDTisclockedbyfACLK(assumed32KHz)*/

  8. #defineWDT_ADLY_1000(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL)/*1000ms"*/

  9. #defineWDT_ADLY_250(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS0)/*250ms"*/

  10. #defineWDT_ADLY_16(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1)/*16ms"*/

  11. #defineWDT_ADLY_1_9(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0)/*1.9ms"*/

  12. /*Watchdogmode->resetafterexpiredtime*/

  13. /*WDTisclockedbyfSMCLK(assumed1MHz)*/

  14. #defineWDT_MRST_32(WDTPW+WDTCNTCL)/*32msinterval(default)*/

  15. #defineWDT_MRST_8(WDTPW+WDTCNTCL+WDTIS0)/*8ms"*/

  16. #defineWDT_MRST_0_5(WDTPW+WDTCNTCL+WDTIS1)/*0.5ms"*/

  17. #defineWDT_MRST_0_064(WDTPW+WDTCNTCL+WDTIS1+WDTIS0)/*0.064ms"*/

  18. /*WDTisclockedbyfACLK(assumed32KHz)*/

  19. #defineWDT_ARST_1000(WDTPW+WDTCNTCL+WDTSSEL)/*1000ms"*/

  20. #defineWDT_ARST_250(WDTPW+WDTCNTCL+WDTSSEL+WDTIS0)/*250ms"*/

  21. #defineWDT_ARST_16(WDTPW+WDTCNTCL+WDTSSEL+WDTIS1)/*16ms"*/

  22. #defineWDT_ARST_1_9(WDTPW+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0)/*1.9ms"*/


從頭文件的定義中可以看出主要有兩種方式,一種就是當(dāng)做普通的定時器使用,一種才是作為看門狗,另外就是時鐘源可選,選擇8M或者32K的晶振來獲得不同的延時,通過上面可以看出看門狗定時器最大的時間可以到1S,在程序中可以靈活的利用看門狗定時器實現(xiàn)想要的功能。

下面介紹兩個典型應(yīng)用:
1、在動態(tài)數(shù)碼管顯示中的應(yīng)用,具體代碼可以參考我之前的筆記,部分代碼如下:
WDTCTL = WDT_ADLY_1_9; // 設(shè)置內(nèi)部看門狗工作在定時器模式,1.9ms中斷一次
//可以去看頭文件中具體的配置,這里使用的手表晶振64分頻計算可得是1.9ms
IE1 |= WDTIE; // 使能看門狗中斷

__interrupt void watchdog_timer(void)
{
}
這個程序主要是將看門狗定時器當(dāng)做普通定時器使用,1.9ms剛好適合動態(tài)掃描間隔,在看門狗中斷中對數(shù)碼管進行動態(tài)掃描,這樣使用相對于開一個定時器來說要有所方便。因此在需要的定時與看門狗定時器的幾個時間相同時可以考慮使用看門狗。
2、普通延時
WDTCTL = WDT_ADLY_1000; //間隔定時器,定時1000ms
//延時2s
for(i = 0; i < 3; i++)
{

IFG1 &= ~WDTIFG;
while(!(IFG1 & WDTIFG));
IFG1 &= ~WDTIFG;
}
這個程序同樣是將看門狗當(dāng)普通定時器使用,在主程序中讀取中斷標志位,實現(xiàn)延時效果,上面的程序為什么是延時2S自己分析。

這里面舉了兩個例子,是最近學(xué)習(xí)的一點小體會,當(dāng)然還是不能忘了看門狗的本能工作,在程序較為簡單時可以考慮使用看門狗定時器簡化設(shè)計。另外還有一點覺得比較重要的是雖然頭文件中對寄存器都有了很好的定義,但是還是很有必要對著頭文件和寄存器把主要的寄存器看一面,弄清每一種工作模式的使用方式和注意點。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉