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

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

?? 2.txt

?? 基于ZIGBEE技術的無線傳感網絡的通信,以及與PC的串口通信,芯片是JENIC JN5121
?? TXT
?? 第 1 頁 / 共 2 頁
字號:

		default:
			break;
	}
}

/****************************************************************************
 *
 * NAME: vReadTempHumidity
 *
 * DESCRIPTION:
 *
 * Read temperature/humidity sensor. Reading is performed using a state machine
 * to ensure that it never blocks.
 *
 ****************************************************************************/
PRIVATE void vReadTempHumidity(void)
{
    switch(sTempHumiditySensor.eState)
	{
		case E_STATE_READ_TEMP_HUMID_IDLE:
		    vHTSstartReadHumidity();
			sTempHumiditySensor.eState = E_STATE_READ_HUMID_RUNNING;
		break;

		case E_STATE_READ_HUMID_RUNNING:
			if ((u32AHI_DioReadInput() & HTS_DATA_DIO_BIT_MASK) == 0)
			{
				sTempHumiditySensor.eState = E_STATE_READ_TEMP_HUMID_COMPLETE;
			}
			break;

		case E_STATE_READ_TEMP_HUMID_COMPLETE:
			sTempHumiditySensor.u16HumidReading = u16HTSreadHumidityResult();
			sTempHumiditySensor.eState     = E_STATE_READ_TEMP_START;
			break;

		case E_STATE_READ_TEMP_START:
		    vHTSstartReadTemp();
			sTempHumiditySensor.eState = E_STATE_READ_TEMP_HUMID_RUNNING;
			break;

		case E_STATE_READ_TEMP_HUMID_RUNNING:
			if ((u32AHI_DioReadInput() & HTS_DATA_DIO_BIT_MASK) == 0)
			{
				sTempHumiditySensor.eState = E_STATE_READ_TEMP_COMPLETE;
			}
			break;

		case E_STATE_READ_TEMP_COMPLETE:
			sTempHumiditySensor.u16TempReading = u16HTSreadTempResult();
			sTempHumiditySensor.eState     = E_STATE_READ_TEMP_HUMID_READY;
			break;

		case E_STATE_READ_TEMP_HUMID_READY:
			break;

		default:
			break;
	}
}

/****************************************************************************
 *
 * NAME: vSendData
 *
 * DESCRIPTION:
 *
 * Transmit sensor data to coordinator.
 *
 ****************************************************************************/
PRIVATE void vSendData(void)
{
    AFDE_DATA_REQ_INFO  asAfdeDataReq[1];
    AF_ADDRTYPE         hDstAddr;
    uint8               au8Afdu[6];

    hDstAddr.hAddrMode  = DEV_16BIT_ADDR;
    hDstAddr.u16Address = 0x0000;
    hDstAddr.u8EndPoint = WSN_DATA_SINK_ENDPOINT;

    asAfdeDataReq[0].u8SequenceNum = ais.u8AfTransactionSequence++;
    asAfdeDataReq[0].u8DividedAfduLen = 6;

    au8Afdu[0] = sBattSensor.u16Reading;
	au8Afdu[1] = sBattSensor.u16Reading >> 8;
    au8Afdu[2] = sTempHumiditySensor.u16TempReading;
	au8Afdu[3] = sTempHumiditySensor.u16TempReading >> 8;
    au8Afdu[4] = sTempHumiditySensor.u16HumidReading;
	au8Afdu[5] = sTempHumiditySensor.u16HumidReading >> 8;

    afdeDataRequest(hDstAddr,                   /* Destination address */
                    WSN_DATA_SOURCE_ENDPOINT,   /* Source endpoint */
                    WSN_PROFILE_ID,             /* Profile ID */
                    WSN_CID_SENSOR_READINGS,    /* Cluster ID */
                    MSG,                        /* Frame type */
                    1,                          /* Transactions */
                    asAfdeDataReq,              /* Transaction info */
                    au8Afdu,                    /* Transaction data */
                    APS_TXOPTION_NONE,          /* Transmit options */
                    SUPPRESS_ROUTE_DISCOVERY,   /* Route discovery mode */
                    0);                         /* Radius count */
}

/****************************************************************************/
/***               Functions called by the stack                          ***/
/****************************************************************************/

/****************************************************************************
 *
 * NAME: JZA_vZdpResponse
 *
 * DESCRIPTION:
 * Called when a ZDP response frame has been received. In this application no
 * action is taken as no ZDP responses are anticipated.
 *
 * PARAMETERS:      Name           RW  Usage
 *                  u8Type         R   ZDP response type
 *                  pu8Payload     R   Payload buffer
 *                  u8PayloadLen   R   Length of payload
 *
 ****************************************************************************/
