微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 关于定时器的使用

关于定时器的使用

时间:10-02 整理:3721RD 点击:

1、你好,我发现ti的协议栈关于timer这部分的代码是没有的?请问可以在协议栈中实现打开timer3,并使能定时器3的中断的功能吗?

2、我做成串口透传,当收到相关指令时使能一个10ms的定时事件(使用osal_start_timerex),10ms调用一次发送数据出去,同时开启定时器3,使能480us进入中断一次,也是不断的执行,但是发现这样会导致蓝牙的端开,请问这是什么原因吗?

尝试一下拉长进中断的时间

1: 现在Timer的代码都是自己写,TI有一份简单的裸机驱动代码,你可以参考参考

2: 2540是51内核,480us的中断时间有点长了

你好:

void Timer3_Init()
{
T3CTL |= BV(3); //开启溢出中断
T3CTL |= BV(5) | BV(6) | BV(7) ;//128分频
T3CTL &= ~ BV(1); //模模式
// T3CTL |= BV(4); //启动timer3
T3IE =1; //开启T3中断控制
EA=1;
}

#pragma vector = T3_VECTOR
__interrupt void Timer3_ISR(void)
{
   P1_5=!P1_5;
}

我是这样配置的,应该问题不大,但是就是定时器不准,有什么可能的原因吗?

你好:

void Timer3_Init()
{
T3CTL |= BV(3); //开启溢出中断
T3CTL |= BV(5) | BV(6) | BV(7) ;//128分频
T3CTL &= ~ BV(1); //模模式
// T3CTL |= BV(4); //启动timer3
T3IE =1; //开启T3中断控制
EA=1;
}

#pragma vector = T3_VECTOR
__interrupt void Timer3_ISR(void)
{
   P1_5=!P1_5;
}

我是这样配置的,应该问题不大,但是就是定时器不准,有什么可能的原因吗? 128分频,480us应该可以的

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top