亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? zmac.c

?? Zigbee2006入門(源代碼+文檔講解+系統(tǒng)推薦)
?? C
?? 第 1 頁 / 共 2 頁
字號:
 * @fn      ZMacScanReq
 *
 * @brief   This function is called to perform a network scan.
 *
 * @param   param - structure with info need send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacScanReq( ZMacScanReq_t *pData )
{
  _ScanChannels = pData->ScanChannels;

  /* scan in progress */
  if (ZMac_ScanBuf != NULL)
  {
    return MAC_SCAN_IN_PROGRESS;
  }

  if (pData->ScanType != ZMAC_ORPHAN_SCAN)
  {
    /* Allocate memory depends on the scan type */
    if (pData->ScanType == ZMAC_ED_SCAN)
    {
      if ((ZMac_ScanBuf = osal_mem_alloc(ZMAC_ED_SCAN_MAXCHANNELS)) == NULL)
      {
        return MAC_NO_RESOURCES;
      }
      osal_memset(ZMac_ScanBuf, 0, ZMAC_ED_SCAN_MAXCHANNELS);
      pData->Result.pEnergyDetect = ((uint8*)ZMac_ScanBuf) + MAC_CHAN_11;
    }
    else if (pData->MaxResults > 0)
    {
      if ((ZMac_ScanBuf = pData->Result.pPanDescriptor =
           osal_mem_alloc( sizeof( ZMacPanDesc_t ) * pData->MaxResults )) == NULL)
      {
        return MAC_NO_RESOURCES;
      }
    }
  }

  /* Right now, set security to zero */
  pData->Sec.SecurityLevel = false;

  /* Channel Page */
  pData->ChannelPage = 0x00;

  MAC_MlmeScanReq ((macMlmeScanReq_t *)pData);

  return ZMacSuccess;
}


/********************************************************************************************************
 * @fn      ZMacStartReq
 *
 * @brief   This function is called to tell the MAC to transmit beacons
 *          and become a coordinator.
 *
 * @param   structure with info need send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacStartReq( ZMacStartReq_t *pData )
{
  uint8 stat;

  // Probably want to keep the receiver on
  stat = true;
  MAC_MlmeSetReq( MAC_RX_ON_WHEN_IDLE, &stat );

  /* Right now, set security to zero */
  pData->RealignSec.SecurityLevel = false;
  pData->BeaconSec.SecurityLevel = false;


  MAC_MlmeStartReq((macMlmeStartReq_t *) pData);

  // MAC does not issue mlmeStartConfirm(), so we have to
  // mlmeStartConfirm( stat );  This needs to be addressed some how

  return ZMacSuccess;
}

/********************************************************************************************************
 * @fn      ZMacSyncReq
 *
 * @brief   This function is called to request a sync to the current
 *          networks beacons.
 *
 * @param   LogicalChannel -
 * @param   TrackBeacon - true/false
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacSyncReq( ZMacSyncReq_t *pData )
{
  MAC_MlmeSyncReq( (macMlmeSyncReq_t *)pData);
  return ZMacSuccess;
}

/********************************************************************************************************
 * @fn      ZMacPollReq
 *
 * @brief   This function is called to request MAC data request poll.
 *
 * @param   coordAddr -
 * @param   coordPanId -
 * @param   SecurityEnable - true or false.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacPollReq( ZMacPollReq_t *pData )
{
  /* Right now, set security to zero */
  pData->Sec.SecurityLevel = false;

  MAC_MlmePollReq ((macMlmePollReq_t *)pData);
  return ( ZMacSuccess );
}

/********************************************************************************************************
 * @fn      ZMacDataReq
 *
 * @brief   Send a MAC Data Frame packet.
 *
 * @param   structure containing data and where to send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacDataReq( ZMacDataReq_t *pData )
{
  macMcpsDataReq_t *pBuf;

  /* Allocate memory */
  pBuf = MAC_McpsDataAlloc(pData->msduLength, MAC_SEC_LEVEL_NONE, MAC_KEY_ID_MODE_NONE);

  if (pBuf)
  {
    /* Copy the addresses */
    osal_memcpy (&pBuf->mac, pData, sizeof (macDataReq_t));

    /* Copy data */
    pBuf->msdu.len = pData->msduLength;
    osal_memcpy (pBuf->msdu.p, pData->msdu, pData->msduLength);

    /* Right now, set security to zero */
    pBuf->sec.securityLevel = false;

    /* Call Mac Data Request */
    MAC_McpsDataReq(pBuf);

    return ( ZMacSuccess );
  }

  return MAC_NO_RESOURCES;
}

