MSP430FR4133 timer interrupt
CL is right, your use of ~COV is wrong and is ruining your other settings. Here is what happens:

COV is defined in memory as:

 #define COV (1 &lt;&lt; 1)


Inverting COV (with ~COV) does not just invert that bit, it actually inverts the entire COV field. So if you know that COV is (in binary) 0000 0000 0000 0010, then ~COV becomes 1111 1111 1111 1101. You then take this value and OR it with everything else you just carefully set up, effectively wiping out those settings. 

Your TA1CCTL1 register is thus ALWAYS set to 1111 1111 1111 1101, or just ~COV.

If you want to clear COV bit, you need to do it properly:

TA1CCTL1 &amp;= ~COV; 


If you also want to clear bits A and B (for example), you could do:

TA1CCTL &amp;= ~(COV | A | B);