PUBLIC void JZA_vZdpResponse(uint8  u8Type,
                             uint8  u8LQI,
                             uint8 *pu8Payload,
                             uint8  u8PayloadLen)

{
}

/****************************************************************************
 *
 * NAME: JZA_pu8AfMsgObject
 *
 * DESCRIPTION:
 * Called when a MSG transaction has been received with a matching endpoint.
 * In this application no action is taken as no MSG transactions are expected.
 *
 * PARAMETERS:      Name           RW  Usage
 *                  afSrcAddr      R   Address of sender device
 *                  dstEndPoint    R   Endpoint at receiver
 *                  clusterID      R   Pointer to cluster ID
 *                  afduLength     R   Pointer to length of data
 *                  pAfdu          R   Data array
 *
 * RETURNS:
 * NULL
 *
 ****************************************************************************/
PUBLIC uint8 JZA_u8AfMsgObject(AF_ADDRTYPE sAfSrcAddr,
                               uint8       u8ClusterID,
                               uint8       u8DstEndPoint,
                               uint8       u8LQI,
                               uint8      *pau8AfduInd,
                               uint8      *pu8ClusterIDRsp,
                               uint8      *pau8AfduRsp)
{
    return 0;
}

/****************************************************************************
 *
 * NAME: JZA_vAfKvpResponse
 *
 * DESCRIPTION:
 * Called after a KVP transaction with acknowledgement request, when the
 * acknowledgement arrives. In this application no action is taken as no
 * KVP transaction acknowledgements are expected.
 *
 * PARAMETERS:      Name                   RW  Usage
 *                  srcAddressMod          R   Address of sender device
 *                  transactionSequenceNum R   KVP transaction number
 *                  commandTypeIdentifier  R   KVP command type
 *                  dstEndPoint            R   Endpoint at receiver
 *                  clusterID              R   Cluster ID
 *                  attributeIdentifier    R   KVP attribute ID
 *                  errorCode              R   Result code
 *                  afduLength             R   Length of payload data
 *                  pAfdu                  R   Payload data array
 *
 ****************************************************************************/
PUBLIC void JZA_vAfKvpResponse(AF_ADDRTYPE         srcAddressMod,
                               uint8               u8LQI,
                               uint8               transactionSequenceNum,
                               AF_COMMAND_TYPE_ID  commandTypeIdentifier,
                               uint8               dstEndPoint,
                               uint8               clusterID,
                               uint16              attributeIdentifier,
                               uint8               errorCode,
                               uint8               afduLength,
                               uint8              *pAfdu )
{
}

/****************************************************************************
 *
 * NAME: JZA_eAfKvpObject
 *
 * DESCRIPTION:
 * Called when a KVP transaction has been received with a matching endpoint.
 *
 * PARAMETERS:      Name           RW  Usage
 *                  afSrcAddr      R   Address of sender device
 *                  u8DstEndpoint  R   Endpoint at receiver
 *                  pu8ClusterId   R   Pointer to cluster ID
 *                  eCommandTypeId R   KVP command type
 *                  u16AttributeId R   KVP attribute ID
 *                  pu8AfduLength  R   Pointer to length of data
 *                  pu8Afdu        R   Data array
 *
 * RETURNS:
 * AF_ERROR_CODE
 *
 ****************************************************************************/
PUBLIC AF_ERROR_CODE JZA_eAfKvpObject(AF_ADDRTYPE         afSrcAddr,
                                      uint8               u8LQI,
                                      uint8               u8DstEndpoint,
                                      uint8               u8SequenceNum,
                                      uint8              *pu8ClusterId,
                                      AF_COMMAND_TYPE_ID  eCommandTypeId,
                                      uint16              u16AttributeId,
                                      uint8              *pu8AfduLength,
                                      uint8              *pu8Afdu)
{
    return KVP_SUCCESS;
}

/****************************************************************************
 *
 * NAME: JZA_vAppDefineTasks
 *
 * DESCRIPTION:
 * Called by Zigbee stack during initialisation to allow the application to
 * initialise any tasks that it requires. This application requires none.
 *
 * RETURNS:
 * void
 *
 ****************************************************************************/
PUBLIC void JZA_vAppDefineTasks(void)
{
}

