目前总共用到了四个中断向量,我觉得已经把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. wpf 自定义单选按钮 RadioButton

    新建RadioButtonEx.cs public class RadioButtonEx : RadioButton { public Geometry SelectIcon { get { ret ...

  2. 07Html、CSS

    07Html.CSS-2018/07/17 1.HTML是用来描述网页的一种标记语言,是一套标记标签.HTML用使用标记标签来描述网页.超文本 标记语言. 2.格式 <html> < ...

  3. Word 格式优化

    Word 格式优化. Word 支持 VBA 意味着,可以编程实现自己想要的格式拓展. Word 代码布局

  4. linux环境下时间的查看和修改

    查看日期和时间date 查看时区date -R 查看UTC时间date -u 修改日期[root@centos ~]# date -s 20181230Sun Dec 30 00:00:00 EST ...

  5. Divide Groups 二分图的判定

    Divide Groups Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  6. Vue2.0 Props双向绑定报错简易处理办法

    在写项目的时候遇到了一个报错问题,虽然功能是正常运行,chrome的提示是:[Vue warn]: Avoid mutating a prop directly since the value wil ...

  7. C# 解决EXCEL单元格合并,行高无法自适应问题

    解决方法:根据单元格内容长度,设置单元格所在行的行高 public static float getExcelCellAutoHeight(string strtest, float fontCoun ...

  8. nyoj_528_找球号(三)_201404152050

    找球号(三) 时间限制:2000 ms  |  内存限制:3000 KB 难度:2   描述 xiaod现在正在某个球场负责网球的管理工作.为了方便管理,他把每个球都编了号,且每个编号的球的总个数都是 ...

  9. 洛谷 P1993 小K的农场

    P1993 小K的农场 题目描述 小K在MC里面建立很多很多的农场,总共n个,以至于他自己都忘记了每个农场中种植作物的具体数量了,他只记得一些含糊的信息(共m个),以下列三种形式描述: 农场a比农场b ...

  10. Linux查看设备信息命令

    系统 #查看内核/操作系统/CPU信息 uname -a #查看操作系统版本 head -n 1 /etc/issue #查看CPU信息 cat /proc/cpuinfo #查看计算机名 hostn ...