/********************************************************************************************************
 * @fn      ZMacPurgeReq
 *
 * @brief   Purge a MAC Data Frame packet.
 *
 * @param   MSDU data handle.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacPurgeReq( byte Handle )
{
  MAC_McpsPurgeReq( Handle );
  return ZMacSuccess;
}

/********************************************************************************************************
 * @fn      - ZMACPwrOnReq
 *
 * @brief   - This function requests the MAC to power on the radio hardware
 *            and wake up.  When the power on procedure is complete the MAC
 *            will send a MAC_PWR_ON_CNF to the application.
 *
 * @input   - None.
 *
 * @output  - None.
 *
 * @return  - None.
 ********************************************************************************************************/
void ZMacPwrOnReq ( void )
{
  MAC_PwrOnReq();
}

/********************************************************************************************************
 * @fn          MAC_PwrMode
 *
 * @brief       This function returns the current power mode of the MAC.
 *
 * input parameters
 *
 * None.
 *
 * output parameters
 *
 * None.
 *
 * @return      The current power mode of the MAC.
 ********************************************************************************************************/
uint8 ZMac_PwrMode(void)
{
  return (MAC_PwrMode());
}

/********************************************************************************************************
 * @fn      ZMacSetTransmitPower
 *
 * @brief   Set the transmitter power according to the level setting param.
 *
 * @param   Valid power level setting as defined in ZMAC.h.
 *
 * @return  ZMacSuccess if PHY_TRANSMIT_POWER found or ZMacUnsupportedAttribute.
 ********************************************************************************************************/
ROOT uint8 ZMacSetTransmitPower( ZMacTransmitPower_t level )
{
  uint8 pwr;

  if ( (level /= 2) >= 8 )
  {
    pwr = TxPowerSettings[0];
  }
  else
  {
    pwr = TxPowerSettings[level];
  }

  if ( MAC_MlmeSetReq( ZMacPhyTransmitPower, &pwr ) == ZSUCCESS )
  {
    //msupSetTransmitPower();
    return ZMacSuccess;
  }

  return ZMacUnsupportedAttribute;
}

/********************************************************************************************************
 * @fn      ZMacSendNoData
 *
 * @brief   This function sends an empty msg
 *
 * @param   DstAddr   - destination short address
 *          DstPANId  - destination pan id
 *
 * @return  None
 ********************************************************************************************************/
