1.msp430f5438有三個定時器 ta0 ta1和tb,定時器的功能略有區別。
2.對於定時器ta1而言,有兩個中斷向量位址,其中比較匹配通道0具有單獨的中斷向量
3.msp430中斷向量的名稱和ta0 ta1很難對應起來,需要通過中斷向量位址來確認。
4.編寫**時可參考下表#define timer1_a1_vector (48 * 2u) /* 0xffe0 timer1_a3 cc1-2, ta1 */
#define timer1_a0_vector (49 * 2u) /* 0xffe2 timer1_a3 cc0 */
#define timer0_a1_vector (53 * 2u) /* 0xffea timer0_a5 cc1-4, ta0 */
#define timer0_a0_vector (54 * 2u) /* 0xffec timer0_a5 cc0 */
#define timer0_b1_vector (59 * 2u) /* 0xfff6 timer0_b7 cc1-6, tb */
#define timer0_b0_vector (60 * 2u) /* 0xfff8 timer0_b7 cc0 */
中斷向量名稱
中斷向量
定時器含義
操作暫存器
timer1_a1_vector
0xffe0
ta1ta1ccr1-2, ta1ifg
比較匹配通道1和2,溢位中斷
ta1cctl1,ta1ccr1
ta1cctl2,ta1ccr2
ta1ctl(溢位中斷)
timer1_a0_vector
0xffe2
ta1ta1ccr0
比較匹配通道0
ta1cctl0,ta1ccr0
timer0_a1_vector
0xffea
ta0ta0ccr1-4, ta0ifg
比較匹配通道1到4
溢位中斷
ta0cctl1,ta0ccr1
ta0cctl2,ta0ccr2
ta0cctl3,ta0ccr3
ta0cctl4,ta0ccr4
ta0ctl(溢位中斷)
timer0_a0_vector
0xffec
ta0ta0ccr0
比較匹配通道0
ta0cctl0,ta0ccr0
timer0_b1_vector
0xfff6
tbtbccr1-6, tbifg
比較匹配通道1到6
溢位中斷
timer0_b0_vector
0xfff8
tbtbccr0
比較匹配通道0
學習msp430f5438初體驗
我選擇的是iar usb 器方案,這裡有很多問題需要注意 一,安裝軟體 二,使用軟體,1.建立工程沒有什麼難度,一般只要有過類似經驗的人都能完成,在工程的option裡面都是預設,可以不做任何修改。2.在工程中寫入一下 include msp430f5438.h int main void retu...
MSP430F5438中斷函式兩種編寫方法
以usci0為例,說明該兩種不同方法。1.switch case方法 pragma vector usci a0 vector interrupt void usci a0 isr void 2.查詢標誌為方法 pragma vector usci a0 vector interrupt void ...
msp430f5310定時器的認識
a 有兩種型別的定時器 timer a和timer b,其中timer a中又有3個同型別的定時器,timera0 timera1和timera2,也就是說5310能夠提供給你4個定時器進行單獨配置使用。b 每乙個計數器中有兩個中斷向量,乙個專門為ccr0分配的中斷向量,另乙個為公用中斷向量。因為c...