macMcpsDataReq_t *pData;
pData = MAC_McpsDataAlloc(29, MAC_SEC_LEVEL_NONE, MAC_KEY_ID_MODE_NONE);
osal_memcpy(pData->msdu.p, strTemp, 29);
pData->msdu.len = 29;
pData->mac.dstAddr.addrMode = SADDR_MODE_EXT;
pData->mac.dstAddr.addr.extAddr[7]=0x00;
pData->mac.dstAddr.addr.extAddr[6]=0x12;
pData->mac.dstAddr.addr.extAddr[5]=0x4B;
pData->mac.dstAddr.addr.extAddr[4]=0x00;
pData->mac.dstAddr.addr.extAddr[3]=0x18;
pData->mac.dstAddr.addr.extAddr[2]=0xDE;
pData->mac.dstAddr.addr.extAddr[1]=0xFF;
pData->mac.dstAddr.addr.extAddr[0]=0x2D;
pData->mac.dstPanId=0x00ff;
pData->mac.msduHandle=0;
pData->mac.srcAddrMode=SADDR_MODE_EXT;
pData->mac.txOptions=MAC_TXOPTION_ACK | MAC_TXOPTION_NO_RETRANS | MAC_TXOPTION_NO_CNF;
pData->sec.securityLevel = false;
MAC_McpsDataReq(pData); //到MAC_CbackEvent
这是我的发送数据的
#if defined (ZDO_COORDINATOR)
macMcpsDataInd_t *pData;
if ( events & SYS_EVENT_MSG )
{
pData = (macMcpsDataInd_t *)osal_msg_receive( SampleApp_TaskID );
while ( pData )
{
switch ( pData->hdr.event )
{
case MAC_MCPS_DATA_IND:
HalUARTWrite(0, " ", 2);
HalUARTWrite(0, pData->msdu.p, pData->msdu.len);
HalUARTWrite(0, "\n",1);
HalLedBlink ( HAL_LED_1, 0, 50, 500 ); //led 闪烁
break;
default:
break;
}
osal_msg_deallocate( (uint8 *)pData ); // Release the memory
pData = (macMcpsDataInd_t *)osal_msg_receive( SampleApp_TaskID ); // Next - if one is available
}
return (events ^ SYS_EVENT_MSG);
}
#endif
这是接收的。
但我抓包是对的,就是协调器收不到数据