我以F5xx为例说明:
#define TIMER1_A1_VECTOR (48 * 2u) /* 0xFFE0 Timer1_A3 CC1-2, TA1 */
#define TIMER1_A0_VECTOR (49 * 2u) /* 0xFFE2 Timer1_A3 CC0 */
默认TA1和CCR0不是同一个中断向量。
第一次来的是CCR0中断,往后CCR0+1的时候来TA中断,所以你的程序中断进不去,为什么这么说呢。默认不写的情况可以理解为程序跑飞了。
你干脆可以这么理解,程序进入中断后自动关闭中断。所以不管是跑飞还是什么情况都无法再次进入中断了。没有服务函数啊,老大。
fuchong兄已经说明问题所在了。