使用F2132与CC1101,前者用到了P2.0作GDO0、P2.1作GDO2,要求收到同步字时P2.1置高
//====================== GDO2的外部中断设置 ====================
void GDO2_ISR(void)
{
TI_CC_GDO2_PxSEL &=~TI_CC_GDO2_PIN; // 普通IO
TI_CC_GDO2_PxDIR &=~TI_CC_GDO2_PIN; // input
TI_CC_GDO2_PxREN |= TI_CC_GDO2_PIN; //
TI_CC_GDO2_PxOUT &=~TI_CC_GDO2_PIN; // Set P2.1 as pull-Down resistance
TI_CC_GDO2_PxIES &=~TI_CC_GDO2_PIN; // P2.1 Lo->Hi edge
TI_CC_GDO2_PxIFG &=~TI_CC_GDO2_PIN; // P2.1 IFG cleared
TI_CC_GDO2_PxIE |= TI_CC_GDO2_PIN; // P2.1 interrupt enabled,GDO2
}
上面代码的第5行(P2IES &=~BIT1;)则接收端会出现连接2次RF数据接收,且检查发现是发送端已经发送了3次(收到的是第1次和第3次);
而如果修改为(P2IES &= BIT1;)则接收端会正确地只收到1次RF数据。
后面的写法,有什么其它的问题呢?