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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? zmac.c

?? Zigbee2006入門(源代碼+文檔講解+系統推薦)
?? C
?? 第 1 頁 / 共 2 頁
字號:
/********************************************************************************************************
    Filename:       zmac.c
    Revised:        $Date: 2006-11-28 13:47:33 -0800 (Tue, 28 Nov 2006) $
    Revision:       $Revision: 12837 $

    Description:

    This file contains the ZStack MAC Porting Layer

    Notes:

    Copyright (c) 2006 by Texas Instruments, Inc.
    All Rights Reserved.  Permission to use, reproduce, copy, prepare
    derivative works, modify, distribute, perform, display or sell this
    software and/or its documentation for any purpose is prohibited
    without the express written consent of Texas Instruments, Inc.
 ********************************************************************************************************/


/********************************************************************************************************
 *                                               INCLUDES
 ********************************************************************************************************/

#include "ZComDef.h"
#include "OSAL.h"
#include "ZMAC.h"

/********************************************************************************************************
 *                                                 MACROS
 ********************************************************************************************************/

/********************************************************************************************************
 *                                               CONSTANTS
 ********************************************************************************************************/
static CONST byte TxPowerSettings[] =
{
  OUTPUT_POWER_0DBM,
  OUTPUT_POWER_N1DBM,
  OUTPUT_POWER_N3DBM,
  OUTPUT_POWER_N5DBM,
  OUTPUT_POWER_N7DBM,
  OUTPUT_POWER_N10DBM,
  OUTPUT_POWER_N15DBM,
  OUTPUT_POWER_N25DBM
};

/********************************************************************************************************
 *                                               GLOBALS
 ********************************************************************************************************/
uint32 _ScanChannels;

extern uint8 aExtendedAddress[];

/********************************************************************************************************
 *                                               LOCALS
 ********************************************************************************************************/

/* Pointer to scan result buffer */
void *ZMac_ScanBuf = NULL;

/********************************************************************************************************
 * LOCAL FUNCTION PROTOTYPES
 ********************************************************************************************************/

/********************************************************************************************************
 *                                                TYPEDEFS
 ********************************************************************************************************/


/********************************************************************************************************
 *                                                FUNCTIONS
 ********************************************************************************************************/

/********************************************************************************************************
 * @fn      ZMacInit
 *
 * @brief   Initialize MAC.
 *
 * @param   none.
 *
 * @return  status.
 ********************************************************************************************************/
ROOT uint8 ZMacInit( void )
{
  uint8 stat;

  MAC_Init();
  MAC_InitDevice();

#if defined ( RTR_NWK )
  MAC_InitCoord();
#endif

  // If OK, initialize the MAC
  stat = ZMacReset( TRUE );

  // Turn off interrupts
  osal_int_disable( INTS_ALL );

  return ( stat );
}

/********************************************************************************************************
 * @fn      ZMacUpdate
 *
 * @brief   Gives MAC (or others) some processing time.
 *
 * @param   none.
 *
 * @return  true if CPU needs to keep running (not sleep).
 ********************************************************************************************************/
ROOT byte ZMacUpdate( void )
{
  /* Put code here that needs to run each OSAL event loop */
  return ( false );
}

/********************************************************************************************************
 * @fn      ZMacReset
 *
 * @brief   Reset the MAC.
 *
 * @param   Default to PIB defaults.
 *
 * @return  status.
 ********************************************************************************************************/
ROOT uint8 ZMacReset( bool SetDefaultPIB )
{
  byte stat;
  byte value;

  stat = MAC_MlmeResetReq( SetDefaultPIB );

  // Don't send PAN ID conflict
  value = FALSE;
  MAC_MlmeSetReq( MAC_ASSOCIATED_PAN_COORD, &value );
  MAC_MlmeSetReq( MAC_EXTENDED_ADDRESS, &aExtendedAddress );

  if (ZMac_ScanBuf)
  {
    osal_mem_free(ZMac_ScanBuf);
    ZMac_ScanBuf = NULL;
  }

  return ( stat );
}


/********************************************************************************************************
 * @fn      ZMacGetReq
 *
 * @brief   Read a MAC PIB attribute.
 *
 * @param   attr - PIB attribute to get
 * @param   value - pointer to the buffer to store the attribute
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacGetReq( uint8 attr, uint8 *value )
{
  if ( attr == ZMacExtAddr )
  {
    osal_cpyExtAddr( value, &aExtendedAddress );
    return ZMacSuccess;
  }

  return (ZMacStatus_t) MAC_MlmeGetReq( attr, value );
}


/********************************************************************************************************
 * @fn      ZMacSetReq
 *
 * @brief   Write a MAC PIB attribute.
 *
 * @param   attr - PIB attribute to Set
 * @param   value - pointer to the data
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacSetReq( uint8 attr, byte *value )
{
  if ( attr == ZMacExtAddr )
  {
    osal_cpyExtAddr( &aExtendedAddress, value );
  }

  return (ZMacStatus_t) MAC_MlmeSetReq( attr, value );
}

/********************************************************************************************************
 * @fn      ZMacAssociateReq
 *
 * @brief   Request an association with a coordinator.
 *
 * @param   structure with info need to associate.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacAssociateReq( ZMacAssociateReq_t *pData )
{
  /* Right now, set security to zero */
  pData->Sec.SecurityLevel = false;

  MAC_MlmeAssociateReq ( (macMlmeAssociateReq_t *)pData);
  return ( ZMacSuccess );
}

