/**************************************************************************************************
Filename: zcl_se.c
Revised: $Date: 2012-03-11 00:25:21 -0800 (Sun, 11 Mar 2012) $
Revision: $Revision: 29708 $
Description: Zigbee Cluster Library - SE (Smart Energy) Profile.
Copyright 2007-2012 Texas Instruments Incorporated. All rights reserved.
IMPORTANT: Your use of this Software is limited to those specific rights
granted under the terms of a software license agreement between the user
who downloaded the software, his/her employer (which must be your employer)
and Texas Instruments Incorporated (the "License"). You may not use this
Software unless you agree to abide by the terms of the License. The License
limits your use, and you acknowledge, that the Software may not be modified,
copied or distributed unless embedded on a Texas Instruments microcontroller
or used solely and exclusively in conjunction with a Texas Instruments radio
frequency transceiver, which is integrated into your product. Other than for
the foregoing purpose, you may not use, reproduce, copy, prepare derivative
works of, modify, distribute, perform, display or sell this Software and/or
its documentation for any purpose.
YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE
PROVIDED �AS IS� WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED,
INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE,
NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL
TEXAS INSTRUMENTS OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT,
NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER
LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE
OR CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT
OF SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
Should you have any questions regarding your right to use this Software,
contact Texas Instruments Incorporated at www.TI.com.
**************************************************************************************************/
/*********************************************************************
* INCLUDES
*/
#include "ZComDef.h"
#include "OSAL.h"
#include "zcl.h"
#include "zcl_general.h"
#include "zcl_se.h"
#include "DebugTrace.h"
#if defined ( INTER_PAN )
#include "stub_aps.h"
#endif
#include "zcl_key_establish.h"
/*********************************************************************
* MACROS
*/
// Clusters that are supported thru Inter-PAN communication
#define INTER_PAN_CLUSTER( id ) ( (id) == ZCL_CLUSTER_ID_SE_PRICING || \
(id) == ZCL_CLUSTER_ID_SE_MESSAGE )
/*********************************************************************
* CONSTANTS
*/
/*********************************************************************
* TYPEDEFS
*/
typedef struct zclSECBRec
{
struct zclSECBRec *next;
uint8 endpoint; // Used to link it into the endpoint descriptor
zclSE_AppCallbacks_t *CBs; // Pointer to Callback function
} zclSECBRec_t;
/*********************************************************************
* GLOBAL VARIABLES
*/
/*********************************************************************
* GLOBAL FUNCTIONS
*/
/*********************************************************************
* LOCAL VARIABLES
*/
static zclSECBRec_t *zclSECBs = (zclSECBRec_t *)NULL;
static uint8 zclSEPluginRegisted = FALSE;
/*********************************************************************
* LOCAL FUNCTIONS
*/
static ZStatus_t zclSE_HdlIncoming( zclIncoming_t *pInMsg );
static ZStatus_t zclSE_HdlInSpecificCommands( zclIncoming_t *pInMsg );
#ifdef ZCL_SIMPLE_METERING
static ZStatus_t zclSE_ProcessInSimpleMeteringCmds( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_GetProfileCmd( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_GetProfileRsp( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_ReqMirrorCmd( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_ReqMirrorRsp( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_MirrorRemCmd( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_MirrorRemRsp( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_ReqFastPollModeCmd( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_ReqFastPollModeRsp( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
#ifdef SE_UK_EXT
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_GetSnapshotCmd( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_GetSnapshotRsp( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_TakeSnapshotCmd( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_SimpleMeter_MirrorReportAttrRsp( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
#endif // SE_UK_EXT
#endif // ZCL_SIMPLE_METERING
#ifdef ZCL_PRICING
static ZStatus_t zclSE_ProcessInPricingCmds( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_GetCurrentPrice( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_GetScheduledPrice( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishPrice( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PriceAcknowledgement( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_GetBlockPeriod( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishBlockPeriod( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
#ifdef SE_UK_EXT
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishTariffInformation( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishPriceMatrix( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishBlockThreshold( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishConversionFactor( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishCalorificValue( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishCO2Value( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishCPPEvent( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishBillingPeriod( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishConsolidatedBill( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_PublishCreditPaymentInfo( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_GetTariffInformation( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_GetPriceMatrix( zclIncoming_t *pInMsg, zclSE_AppCallbacks_t *pCBs );
static ZStatus_t zclSE_ProcessInCmd_Pricing_
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
实验室智能管理系统,以实验室为平台,通过网络化智能控制与管理,集成了监控管理、安全防盗、资源分配功能,将实验室环境数据、照明以及实验室安保、门禁装置通过有线或无线的方式连接起来,构建成高效的实验室仪器设施和日程事务的管理系统。 系统主要由各个功能模块、ARM网关、ZigBee无线局域网、PC机、远程监控软件组成。ARM网关的作用就是和ZigBee协调器通信,通过触屏实现近程控制并通过网线将数据传送给远程PC,由远程PC实现远程监控功能,从而实现进程和远程的双重管理。ZigBee协调器和ARM网关通过RS232串口通信。ZigBee协调器担任着组建网络的作用,将ZigBee终端节点加入网络,并采集各个终端发送过来的数据,发送给ARM网关。
资源推荐
资源详情
资源评论
收起资源包目录
实验室智能管理系统 (979个子文件)
SampleApp.cspy.bat 1KB
zcl_se.c 333KB
ZDSecMgr.c 126KB
zcl.c 117KB
zcl_general.c 104KB
ZDObject.c 90KB
ZDApp.c 84KB
zcl_key_establish.c 82KB
zcl_ota.c 74KB
MT_ZDO.c 63KB
ZDProfile.c 62KB
MT_MAC.c 53KB
mac_rx.c 48KB
zcl_ss.c 48KB
MT_UTIL.c 46KB
OSAL_Nv.c 43KB
zcl_lighting.c 37KB
ZDNwkMgr.c 37KB
sapi.c 34KB
mac_csp_tx.c 34KB
mac_mcu.c 33KB
MT_SYS.c 33KB
MT_NWK.c 31KB
AF.c 31KB
OSAL.c 31KB
SampleApp.c 30KB
BindingTable.c 28KB
_hal_uart_dma.c 26KB
stub_aps.c 26KB
MT_AF.c 25KB
hal_lcd.c 25KB
hal_lcd.c 25KB
hal_lcd.c 25KB
zmac.c 25KB
_hal_uart_dma.c 24KB
zcl_pi.c 24KB
zcl_closures.c 23KB
usb_standard_requests.c 23KB
mac_tx.c 22KB
OSAL_Memory.c 21KB
hal_sleep.c 21KB
zcl_cc.c 20KB
hal_sleep.c 20KB
hal_sleep.c 20KB
mac_radio.c 20KB
zmac_cb.c 20KB
ZGlobals.c 20KB
MT_SAPI.c 20KB
mac_backoff_timer.c 19KB
mac_autopend.c 19KB
hal_key.c 19KB
mac_pib.c 19KB
nwk_globals.c 19KB
hal_oad.c 17KB
hal_oad.c 17KB
hal_oad.c 17KB
_hal_uart_isr.c 17KB
_hal_uart_isr.c 17KB
hal_led.c 16KB
hal_led.c 16KB
hal_led.c 16KB
hal_key.c 16KB
mac_radio_defs.c 16KB
OSAL_Timers.c 15KB
MT.c 15KB
MT_APP.c 15KB
hal_ota.c 15KB
zcl_ms.c 13KB
MT_UART.c 13KB
ZMain.c 12KB
ZMain.c 12KB
OnBoard.c 12KB
OnBoard.c 12KB
usb_descriptor_parser.c 12KB
_hal_uart_usb.c 12KB
usb_framework.c 12KB
OSAL_Clock.c 11KB
zcl_hvac.c 11KB
MT_TASK.c 10KB
MT_OTA.c 10KB
hal_assert.c 10KB
hal_drivers.c 9KB
mac_rx_onoff.c 9KB
hal_key.c 9KB
hal_uart.c 9KB
hal_uart.c 9KB
hal_uart.c 9KB
hal_adc.c 9KB
hal_adc.c 9KB
hal_adc.c 9KB
MT_DEBUG.c 9KB
ZDConfig.c 8KB
saddr.c 7KB
zcl_cert_data.c 7KB
usb_cdc_hooks.c 7KB
mac_sleep.c 7KB
hal_flash.c 7KB
hal_flash.c 7KB
hal_flash.c 7KB
OSAL_PwrMgr.c 6KB
共 979 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
- sunwumcu2018-09-06感谢分享,有一定价值!
- qq_331661782019-04-22非常好,谢谢分享
- old-king2019-09-11什么破玩意啊,怎么用啊
czhzasui
- 粉丝: 129
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功