TI中文支持网
TI专业的中文技术问题搜集分享网站

cc2530外部io中断唤醒后不重新进入PM2模式

您好!EndDevice终端调试,使用协议栈,遇到了休眠 及 定时的问题。请问这是哪里出问题了呢?我用的协议栈版本是ZStack-CC2530-2.3.1-1.4.0,IAR7.60

1、cc2530进入PM2模式,外部中断唤醒后,不再进入睡眠,32M时钟一直有;

2、定时超过20s后,定时就不准确了。比如设置成30s,终端发送数据间隔是大概2分钟。是因为下面函数的timeout参数是16bit的事情吗?

osal_start_timerEx(GenericApp_TaskID,SEND_DATA_EVENT,30000);

3、外部P1.3中断服务程序:

HAL_ISR_FUNCTION( P1Isr, P1INT_VECTOR )
{
uint8 p1irqflag;

HAL_ENTER_ISR();

p1irqflag = P1IFG;//特殊功能寄存器

if(p1irqflag & 0x08)
{
Fcount++;
P1IFG &= ~0x08;//清除标志
}
//ALLOW_SLEEP_MODE();
//CLEAR_SLEEP_MODE();

HAL_EXIT_ISR();}

Susan Yang:

早期版本的协议栈osal timer函数参数是16bit的,现在改成32bit,应该不会出现这个问题了

建议您使用较新1版本的协议栈

user3395541:

回复 Susan Yang:

谢谢!

外部中断唤醒后,不进入休眠是大概哪里有问题呢?不是协议栈自动判断休眠吗?

赞(0)
未经允许不得转载:TI中文支持网 » cc2530外部io中断唤醒后不重新进入PM2模式
分享到: 更多 (0)