/********************************************************************************************************
 * @fn      ZMacAssociateRsp
 *
 * @brief   Request to send an association response message.
 *
 * @param   structure with associate response and info needed to send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacAssociateRsp( ZMacAssociateRsp_t *pData )
{
  /* Right now, set security to zero */
  pData->Sec.SecurityLevel = false;

  MAC_MlmeAssociateRsp( (macMlmeAssociateRsp_t *) pData );
  return ( ZMacSuccess );
}

/********************************************************************************************************
 * @fn      ZMacDisassociateReq
 *
 * @brief   Request to send a disassociate request message.
 *
 * @param   structure with info need send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacDisassociateReq( ZMacDisassociateReq_t *pData )
{
  /* Right now, set security to zero */
  pData->Sec.SecurityLevel = false;

  MAC_MlmeDisassociateReq( (macMlmeDisassociateReq_t *)pData);
  return ( ZMacSuccess );
}

/********************************************************************************************************
 * @fn      ZMacOrphanRsp
 *
 * @brief   Allows next higher layer to respond to an orphan indication message.
 *
 * @param   structure with info need send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacOrphanRsp( ZMacOrphanRsp_t *pData )
{
  /* Right now, set security to zero */
  pData->Sec.SecurityLevel = false;

  MAC_MlmeOrphanRsp( (macMlmeOrphanRsp_t *)pData);
  return ( ZMacSuccess );
}

/********************************************************************************************************
 * @fn      ZMacRxEnableReq
 *
 * @brief   This function contains timing information that tells the
 *          device when to enable or disable its receiver, in order
 *          to schedule a data transfer between itself and another
 *          device. The information is sent from the upper layers
 *          directly to the MAC sublayer.
 *
 * @param   structure with info need send it.
 *
 * @return  status
 ********************************************************************************************************/
ROOT uint8 ZMacRxEnableReq( ZMacRxEnableReq_t *pData )
{
  /* This feature is no longer in the TIMAC */
  return ( ZMacUnsupported );
}

