MSP430F5529 (七)定時器B
7.1定時器B的簡介
7.1.1 特性(了解):
(1). 16位同步定時/計數,4種工作模式可選、4中長度可選;
(2). 可選可配置時鐘源;
(3). 高達7個捕獲/比較寄存器;
(4). 可配置PWM輸出;
(5). 帶有同步裝載的雙緩沖比較寄存器;
(6). 快速解碼的中斷向量;
7.2.2與定時器A的比較(相同點與不同點)
(1). TB的計數長度可以選擇(8、10、12、16BITS),而TA只有16位;
(2). TB0CCRn寄存器是雙緩沖的,且可以分組;
(3). 所有的TB輸出可以被設為高阻狀態(tài);
(4). TB沒有SCCI,即捕獲器輸入信號CCI沒有被鎖存;
看結構圖,觀察和TA有什么區(qū)別:
7.2Timer0_B寄存器介紹及設置)
聲明:所有寄存器同樣支持字和字節(jié)操作
所有寄存器初始化都為0x0000
7.2.1 TB控制寄存器TB0CTL(最常用最基本)(和TA有一點不同)
rw-(0)表示默認讀寫均為0
TBCLGGRP:TB0CLn分組控制
00:每個TB0CLn獨立使用
01:TB0CL1+TB0CL2作為一組(TB0CCR1的CLLD位控制整組數據更新)
TB0CL3+TB0CL4作為一組(TB0CCR3的CLLD位控制整組數據更新)
TB0CL5+TB0CL6作為一組(TB0CCR5的CLLD位控制整組數據更新)
10:TB0CL1、2、3一組,(TB0CCR1的CLLD位控制整組數據更新)
TB0CL4、5、6一組,(TB0CCR4的CLLD位控制整組數據更新)
11:TB0CL0、1、2、3、4、5、6整合為一組,
(TB0CCR1的CLLD位控制整組數據更新)
CNTL:計數器長度控制
0016位,即最大可以計到0FFFFh
0112位,即最大可以計到0FFFh
1010位,即最大可以計到03FFh
11 8位,即最大可以計到0FFh
TBSSEL:時鐘源選擇。盡量不要選TACLK外部時鐘源,因為如果TACLK和CPU時鐘不同步,很容易出問題。(TB0CLK接P7.7引腳)
00TBCLK
01ACLK
10SMCLK
11~TBCLK
ID:第一次分頻控制。ID0-1分頻;ID1-2分頻;ID2-4分頻;ID3-8分頻
MC:工作模式控制。(建議在修改定時器運行模式前先停止定時器(中斷使能、中斷標志、TACLR例外),以避免產生未知的誤操作。)(和TA一樣)
00停止模式:定時器停止
01增模式:定時器計數到TB0CCR0
10連續(xù)模式,定時器計數到0FFFH(16位)…12位、10位…
11增減模式:定時器加計數到TB0CCR0然后減計數到0000H
TBCLR:定時器清零位。該位置位會復位TA寄存器,時鐘分頻和計數方向。
TACLR位會自動復位并置0
TBIE:定時器中斷使能
0:中斷禁止
1:中斷允許
TBIFG:中斷標志位
0:沒有中斷發(fā)生
1:有中斷掛起
7.2.2計數值存放寄存器TB0R
7.2.3擴展寄存器TBEX0
很簡單,這個寄存器就是為了控制時鐘源的二次分頻(看結構圖)。
該寄存器的低3為定義為TBIDEX:000-111分別表示1-8分頻
7.2.4 捕獲/比較寄存器TBCCR0-TBCCR6(共7個)
比較模式下,用來設定計數終值;
捕獲模式下用來將捕獲的TBR值存放進TBCCRx中。
關鍵詞:
MSP430F5529定時器
評論