ROOT void ZMacSendNoData ( uint16 DstAddr, uint16 DstPANId )
{
  macMcpsDataReq_t *pBuf;

  /* Allocate memory */
  pBuf = MAC_McpsDataAlloc(0, MAC_SEC_LEVEL_NONE, MAC_KEY_ID_MODE_NONE);

  if (pBuf)
  {
    /* Fill in src information */
    pBuf->mac.srcAddrMode              = SADDR_MODE_SHORT;

    /* Fill in dst information */
    pBuf->mac.dstAddr.addr.shortAddr   = DstAddr;
    pBuf->mac.dstAddr.addrMode         = SADDR_MODE_SHORT;
    pBuf->mac.dstPanId                 = DstPANId;

    /* Misc information */
    pBuf->mac.msduHandle               = 0;
    pBuf->mac.txOptions                = ZMAC_TXOPTION_ACK | ZMAC_TXOPTION_NO_RETRANS | ZMAC_TXOPTION_NO_CNF;

    /* Right now, set security to zero */
    pBuf->sec.securityLevel = false;

    /* Call Mac Data Request */
    MAC_McpsDataReq(pBuf);
  }

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久国产综合精品女不卡| 一区二区三区蜜桃| 国产精品久久久久久久久搜平片| 综合激情网...| 韩国av一区二区三区在线观看| 91一区二区三区在线播放| 欧美tk丨vk视频| 亚洲1区2区3区视频| zzijzzij亚洲日本少妇熟睡| 精品人伦一区二区色婷婷| 亚洲欧美另类在线| 成人免费黄色在线| 久久青草国产手机看片福利盒子| 亚洲.国产.中文慕字在线| 91视频免费播放| 国产精品视频观看| 激情文学综合丁香| 欧美一二三四区在线| 亚洲线精品一区二区三区| 北条麻妃一区二区三区| 久久综合999| 美女视频黄a大片欧美| 欧美日韩精品福利| 亚洲一区在线观看网站| 色噜噜狠狠成人中文综合 | 国产精品三级视频| 久久av资源站| 日韩视频在线永久播放| 香蕉成人伊视频在线观看| 91精品办公室少妇高潮对白| 中文字幕一区二区三中文字幕| 国产精品一二一区| 2021国产精品久久精品| 精品一区二区三区在线播放视频| 欧美一区二区三区色| 男人的j进女人的j一区| 在线播放欧美女士性生活| 日韩精品一卡二卡三卡四卡无卡 | 国产精品亚洲人在线观看| 欧美本精品男人aⅴ天堂| 美女爽到高潮91| 欧美v国产在线一区二区三区| 麻豆精品视频在线| 久久综合给合久久狠狠狠97色69| 国产精品夜夜爽| 亚洲欧美日韩国产一区二区三区 | 成人av手机在线观看| 国产精品进线69影院| av午夜一区麻豆| 一区二区三区蜜桃| 欧美xxxx在线观看| 成人亚洲一区二区一| 亚洲美女视频在线| 欧美日韩激情在线| 久草热8精品视频在线观看| 久久精品在线观看| 色综合天天综合在线视频| 亚洲成人一二三| 精品国产一区久久| 97久久超碰精品国产| 一区二区三区国产| 欧美va亚洲va香蕉在线| www.欧美色图| 肉色丝袜一区二区| 国产欧美综合色| 欧美在线观看视频一区二区| 久久97超碰色| 伊人婷婷欧美激情| 精品日韩欧美一区二区| 色视频一区二区| 国产在线精品一区二区三区不卡| 国产精品国产三级国产普通话蜜臀 | 91网上在线视频| 人人狠狠综合久久亚洲| 国产精品久久久一区麻豆最新章节| 欧洲av在线精品| 国产激情一区二区三区桃花岛亚洲| 亚洲综合在线观看视频| www久久精品| 欧美日韩国产首页| 不卡视频在线看| 九色综合狠狠综合久久| 依依成人精品视频| 中文字幕av一区二区三区高| 6080国产精品一区二区| 99热精品一区二区| 国产九九视频一区二区三区| 三级不卡在线观看| 一区二区久久久| 中文字幕一区三区| 久久精品男人的天堂| 这里是久久伊人| 欧美性色欧美a在线播放| 成人三级伦理片| 国产一区啦啦啦在线观看| 午夜在线成人av| 亚洲一区在线观看免费观看电影高清| 国产视频一区二区在线| 日韩精品在线网站| 欧美精品aⅴ在线视频| 日本福利一区二区| 99视频一区二区| 不卡一区二区中文字幕| 丁香婷婷综合五月| 国产成人在线视频网址| 精品亚洲免费视频| 九色|91porny| 极品美女销魂一区二区三区免费| 日韩电影免费一区| 午夜av区久久| 日韩国产欧美在线播放| 图片区小说区国产精品视频| 亚洲久草在线视频| 一区二区三区不卡视频在线观看| 国产精品久久久久一区二区三区| 国产午夜一区二区三区| 久久久精品综合| 国产日韩欧美a| 国产女人aaa级久久久级| 久久精品免费在线观看| 日本一区二区视频在线观看| 国产丝袜欧美中文另类| 国产精品久久综合| 亚洲色图在线播放| 一区二区三区 在线观看视频| 亚洲最大成人网4388xx| 天天av天天翘天天综合网| 日韩—二三区免费观看av| 老司机午夜精品99久久| 国产麻豆精品久久一二三| 国产福利91精品| 91免费视频大全| 欧美日韩在线电影| 日韩欧美在线网站| 中日韩av电影| 一区二区三区影院| 日韩福利电影在线| 成人激情动漫在线观看| 欧美专区日韩专区| 日韩欧美中文字幕一区| 欧美国产精品久久| 亚洲国产精品久久久久婷婷884| 日日夜夜免费精品| 国产99久久久久| 欧美日韩成人高清| 欧美国产日产图区| 午夜av电影一区| 国产91富婆露脸刺激对白| 在线观看中文字幕不卡| 欧美一区二区三区白人| 亚洲国产精品激情在线观看| 怡红院av一区二区三区| 激情小说欧美图片| 色欧美日韩亚洲| 久久毛片高清国产| 亚洲一区二区三区激情| 国产成人免费xxxxxxxx| 欧美午夜精品免费| 国产网站一区二区| 日韩高清不卡在线| 色婷婷综合久久久中文一区二区| 正在播放一区二区| 亚洲精品videosex极品| 国产一区二区三区免费播放| 欧美丝袜自拍制服另类| 国产精品女上位| 久久国产精品99精品国产| 一本色道久久综合亚洲精品按摩| 精品精品欲导航| 亚洲线精品一区二区三区| 成人久久视频在线观看| 欧美一级电影网站| 石原莉奈在线亚洲二区| 色综合久久久久综合体桃花网| 久久免费偷拍视频| 青娱乐精品在线视频| 在线亚洲人成电影网站色www| 久久久不卡网国产精品一区| 日韩精品电影在线| 欧美午夜精品一区| 亚洲一二三区不卡| 91亚洲精品乱码久久久久久蜜桃| 久久精品男人天堂av| 久久福利视频一区二区| 51精品视频一区二区三区| 玉足女爽爽91| 色综合久久久久网| 亚洲视频在线观看一区| 成人av资源站| 国产精品无遮挡| 成人免费不卡视频| 日本一区二区高清| 国产成人精品免费看| 久久久久久久性| 国产精品自拍av| 久久久久久久久久看片| 国产麻豆一精品一av一免费 | 在线观看91av| 天天综合色天天综合| 欧美久久久影院|