/****************************************************************************
 *
 * NAME: JZA_vPeripheralEvent
 *
 * DESCRIPTION:
 * Called when a hardware event causes an interrupt. This function is called
 * from within the interrupt context so should be brief. In this case, the
 * information is placed on a simple FIFO queue to be processed later.
 *
 * PARAMETERS: Name          RW  Usage
 *             u32Device     R   Peripheral generating interrupt
 *             u32ItemBitmap R   Bitmap of interrupt sources within peripheral
 *
 ****************************************************************************/
PUBLIC void JZA_vPeripheralEvent(uint32 u32Device, uint32 u32ItemBitmap)
{
}

/****************************************************************************
 *
 * NAME: JZA_vAppEventHandler
 *
 * DESCRIPTION:
 * Called regularly by the task scheduler. This function reads the hardware
 * event queue and processes the events therein. It is important that this
 * function exits after a relatively short time so that the other tasks are
 * not adversely affected.
 *
 ****************************************************************************/
PUBLIC void JZA_vAppEventHandler(void)
{
    uint8 u8Msg;
    uint8 u8TimerId;

    if (!bAppTimerStarted)
    {
        if (bNwkJoined)
        {
            bAppTimerStarted = TRUE;
            (void)bBosCreateTimer(vAppTick, &u8Msg, 0, (APP_TICK_PERIOD_ms / 10), &u8TimerId);
        }
    }
}

/****************************************************************************
 *
 * NAME: JZA_boAppStart
 *
 * DESCRIPTION:
 * Called by Zigbee stack during initialisation.
 *
 * RETURNS:
 * TRUE
 *
 ****************************************************************************/
PUBLIC bool_t JZA_boAppStart(void)
{
    JZS_vStartStack();
    return TRUE;
}

/****************************************************************************
 *
 * NAME: JZA_vStackEvent
 *
 * DESCRIPTION:
 * Called by Zigbee stack to pass an event up to the application.
 *
 * RETURNS:
 * TRUE
 *
 ****************************************************************************/
PUBLIC void JZA_vStackEvent(teJZS_EventIdentifier eEventId,
                            tuJZS_StackEvent *puStackEvent)
{
    if (eEventId == JZS_EVENT_NWK_JOINED_AS_ROUTER)
    {
        bNwkJoined = TRUE;
    }
}

