目前总共用到了四个中断向量,我觉得已经把G2553的所有定时器中断都用到了。

定时器有两个,TA0与TA1,每个定时器又有两个中断向量

1,CCR0到达时的中断,在计数模式时候很有用,平时定时器的基本功能。

2,CCR1,CCR2,以及 overflow时候的中断向量,这里面又有三个中断标志。

#define TIMER0_A1_VECTOR (8 * 2u) /* 0xFFF0 Timer0)A CC1, TA0 */

#define TIMER0_A0_VECTOR (9 * 2u) /* 0xFFF2 Timer0_A CC0 */ . .

#define TIMER1_A1_VECTOR (12 * 2u) /* 0xFFF8 Timer1_A CC1-4, TA1 */

#define TIMER1_A0_VECTOR (13 * 2u) /* 0xFFFA Timer1_A CC0 */

 
可见,每个TimerA模块有两个中断向量
更详细一点,查阅用户指南可知:
TIMERA0只针对CCR0的计数溢出
TIMERA1再查询TAIV后可知道是CCR1,还是CCR2,亦或TAIFG引起的,至于TAIFG是什么情况下置位的,则要看TA工作的模式

TA0的两个中断:

#pragma vector=TIMER0_A0_VECTOR

__interrupt void TimerA0(void)

{

//计数到达时候的代码

}

#pragma vector=TIMER0_A1_VECTOR

__interrupt void Timer0_A(void)

{

switch( TA0IV )    //TAIV中断向量寄存器  用于

{

case  2: break;                          // CCR1 not used   捕获/比较器1

case  4: break;                          // CCR2 not used    捕获/比较器2

case 10: break;                  // overflow  定时器溢出

}

下面是TA1的两个中断向量,注意向量名字。

#pragma vector=TIMER1_A0_VECTOR

__interrupt void TimerA1(void)

{

//计数到达时候的代码

}

#pragma vector=TIMER1_A1_VECTOR      //Timer1_A CC1  的中断向量

__interrupt void Timer_A1(void)

{  unsigned int count;  char countH,countL;  float mile;  UCHAR shi[2];        //的方法进行判断是哪一个中断源产生的中断

switch(TA1IV)    //如果是Timer1_A CC1产生的中断

{

case 2:   break;    // CCR1 not used   捕获/比较器1

case 4:break;  // CCR2 not used    捕获/比较器2

case 10:break; // overflow  定时器溢出

}

另外TA1与TA2的寄存器名字也有不同设置时候需要注意

MSP430 G2553 Timer 中断总结的更多相关文章

  1. MSP430 G2553 LaunchPad GPIO中断

    P1.P2端口上的每个管脚都支持外部中断.P1端口的所有管脚都对应同一个中断向量(Interrupt Vector),类似的,P2端口的所有管脚都对应另一个中断向量:通过PxIFG寄存器来判断中断来源 ...

  2. MSP430 G2553 Launchpad实现电容测量

    一.基本原理 对于Source-Free RC电路,其电容放电的特性可以描述为: 其中V0是电容的初始电压,t是放电时间,R是串接的电阻阻值,C是电容值,v(t)是t时刻电容上的电压.因此,若已知V0 ...

  3. MSP430 G2553 低功耗模式LPMx

    MSP430除了正常运行时的active模式外,还支持五种低功耗模式(Low-power mode),分别为LPM0.LPM1.LPM2.LPM3.LPM4,由状态寄存器中的CPUOFF.OSCOFF ...

  4. MSP430 G2553 计时/计数器 Timer_A

    MSP430G2553包含了两个16-bit Timer_A计时/计数器.本文简单介绍了Timer_A的功能和寄存器使用,本文及后续的随笔部分参考了"Scientific Instrumen ...

  5. MSP430单片机的中断

    这篇文章是从网上转载过来的,原文章地址:http://www.21ic.com/jichuzhishi/mcu/questions/2012-12-21/154794.html 中断是MSP430微处 ...

  6. MSP430 G2553 比较器Comparator_A+、数据流程图DFD、状态转换图STD

    一.CA+构造 MSP430G2553带有一个比较器Comparator_A+(CA+),其构造框图如下图所示. 二.输入 & 输出 如上图所示,比较器有一个同向输入端(V+)和一个反向输入端 ...

  7. MSP430 G2553 基本时钟模块+ (Basic Clock Module+)

    一.时钟源 MSP430的Basic Clock Module+支持的时钟源有: DCOCLK:内部数字控制振荡器,Internal digitally contrlled oscillator.所有 ...

  8. Zynq-7000 FreeRTOS(二)中断:Timer中断

    总结Zynq-7000 这款器件中的Timer定时器中断,为FreeRTOS中断做准备.在 ZYNQ 的纯 PS 里实现私有定时器中断. 每隔一秒中断一次, 在中断函数里计数加 1, 通过串口打印输出 ...

  9. MSP430 G2553 LaunchPad设置GPIO

    一. 背景知识:逻辑运算符的使用 当程序初始化时,对于复位状态有不确定性的寄存器(如PxOUT),建议采用直接赋值:其他情况下最好使用逻辑运算符修改寄存器. 直接赋值 REGISTER = 0b111 ...

随机推荐

  1. datagrid总条数

    1.getData var data=$("#dg").datagrid("getData");alert('总数据量:' + data.total)//注意你 ...

  2. jQuey中的return false作用是什么?

    jQuey中的return false作用是什么?在众多的语句中都有return false的使用,当然对于熟悉它的开发者来说,当然是知根知底,知道此语句的作用,当然也就知道在什么时候使用此语句,不过 ...

  3. [Git]Please make sure you have the correct access rights and the repository exists

    这个问题是这样,需要在已有github账号的A机器上,再创建一个github账号,新账号创建完毕,将代码通过机器A push上之后,再另一台机器B,clone 这个项目时报出了如下错误: Permis ...

  4. enote笔记法的思考

    章节:enote笔记法的思考   why enote笔记法: key1)大脑喜欢颜色. 我们的大脑天生就喜欢颜色.对颜色很敏感,这是由我们人类过去的演化历程决定的. 你可以理解为,文字有了颜色,让这个 ...

  5. 每日命令:(5)rm

    昨天学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令: rm命令.rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所 ...

  6. 1.Zigbee开发学习资源

    http://blog.csdn.net/zhanglianpin/article/details/46907349

  7. 洛谷 2574 XOR的艺术

    [题解] 线段树维护区间中1的个数就好了.每次修改就打上标记并把区间的sum改为len-sum. #include<cstdio> #include<algorithm> #i ...

  8. Python网络编程—socket(二)

    http://www.cnblogs.com/phennry/p/5645369.html 接着上篇博客我们继续介绍socket网络编程,今天主要介绍的内容:IO多路复用.多线程.补充知识点. 一.I ...

  9. unigui导出TMS.Flexcel【5】

    参考代码 procedure TUniFrmeWebEmbedBase.ExportData; //导出到excel var FlexCelImport1: TExcelFile; i, rowind ...

  10. 【Codeforces 977F】Consecutive Subsequence

    [链接] 我是链接,点我呀:) [题意] 题意 [题解] 设f[i]表示i作为序列的最后一个数字,最长的连续序列的长度. 用f[i]和f[i-1]+1来转移即可 [代码] import java.io ...