[1205]
This presentation is the property of its rightful owner.
Sponsored Links
1 / 20

[1205] Lecture 9 PowerPoint PPT Presentation


  • 130 Views
  • Uploaded on
  • Presentation posted in: General

[1205] Lecture 9. WDT 認識 WDT 認識 WDT 的用途與使用方法 操作 WDT 的兩種模式. WDT. WDT 模組 WDT = Watch Dog Timer 看門 狗計時器 主要的功能為確保系統不會因為軟體因素而死當、凍結. WDT. WDT 模組 作動原理為是透過一個計時器設定一段時間區間 在時間區間內,程式必須要將 Watch Dog Timer 計數器歸零 一旦在時間區間內沒有將計數器歸零,系統將自動進行 Reset 、 PUC(Power Up Clear). WDT. WDT 模組

Download Presentation

[1205] Lecture 9

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


1205 lecture 9

[1205]Lecture 9

  • WDT

    • 認識WDT

    • 認識WDT的用途與使用方法

    • 操作WDT的兩種模式


1205 lecture 9

WDT

  • WDT模組

    • WDT=Watch Dog Timer

    • 看門狗計時器

    • 主要的功能為確保系統不會因為軟體因素而死當、凍結


1205 lecture 9

WDT

  • WDT模組

    • 作動原理為是透過一個計時器設定一段時間區間

    • 在時間區間內,程式必須要將Watch Dog Timer 計數器歸零

    • 一旦在時間區間內沒有將計數器歸零,系統將自動進行Reset、PUC(Power Up Clear)


1205 lecture 9

WDT

  • WDT模組

    • WDT 在不用作看門狗功能時,也可當作一個32-bit的計時器使用

    • WDT作為計時器使用時,提供一個WDT_VECTOR 中斷向量可以使用

    • WDT也支援暫停模式,配合達到省電目的


1205 lecture 9

WDT

  • WDT設定

    • WDT 的大部分設定皆操作在一個16-bit 暫存器WDTCTL中

    • 除了WDTIEbit 和WDTIFG 是設置在SFR系列暫存器中

    • WDTCTL暫存器是一個受到密碼保護的暫存器寫入時需要在高位元寫入密碼,否則也會導致系統重置(reset-PUC)


1205 lecture 9

WDT

  • WDT設定

    • WDTCTL的高8位元是WDTPW,被設計成讀取時為069h

    • 在寫入WDTCTL時,高位元皆必須寫入05Ah,否則會導致reset


1205 lecture 9

WDT

  • WDT設定

    • WDTHOLD(BIT7): 暫停WDTCNT,不使用WDT時設定此位元為1,減少耗能,同時避免WDT動作

    • 每一次課程中主程式的第一行程式碼的動作即是暫停WDT的動作


1205 lecture 9

WDT

  • WDT設定

    • WDTSSEL(BIT5-6): 選擇WDT的時脈來源,預設是00=SMCLK

    • 01=ACLK=10=VLOCLK11=X_CLK=VLOCLK


1205 lecture 9

WDT

  • WDT設定

    • WDTTMSEL(BIT4): 選擇WDT模式,預設是0= Watchdog Mode

    • 1=間格時間計時器


1205 lecture 9

WDT

  • WDT設定

    • WDTCNTCL(BIT3): WDTCNTClear,在此bit寫入1能夠清除WDTCNT中的數值


1205 lecture 9

WDT

  • WDT設定

    • WDTTIS(BIT2-0): WDTTime interval selection,WDT的計時區間只能透過TIS設定,不能直接修改WDTCNT,因此只有固定8種組合。


1205 lecture 9

WDT

  • WDT設定

    • WDTTIS(BIT2-0):預設為

    • 因此,在預設的WDT設定中,32ms內沒有設定WDT,則會自動reset系統


1205 lecture 9

WDT

  • WDT設定

    • WDTTIS(BIT2-0)的時間區間:

    • (65536sec at 32kHz)

    • (4096sec at 32kHz)

    • (256sec at 32kHz)

    • (16sec at 32kHz)

    • (1sec at 32kHz)

    • (250ms at 32kHz)

    • (15.625ms at 32kHz)

    • (1.95ms at 32kHz)


1205 lecture 9

WDT

  • WDT設定

    • WDTIE 設置於SFRIE1的BIT0

    • WDTIFG設置於SFRIFG1的BIT0

    • 在Interval Timer模式下,設置WDTIE和GIE,即可令系統回應來自WDT的中斷訊號,進入專屬的WDT_VECTOR執行中斷向量副程式


1205 lecture 9

WDT

  • WDTClock Fail-Safe Feature

    • 當WDT設置在看門狗模式時,為了確保時脈供應,在SMCLK或ACLK無法正常提供時脈時,會自動選擇VLOCLK作為備用時脈。


1205 lecture 9

Example

  • 範例1

    • 配置WDT為Interval Timer,並設置中斷副程式切換D1的狀態

    • 選用ACLK作為時脈來源

    • 選用時間區間為250ms

    • 範例程式下載


1205 lecture 9

Example

  • 範例2

    • 配置WDT為Watch Dog,觀察其在一定時間後重置。

    • 選用ACLK作為時脈來源

    • 選用時間區間為1000ms

    • 程式起始會亮起D1一下然後熄滅

    • 接著閃爍D2

    • 範例程式下載


1205 lecture 9

Exercise

  • 練習1

    • 配置WDT為Interval Timer,並設置中斷副程式切換D1的狀態

    • 選用ACLK作為時脈來源

    • 選用時間區間為1000ms

    • 除了範例中的指令字,有沒有其他的指令字也可以達到一樣的效果?


1205 lecture 9

Exercise

  • 練習2

    • 配置WDT為Watch Dog,但不讓其重置系統(不使用WDTHOLD)

    • 選用ACLK作為時脈來源

    • 選用時間區間為1000ms

    • 程式起始前要閃一下D1代表程式開端

    • 持續閃爍D2不重置


1205 lecture 9

Exercise

  • 完成後,找到專案裡面的source file,以附檔形式寄到 [email protected],並在主旨中註明姓名、系級與學號,source檔名稱請利於辨識。EX:

  • 主旨:

    微處理機實習 LAB3 王大明 電機碩二 7101064123


  • Login