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

cc2530中断唤醒后的时钟设置问题

我用cc2530作为中断节点接收遥控器的红外信号,用的是TI提供的OSAL系统。

节点平时是处于PM2休眠的,我想通过用P0某一引脚接收红外信号作为中断将其唤醒,然后通过T1测量信号电平的持续时间,用的是32Mhz的晶振。

现在问题是,红外将节点唤醒以后测得的时间全都不对,基本偏小几百us

(当我将POWER_SAVING去掉时,测得的红外编码时间都是正确的,因此中断捕获和记时程序都没有问题)

所以我想请教一下各位高手:

采用osal时,当P0引脚中断将2530从PM2唤醒后,系统首先会执行哪一段程序?是我自己编写的P0中断服务例程吗?

中断将2530唤醒后,系统时钟是怎么恢复成32Mhz的?需要多长时间?需要自己设置吗?因为在中断引发后,我需要马上利用32MHz的时钟测度红外信号,这需要怎么做呢?

急救,救急,请大家帮帮忙!!!!!!!!!!

我的程序思路是:

当2530被中断唤醒后,用osal_pwrmgr_device(PWRMGR_ALWAYS_ON)取消其休眠功能,然后利用T1计时对红外信号解码,解码完毕后再用osal_pwrmgr_device(PWRMGR_BATTERY)恢复休眠

Cheukyin Yip:

请各位老师帮帮忙,这个问题我已经纠结了半个月了,还没有结果

Cheukyin Yip:

万能众人膜拜的TI大神啊,你们回答了这么多高级问题,怎么就不理一下我啊!!!

麻烦略施援手,在下万分感激

VV:

回复 Cheukyin Yip:

从中断唤醒到处理中断服务程序,需要等32M的晶振稳定以后再处理的,这个过程是芯片自己完成的,

从PM2到Active状态一般需要100us,数据手册上有说明。

赞(0)
未经允许不得转载:TI中文支持网 » cc2530中断唤醒后的时钟设置问题
分享到: 更多 (0)