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

CC2530多通道外部中断

尊敬的工程师:

       问一个关于CC2530多通道外部中断问题。配置P0_0和P0_6同时为外部中断,两个中断都是由外部定时触发。每个中断触发之后,记录当前时间(读取timer1相应寄存器),两个中断的间隔约为200us。中断函数代码如下。

       调试时存在问题是:P0_0能够读取正确时间,P0_6中断触发后读的时间不正确。

       问题原因是什么呢?P0_0和P0_6不独立;还是两次中断间隔太短;还是读timer时间有问题。

       希望能够得到回复。

#pragma vector = P0INT_VECTOR
__interrupt void P0_ISR(void)
{ if(P0IFG>0)
{
uint16_t TL,TH;
uint16_t THL;
if(P0IFG&0x01) {
P0IFG&=~0x01; TL=T1CNTL;
TH=T1CNTH;
THL = (TH<<8)+TL;
}
if(P0IFG&0x40) {
P0IFG&=~0x40;
TL=T1CNTL;
TH=T1CNTH;
THL = (TH<<8)+TL;
}
}
IRCON&=~0x20;}

Maka Luo:

帮你转到Zigbee论坛

Zheng Tao:

回复 Maka Luo:

好的,多谢~

赞(0)
未经允许不得转载:TI中文支持网 » CC2530多通道外部中断
分享到: 更多 (0)