Part Number:LAUNCHXL-CC1310
Tool/software:TI-RTOS
We are currently testing the following:
1. It operates as two nodes and one concentrator.
2. The configuration of each node is as follows.
(no. 1)
source addr: 0xaa
destination addr: 0x00
(No.2)
source addr: 0xbb
destination addr: 0x11
3. The configuration of the concentrator is as follows.
ConcentratorAddress: 0x00
EasyLink_enableRxAddrFilter (& concentratorAddress, 1, 1)
4. I have configured the button interrupt.
If ConcentratorChangeFilter function is called through an interrupt in concentratortask.c After stopping the current EasyLink_receiveAsync (rxDoneCallback, 0) After changing EasyLink_enableRxAddrFilter (0x00 -> 0x11 or 0x11 -> 0x00) Call EasyLink_receiveAsync (rxDoneCallback, 0) again.
==== ConcentratorChangeFilter Fucntion======
void ConcentratorChangeFilter (void)
{
EasyLink_abort ();
if (chgFlag == 0)
{
ConcentratorAddress = RADIO_CONCENTRATOR_ADDRESS_TWO;
EasyLink_enableRxAddrFilter (& concentratorAddress, 1, 1);
chgFlag = 1;
}
else if (chgFlag == 1)
{
ConcentratorAddress = RADIO_CONCENTRATOR_ADDRESS_ONE;
EasyLink_enableRxAddrFilter (& concentratorAddress, 1, 1);
chgFlag = 0;
}
if (EasyLink_receiveAsync (rxDoneCallback, 0)! = EasyLink_Status_Success) {
System_abort ("EasyLink_receiveAsync failed");
}
}
There is a problem here.
When I performed the actual operation, I found that it stopped at RF_pendCmd.
I do not understand the similar posts on other forums.
Why does EasyLink_receiveAsync not stop?
Could you explain in detail?
thanks