/********************************************************************************************************

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区在线视频| 91美女在线观看| 91蜜桃传媒精品久久久一区二区| 制服丝袜亚洲精品中文字幕| 国产视频一区在线播放| 水野朝阳av一区二区三区| 成人免费毛片片v| 欧美成人伊人久久综合网| 亚洲蜜桃精久久久久久久| 国产一区二区看久久| 欧美人牲a欧美精品| 一区二区三区四区亚洲| 风间由美性色一区二区三区| 欧美一区二区免费观在线| 亚洲伊人色欲综合网| 成人午夜av电影| 久久蜜桃一区二区| 免费看日韩精品| 欧美精品丝袜中出| 亚洲h动漫在线| 一本久久综合亚洲鲁鲁五月天 | 日韩精品一区二区三区视频在线观看| 久久精品一区二区三区av| 免费观看在线色综合| 欧美日韩三级在线| 亚洲第一福利视频在线| 在线看国产一区| 亚洲女人****多毛耸耸8| 91看片淫黄大片一级| 最新热久久免费视频| 99久久精品国产一区二区三区| 国产亚洲欧洲一区高清在线观看| 韩国毛片一区二区三区| 久久亚洲影视婷婷| 国产精品综合一区二区| 欧美精品一区二区三区高清aⅴ | 26uuu久久天堂性欧美| 免费人成黄页网站在线一区二区| 欧美老肥妇做.爰bbww| 欧美bbbbb| 精品成人在线观看| 国产精品99久久久久久久女警| 久久久精品中文字幕麻豆发布| 国产综合一区二区| 国产精品久久久久三级| 日本道免费精品一区二区三区| 亚洲香肠在线观看| 欧美一区二区三区爱爱| 国产在线精品一区二区| 中文一区二区在线观看| 97久久久精品综合88久久| 亚洲激情av在线| 欧美精品久久99| 国产精品一区二区91| 亚洲色图视频网| 欧美男人的天堂一二区| 免费高清视频精品| 亚洲欧洲美洲综合色网| 欧美乱妇23p| 国产精品一区二区久激情瑜伽| 中文字幕亚洲综合久久菠萝蜜| 欧美在线免费观看视频| 国内精品国产三级国产a久久| 国产精品视频免费| 555夜色666亚洲国产免| 国产乱淫av一区二区三区| 中文字幕在线观看不卡视频| 欧美久久久影院| www.日韩av| 看电影不卡的网站| 亚洲精品视频自拍| 欧美成人综合网站| 欧美丝袜自拍制服另类| 精品一区二区久久久| 一个色妞综合视频在线观看| 亚洲精品在线三区| 欧美午夜电影网| 国产一区二区久久| 亚洲国产成人av网| 国产精品三级视频| 欧美成人国产一区二区| 色天天综合久久久久综合片| 国产麻豆日韩欧美久久| 婷婷夜色潮精品综合在线| 国产精品蜜臀av| 精品女同一区二区| 欧美日韩成人在线| 91在线porny国产在线看| 久久国产精品免费| 午夜伦理一区二区| 一区二区免费在线播放| 精品sm在线观看| 欧美一级黄色片| 欧美无砖砖区免费| 欧美中文字幕不卡| 色综合色狠狠天天综合色| 国产成人综合精品三级| 久久电影国产免费久久电影| 亚洲地区一二三色| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美日韩国产一区二区三区地区| 国产sm精品调教视频网站| 美国av一区二区| 蜜臀精品一区二区三区在线观看| 亚洲丶国产丶欧美一区二区三区| 自拍偷拍欧美精品| 国产精品美女久久久久高潮| 久久九九久久九九| 久久久激情视频| 久久综合九色综合97婷婷| 欧美xxxxxxxxx| 精品国产伦一区二区三区免费 | 婷婷综合另类小说色区| 亚洲国产精品影院| 午夜激情一区二区| 免费看日韩精品| 久久99精品国产.久久久久| 蜜桃视频免费观看一区| 久久成人免费网站| 国产精品18久久久久久久久久久久| 国模无码大尺度一区二区三区 | 日本一区中文字幕 | 成人高清免费观看| av中文字幕一区| 色噜噜狠狠成人中文综合| 91视频在线观看免费| 色视频成人在线观看免| 欧美亚洲一区二区三区四区| 欧美在线不卡视频| 欧美欧美午夜aⅴ在线观看| 日韩午夜精品视频| 久久精品男人的天堂| 中文字幕亚洲精品在线观看| 17c精品麻豆一区二区免费| 亚洲天堂福利av| 亚洲成人综合视频| 国产一区二区三区| 91麻豆蜜桃一区二区三区| 欧美日韩情趣电影| 精品少妇一区二区三区免费观看 | 国产一区视频网站| 不卡免费追剧大全电视剧网站| 99国产欧美久久久精品| 欧美日韩精品一区二区在线播放| 欧美一级欧美一级在线播放| 久久麻豆一区二区| 亚洲欧美日韩久久| 丝袜美腿成人在线| 成人h动漫精品一区二| 欧美日韩精品一区二区三区 | 91麻豆精品国产自产在线观看一区| 欧美一区三区四区| 中文乱码免费一区二区| 亚洲国产精品久久一线不卡| 狠狠网亚洲精品| 欧美性受极品xxxx喷水| 欧美成人精品高清在线播放| ●精品国产综合乱码久久久久| 日韩高清一区在线| 波多野结衣91| 精品日韩欧美在线| 亚洲成人免费电影| 成人国产精品免费观看| 日韩欧美一区二区视频| 亚洲裸体xxx| 黑人巨大精品欧美一区| 精品视频1区2区| 国产精品成人免费在线| 久久99精品久久久久久动态图| 99久久综合国产精品| 亚洲精品一线二线三线 | 中文字幕中文在线不卡住| 日韩av中文字幕一区二区三区| 97超碰欧美中文字幕| 久久久久久免费网| 蜜桃在线一区二区三区| 欧洲一区二区三区免费视频| 久久久www成人免费毛片麻豆| 午夜精品福利视频网站| 99re热这里只有精品视频| 久久久久久一二三区| 日韩国产欧美在线视频| 色噜噜久久综合| 国产精品国产三级国产aⅴ入口 | 久久亚洲二区三区| 日韩国产欧美在线播放| 欧美日韩一区 二区 三区 久久精品| 日本一区二区在线不卡| 国产精品自拍网站| 精品欧美乱码久久久久久 | 亚洲精品国产品国语在线app| 成人性视频网站| 亚洲国产精品精华液ab| 国产精品一区二区x88av| 久久婷婷久久一区二区三区| 日本最新不卡在线| 3d成人动漫网站| 视频一区二区欧美| 欧美欧美欧美欧美首页| 丝瓜av网站精品一区二区|