感觉430的中断向量有点乱,TIMER_A1_BASE 中断向量却显示TA0,下面的宏定义 A5又是什么意思,中断向量是怎么分配的?
#define TIMER0_A1_VECTOR (53u * 2u) /* 0xFFEA Timer0_A5 CC1-4, TA */
#define TIMER0_A0_VECTOR (54u * 2u) /* 0xFFEC Timer0_A5 CC0 */
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
感觉430的中断向量有点乱,TIMER_A1_BASE 中断向量却显示TA0,下面的宏定义 A5又是什么意思,中断向量是怎么分配的?
#define TIMER0_A1_VECTOR (53u * 2u) /* 0xFFEA Timer0_A5 CC1-4, TA */
#define TIMER0_A0_VECTOR (54u * 2u) /* 0xFFEC Timer0_A5 CC0 */
TIMER0_A1_VECTOR 和 TIMER0_A0_VECTOR 是TA0的中断向量
TIMER0_A5 是TIMER0_A 5CCR,意思是有5个独立比较器寄存器
MSP430中,不同的型号拥有不同的硬件配置,因此中断源也有所差别,TIMER0_A0_VECTOR表示定时器0 A0的中断源,0代表硬件上的定时器,有定时器0 定时器1等;A0代表定时器n内的A0寄存器,通常会有A0 A1等,他们都计数源都来自同一个定时器,但对计数源的数据可以进行不同的处理,从而产生不同的中断。
TIMER0_A0_VECTOR是计时器0的CCR0的中断寄存器
TIMER0_A1_VECTOR是计时器0的CCR1-CCR4、TA的寄存器