/****************************************************************************/
/***        END OF FILE                                                   ***/
/****************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美午夜免费电影| 久久久久高清精品| 成人黄色国产精品网站大全在线免费观看 | 99久久精品国产网站| 日韩电影在线一区二区三区| 欧美国产亚洲另类动漫| 欧美精品视频www在线观看| 岛国av在线一区| 狠狠色丁香久久婷婷综合_中| 亚洲美女视频在线观看| 国产亚洲短视频| 精品免费一区二区三区| 欧美日韩国产综合视频在线观看| 国产成人鲁色资源国产91色综 | 在线观看91av| 日本乱码高清不卡字幕| 成a人片亚洲日本久久| 亚欧色一区w666天堂| 精品美女在线观看| 日韩精品一区二区三区四区| 欧美性做爰猛烈叫床潮| 日本韩国视频一区二区| 成人高清在线视频| 成人av免费在线观看| 丁香网亚洲国际| www.性欧美| 97久久精品人人爽人人爽蜜臀 | 欧美成人在线直播| 欧美一区二区人人喊爽| 日韩女优视频免费观看| 日韩免费福利电影在线观看| 日韩欧美中文字幕精品| 日韩精品一区二区三区三区免费| 亚洲永久精品国产| 一区二区三区在线视频免费 | 精品国产乱码91久久久久久网站| 日韩免费一区二区| 久久精品视频免费观看| 国产精品美女久久久久久久久| 国产精品成人网| 一区二区三区在线观看动漫 | 欧美va日韩va| 久久精品一区二区三区av| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美剧情片在线观看| 欧美一区二区三区爱爱| 久久久久久久综合日本| 国产精品家庭影院| 亚洲福利一二三区| 精品一区免费av| av在线不卡电影| 91亚洲大成网污www| 在线看国产一区二区| 日韩一区二区不卡| |精品福利一区二区三区| 亚洲一区在线观看免费观看电影高清| 偷拍自拍另类欧美| yourporn久久国产精品| 欧美日韩精品一区二区在线播放| 精品成人在线观看| 一区二区三区日韩在线观看| 免费看黄色91| 亚洲免费观看高清完整版在线观看熊| 中文文精品字幕一区二区| 亚洲成人激情自拍| 国产91精品精华液一区二区三区 | 亚洲欧美日韩国产中文在线| 亚洲不卡在线观看| 国产成人免费网站| 欧美一区二区三区喷汁尤物| 国产女人18毛片水真多成人如厕| 午夜免费久久看| 国产成人aaa| 久久伊人中文字幕| 蜜乳av一区二区| 欧美日韩在线亚洲一区蜜芽| 久久精品夜色噜噜亚洲aⅴ| 亚洲高清免费观看| 在线看国产日韩| 亚洲精品高清视频在线观看| 国产91精品露脸国语对白| 精品噜噜噜噜久久久久久久久试看| 亚洲自拍偷拍欧美| 一本一道综合狠狠老| 国产精品久久久久久久久晋中| 欧美一卡2卡3卡4卡| 国产精品视频九色porn| 亚洲欧洲精品天堂一级| 国产高清视频一区| 久久美女艺术照精彩视频福利播放| 天天影视色香欲综合网老头| 精一区二区三区| 欧美一区二区网站| 另类的小说在线视频另类成人小视频在线| 欧美日韩1234| 日韩—二三区免费观看av| 日韩一本二本av| 国产自产视频一区二区三区| 久久久亚洲国产美女国产盗摄| 加勒比av一区二区| 国产欧美日韩三区| 99久久精品免费精品国产| 亚洲欧美日韩国产综合在线 | 欧美va天堂va视频va在线| 狠狠色丁香九九婷婷综合五月| 亚洲精品一区二区在线观看| 国产盗摄女厕一区二区三区| 国产精品理论片| 欧美影视一区在线| 日韩精品免费专区| 亚洲精品一区在线观看| 91在线观看成人| 日欧美一区二区| 国产色产综合色产在线视频| 波多野结衣视频一区| 亚洲欧美视频在线观看视频| 99久久久久免费精品国产 | 国产精品乱码人人做人人爱| 日本韩国精品在线| 麻豆国产精品官网| 亚洲欧洲另类国产综合| 欧美精品自拍偷拍动漫精品| 91精品欧美一区二区三区综合在 | 亚洲精品日产精品乱码不卡| 欧美裸体bbwbbwbbw| 丁香一区二区三区| 免费观看30秒视频久久| 专区另类欧美日韩| 久久综合狠狠综合久久综合88 | 国产喷白浆一区二区三区| 91视频国产观看| 激情综合五月婷婷| 亚洲福利一二三区| 成人欧美一区二区三区白人| 欧美大片一区二区| 欧美色老头old∨ideo| 北条麻妃一区二区三区| 久久99国产精品尤物| 视频一区欧美日韩| 亚洲免费av观看| 日韩欧美高清在线| av激情综合网| 国产成人免费9x9x人网站视频| 日韩激情在线观看| 亚洲一区二区综合| 中文字幕欧美一| 国产精品久久精品日日| 久久青草国产手机看片福利盒子 | 自拍偷自拍亚洲精品播放| 国产欧美一区二区三区在线看蜜臀| 欧美疯狂做受xxxx富婆| 欧美日韩国产区一| 在线亚洲精品福利网址导航| 99久久99久久精品免费观看| 懂色一区二区三区免费观看| 国产精品自拍一区| 国产电影一区在线| 高清国产一区二区| 成人在线综合网| 99国产精品久久| 成人aaaa免费全部观看| 福利一区福利二区| av在线不卡电影| 欧美在线啊v一区| 欧美日韩国产一级片| 91精品免费在线| 精品国产乱码久久久久久1区2区| 精品少妇一区二区三区在线播放 | 日韩中文字幕不卡| 青青草国产精品亚洲专区无| 另类小说综合欧美亚洲| 国产精品亚洲专一区二区三区| 国产91精品露脸国语对白| 不卡大黄网站免费看| 在线视频你懂得一区二区三区| 欧美福利一区二区| 欧美激情在线看| 亚洲综合激情另类小说区| 日韩国产欧美在线观看| 久久狠狠亚洲综合| 91视频一区二区| 日韩一区二区电影| 亚洲欧美在线视频| 日韩电影在线免费观看| 国产成人啪免费观看软件| 欧美亚洲自拍偷拍| 国产亚洲综合性久久久影院| 亚洲精品国产a久久久久久| 久久精品久久综合| 日本道色综合久久| 久久综合色播五月| 亚洲一区二区三区小说| 国产美女视频一区| 日本韩国欧美一区| 欧美国产在线观看| 奇米影视一区二区三区| 91在线你懂得| 久久久亚洲精华液精华液精华液| 亚洲一区二区3| 91社区在线播放|