1 / 32

[1031] Lecture 5

[1031] Lecture 5. TimerA 認識 Timer A 模組 熟悉 Timer A 的計數模式 認識 Timer A 的中斷向量. TimerA. Timer A 模組 TimerA 指的是 MSP430 的一種計時 / 數器型態 MSP430F5438 具有兩個 TimerA 模組 TA0 、 TA1 每個 TimerA 配置有一個 16-bit TimerA register, TAxR. TimerA. Timer A 模組

marika
Télécharger la présentation

[1031] Lecture 5

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. [1031]Lecture 5 • TimerA • 認識Timer A模組 • 熟悉TimerA的計數模式 • 認識Timer A的中斷向量

  2. TimerA • Timer A 模組 • TimerA指的是MSP430的一種計時/數器型態 • MSP430F5438 具有兩個TimerA模組TA0、TA1 • 每個TimerA配置有一個16-bit TimerA register, TAxR

  3. TimerA • Timer A 模組 • 除了TAR,還配備有3~5組的16-bitCapture/Compare Register(CCRx) • MSP430F5438中,TA0配有5組CCRegister,TA1則配有3組。 • CCRx提供的Capture功能可用作外部信號的計數器或是頻率測量

  4. TimerA • Timer A 模組 • CCRx提供的Compare 功能則提供特定時間間隔的事件觸發或是輸出特定頻率的脈波訊號。 • TimerA的TAxR和CCRx都具備中斷功能 • TimerA可以選擇TACLK、SMCLK、ACLK和INCLK作為時脈來源,並透過預除器做1/2, 1/4 , 1/8 的除頻。

  5. TimerA • TimerA的主要控制暫存器 • TAxCTL • TAxCCTLn • TAxIV • TAxR • TA0CCR0~TA0CCR4TA1CCR0~TA0CCR2

  6. TimerA • TimerA的主要暫存器 • TAxCTL

  7. TimerA • TASSEL, Timer A Source Select • BIT9~BIT8,選擇時脈來源。 • 00b=TAxCLK01b=ACLK10b = SMCLK11b =INCLK

  8. TimerA • ID • BIT7~6,選擇預除器的倍率。 • 00b=101b=1/210b = 1/411b =1/8

  9. TimerA • MC • BIT5~4,選擇計數器的模式。 • 00b=STOP01b=Upmode 10b = Continuous11b =Up/Down mode

  10. TimerA • Other • TACLR: 設值為1時,清除TAxR內的值 • TAIE:設值為1時,啟用TAxR的中斷 • TAIFG:TAxR的中斷旗標

  11. TimerA • TimerA的主要暫存器 • TAxCCTLn

  12. TimerA • 作為計時器使用時會用到: • CCIE:BIT4, CCRInterrupt Enable設值為1時,啟動TAxCCRn的中斷回應 • CCIFG:BIT0, TAxCCRn的中斷旗標

  13. TimerA • TimerA的主要暫存器 • TAxIV其值紀錄觸發TimerA中斷的來源 • TAxCCR1 : 0x0002 • TAxCCR2 : 0x0004 • TAxCCR3 : 0x0006 • TAxCCR4 : 0x0008 • TAR : 0x000E

  14. TimerA • TimerA計數模式 • UPMode • 須設定TAxCCR0 • TAxR的值往上數,當達到TAxCCR0時,升起CCR0 IFG,TAxR的值歸零,TAIFG 升起,然後重複。

  15. TimerA • TimerA計數模式 • UPMode

  16. TimerA • TimerA計數模式 • Continuous Mode • TAxR的值往上數,直到0xFFFF後溢為歸零,再繼續上數,當達到TAxCCR0時,不會直接歸零。

  17. TimerA • TimerA計數模式 • Continuous Mode

  18. TimerA • TimerA計數模式 • Up/Down Mode • 須設定TAxCCR0的值 • TAxR的值往上數,直到TAxCCR0的值後,再往下數到0x0000,再接著繼續上數,接著重複。

  19. TimerA • TimerA計數模式 • Up/Down Mode

  20. TimerA • TimerA中斷向量 • 一個TAx的中斷來源有TAIFG以及CCRx IFG • 當中分為兩個中斷向量,一個是由TAxCCR0 獨佔一個中斷向量TIMER0_A0_VECTOR • TAIFG、和其餘的TAxCCRn則分享一個中斷向量TIMER0_A1_VECTOR

  21. TimerA • TimerA中斷向量 • 在共享的TIMER0_A1_VECTOR中,便要由TAxIV來判斷中斷的來源 • 在中斷優先權上,TIMER0_A0_VECTOR 大於 TIMER0_A1_VECTOR

  22. TimerA • TimerA中斷向量 • 以Continuous Mode為例

  23. TimerA • MSP430F5438 中斷裝置

  24. Timer A • 範例1 • 利用最基本的配置,觀察TimerA的動作 • 範例程式下載↓http://ares.ee.nchu.edu.tw/Course.files/microlab102/example/lab5-1.c

  25. Timer A • 範例1 • 選擇ACLK=32768Hz 作為時脈來源 • 選擇Up Mode,配置TA0CCR0為65535 • 配置TA0R = 32767 • 啟用TAIE中斷,切換D1的狀態,週期為2秒

  26. Timer A • 範例2 • 利用Continuous Mode配置兩個不同週期的動作 • 範例程式下載↓http://ares.ee.nchu.edu.tw/Course.files/microlab102/example/lab5-2.c

  27. Timer A • 範例2 • 選擇ACLK=32768Hz 作為時脈來源 • 選擇Continuous Mode,配置TA0CCR0為32767 • 啟用TAIE中斷與CCR0中斷,TAIE切換D1的狀態,週期為4秒;CCR0切換D2的狀態,週期為2秒。

  28. Timer A • 範例3 • 利用時脈與模式的選擇,再加上預除器,產生一個週期為8秒的動作 • 範例程式下載↓http://ares.ee.nchu.edu.tw/Course.files/microlab102/example/lab5-3.c

  29. Timer A • 範例3 • 選擇ACLK=32768Hz 作為時脈來源 • 選擇Up Mode,ID_1,配置TA0CCR0為65535, • 啟用CCR0中斷,切換D1的狀態,週期為8秒;

  30. Timer A • 練習1 • 以Continuous Mode,產生TAIFG、CCR0、CCR1的中斷,分別控制D1、D2和D3。 • 週期分別為:D14秒(2秒進中斷)D2 2秒(1秒進中斷)D3 1秒(0.5秒進中斷)

  31. Timer A • 練習2 • 利用模式與時脈控制,產生一個10秒和32秒的中斷。

  32. [1031]Lecture 5 • 完成後,找到專案裡面的source file,以附檔形式寄到 kchu@ares.ee.nchu.edu.tw,並在主旨中註明姓名、系級與學號,source檔名稱請利於辨識。EX: • 主旨: 微處理機實習 LAB3 胡國治 電機碩二 7101064123

More Related