CC2530定时器3的输入捕获中断

使用的是tim3的通道1的输入捕获P1_7口。
//GPIO配置成复用功能,同时设置P1_7为输入。
void irCaptureGpioInit(void)
{
P1SEL |= 0x80;
P1DIR &= ~0x80;
P1_7 = 1;

PERCFG |= 0x20;//定时器3的备用位置2,必须设置
P2SEL |= 0x20;//设置定时器3优先
//P1IEN |= 0x80;
}

void timer3CaputureInit(void)
{

T3CTL &= 0x00; //T3溢出中断屏蔽
T3CTL |= 0xA0; //标记频率/32
T3CTL |= 0x04; //清除计数器
T3CTL |= 0x08; //溢出中断使能
T3CTL |= 0x10; //启动定时器T3

T3CCTL1 &= ~0x04; //捕获模式
T3CCTL1 |= 0x03; //上升、下降沿都捕获
T3CCTL1 |= 0x40; //T2的通道1中断使能

IEN1 |= 0x08; //T3中断使能

IEN0 |= 0x80;//使能所有中断
}

void timer3CaptureConfig(void)
{
irCaptureGpioInit();
timer3CaputureInit();
}

#pragma vector = T3_VECTOR//定时器3
__interrupt void T3_ISR(void)
{
unsigned char a;
if(TIMIF & (~0xFB)) //边沿触发中断
{
a = T3CC1;
if(a > 18 && a < 40)
{
rec1[signle++] = T3CC1;
setFlag = 1;
}
T3CC1 = 0;
IRCON = 0x00; //清中断标志,也可由硬件自动完成
}

if(TIMIF & (~0xFE)) //溢出中断
{
if(setFlag)
{
signle = 0;
setFlag = 0;
}
IRCON = 0x00; //清中断标志,也可由硬件自动完成
}
}

CC2530定时器3的输入捕获中断的更多相关文章

  1. CC2530定时器1的模模式中断

    CC2530定时器1的模模式中断void timer1SInit(void){ T1CCTL0 = 0; T1CTL &= ~0x0F; //clear register T1CTL |= 0 ...

  2. stm32f103_高级定时器——输入捕获/输出比较中断+pwm=spwm生成

    ****************************首选我们了解一下它们的功能吧********************************************************** ...

  3. stm32cube--通用定时器--输入捕获

    用定时器输入捕获做红外线接收实验.(此次试验以通道2为例) ①stm32cube配置 ② ③ ④程序中主要用到的输入捕获相关寄存器 uint16_t tim_sr,tim_ccer,tim_ccr; ...

  4. STM32使用定时器实现输入捕获

    输入捕获简介输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32的定时器,除了TIM6和TIM7,其他定时器都有输入捕获功能. STM32的输入捕获,简单地说就是通过检测TIMx_CHx上的边沿信 ...

  5. STM32之定时器输入捕获

    1.输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32的定时器,除了TIM6和TIM7,其他定时器都有输入捕获功能.STM32的输入捕获,简单的说就是通过检测TIMx_CHx上的边沿信号,在边沿 ...

  6. STM32之输入捕获以及小小应用(库)

    五一之际,先祝大家五一快乐.其实快乐很简单,工作的人有假放,学习的人也有假放,像我,有假放才有更多的时间学自己想学的东西.51假期学51,可惜没有32假期呀.好了..言归正传,大家听过吸星大法吧..在 ...

  7. [置顶] STM32 输入捕获的脉冲宽度及频率计算

    输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能.以下是对脉冲宽度及频率的计算. 1.脉冲宽度 如下图所示,采集该高电平脉冲 ...

  8. stm32 输入捕获学习(一)

    输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能.STM32 的输入捕获,简单地说就是通过检测 TIMx_CHx 上的边沿信 ...

  9. STM32 输入捕获的脉冲宽度及频率计算

    输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能.以下是对脉冲宽度及频率的计算. 1.脉冲宽度 如下图所示,采集该高电平脉冲 ...

随机推荐

  1. 关于uC/OS的简单学习(转)

    1.微内核 与Linux的首要区别是,它是一个微内核,内核所实现的功能非常简单,主要包括: 一些通用函数,如TaskCreate(),OSMutexPend(),OSQPost()等. 中断处理函数, ...

  2. Kafka笔记--监控系统KafkaOffsetMonitor

    KafkaOffsetMonitor下载链接: http://download.csdn.net/detail/changong28/7930337github官方:https://github.co ...

  3. iOS 第三方 需要 引用的库

    ================================================== AFNetWorking   是基于 nsurlconnection   所以不需要引入库 === ...

  4. Keil C51 vs 标准C

    深入理解并应用C51对标准ANSIC的扩展是学习C51的关键之一.因为大多数扩展功能都是直接针对8051系列CPU硬件的.大致有以下8类: 8051存储类型及存储区域 存储模式 存储器类型声明 变量类 ...

  5. 新技术:Qt for Native Client (and emscripten)

    http://blog.qt.io/blog/2015/09/25/qt-for-native-client-and-emscripten/

  6. ActionBarActivity & FragmentActivity

    1 ActionBarActivity 是FragmentActivity的一个子类 2 ActionBarActivity 加入了对actionBar的操作, 比如getSupportActionB ...

  7. 使IE6支持:hover效果

    :hover是在CSS中用来制作效果最常用到的一个伪类,比如:标签或div上的鼠标悬停效果 li:hover,div:hover等. 但这种效果是css2及以上版本才添加的,对于只支持css1的浏览器 ...

  8. LinearLayout 和 RelativeLayout

    共有属性: java代码中通过btn1关联次控件 android:id="@+id/btn1" 控件宽度 android:layout_width="80px" ...

  9. python使用deque实现fifo(先进先出)

    #2:deque还提供了append 和pop方法,在序列的两端都能以相同的速度执行#例子2:使用deque实现fifo(先进先出),如下:from collections import dequei ...

  10. 编写jeb插件打印目标方法的交叉引用

    jeb插件的编写,文档在文件夹\jeb_1.5\doc\apidoc. 我这里的目的是回溯sendTextMessage等敏感api的调用路径,实现代码如下: from jeb.api import ...