ThingPlug GMMP library for mbed

Dependents:   ThingPlug_WiFi_Example

Committer:
lesmin
Date:
Thu Jul 23 00:55:15 2015 +0000
Revision:
0:32c20cfb2b30
initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lesmin 0:32c20cfb2b30 1 /** GMMP 제어 명령 중 Message Body의 값이 필요한 경우 사용되는 구조체
lesmin 0:32c20cfb2b30 2 * @file Struct_Control_Opt.h
lesmin 0:32c20cfb2b30 3 * @date 2013/11/21
lesmin 0:32c20cfb2b30 4 * @version 0.0.0.1
lesmin 0:32c20cfb2b30 5 * @ref GMMPHeader참조
lesmin 0:32c20cfb2b30 6 **/
lesmin 0:32c20cfb2b30 7
lesmin 0:32c20cfb2b30 8
lesmin 0:32c20cfb2b30 9 #ifndef STRUCT_CONTROL_OPT_H_
lesmin 0:32c20cfb2b30 10 #define STRUCT_CONTROL_OPT_H_
lesmin 0:32c20cfb2b30 11
lesmin 0:32c20cfb2b30 12 #include "Define.h"
lesmin 0:32c20cfb2b30 13 #include "Struct_Common.h"
lesmin 0:32c20cfb2b30 14
lesmin 0:32c20cfb2b30 15 #pragma pack(1)
lesmin 0:32c20cfb2b30 16 /**
lesmin 0:32c20cfb2b30 17 * @struct TimeStamp
lesmin 0:32c20cfb2b30 18 * @brief 제어 명령 중 CONTROL_Time_Sync 일 경우 usMessageBody의 값\n
lesmin 0:32c20cfb2b30 19 * @ref stControlReqHdr 참조
lesmin 0:32c20cfb2b30 20 * 제어 메시지 수신 데이터에 포함되어 있다.
lesmin 0:32c20cfb2b30 21 */
lesmin 0:32c20cfb2b30 22 typedef struct {
lesmin 0:32c20cfb2b30 23 /**
lesmin 0:32c20cfb2b30 24 *@var unTimeStamp
lesmin 0:32c20cfb2b30 25 *@brief Unix Time
lesmin 0:32c20cfb2b30 26 */
lesmin 0:32c20cfb2b30 27 U8 unTimeStamp[4];
lesmin 0:32c20cfb2b30 28 }TimeStamp;
lesmin 0:32c20cfb2b30 29
lesmin 0:32c20cfb2b30 30 /**
lesmin 0:32c20cfb2b30 31 * @struct SignalPowerCheck
lesmin 0:32c20cfb2b30 32 * @brief 제어 명령 중 CONTROL_Signal_Power_Check 일 경우 usMessageBody의 값\n
lesmin 0:32c20cfb2b30 33 * @ref stNotificationReqHdr 참조
lesmin 0:32c20cfb2b30 34 * 제어 메시지 수행 후 제어 메시지 결과 전송 시 포함한다.
lesmin 0:32c20cfb2b30 35 */
lesmin 0:32c20cfb2b30 36 typedef struct {
lesmin 0:32c20cfb2b30 37 /**
lesmin 0:32c20cfb2b30 38 *@var unSignalPower
lesmin 0:32c20cfb2b30 39 *@brief RSSI(dBm), Ec/Lo(dB)
lesmin 0:32c20cfb2b30 40 */
lesmin 0:32c20cfb2b30 41 U8 unSignalPower[4];
lesmin 0:32c20cfb2b30 42 }SignalPowerCheck;
lesmin 0:32c20cfb2b30 43
lesmin 0:32c20cfb2b30 44 /**
lesmin 0:32c20cfb2b30 45 * @struct Diagnostic
lesmin 0:32c20cfb2b30 46 * @brief 제어 명령 중 CONTROL_Diagnostic 일 경우 usMessageBody의 값\n
lesmin 0:32c20cfb2b30 47 * @ref stNotificationReqHdr 참조
lesmin 0:32c20cfb2b30 48 * 제어 메시지 수행 후 제어 메시지 결과 전송 시 포함한다.
lesmin 0:32c20cfb2b30 49 */
lesmin 0:32c20cfb2b30 50 typedef struct {
lesmin 0:32c20cfb2b30 51 /**
lesmin 0:32c20cfb2b30 52 *@var ucStatusValue
lesmin 0:32c20cfb2b30 53 *@brief OK = 0, NOK = 1
lesmin 0:32c20cfb2b30 54 */
lesmin 0:32c20cfb2b30 55 U8 ucStatusValue;
lesmin 0:32c20cfb2b30 56 }Diagnostic;
lesmin 0:32c20cfb2b30 57
lesmin 0:32c20cfb2b30 58 /**
lesmin 0:32c20cfb2b30 59 * @struct StatusCheck
lesmin 0:32c20cfb2b30 60 * @brief 제어 명령 중 CONTROL_Status_Check 일 경우 usMessageBody의 값\n
lesmin 0:32c20cfb2b30 61 * @ref stNotificationReqHdr 참조
lesmin 0:32c20cfb2b30 62 * 제어 메시지 수행 후 제어 메시지 결과 전송 시 포함한다.
lesmin 0:32c20cfb2b30 63 */
lesmin 0:32c20cfb2b30 64 typedef struct {
lesmin 0:32c20cfb2b30 65 /**
lesmin 0:32c20cfb2b30 66 *@var ucOnOffValue
lesmin 0:32c20cfb2b30 67 *@brief OK = 0, OFF = 1
lesmin 0:32c20cfb2b30 68 */
lesmin 0:32c20cfb2b30 69 /**
lesmin 0:32c20cfb2b30 70 *@var RunPauseValue
lesmin 0:32c20cfb2b30 71 *@brief Run = 0, Pause = 1
lesmin 0:32c20cfb2b30 72 */
lesmin 0:32c20cfb2b30 73
lesmin 0:32c20cfb2b30 74 U8 ucOnOffValue;
lesmin 0:32c20cfb2b30 75 U8 RunPauseValue;
lesmin 0:32c20cfb2b30 76 }StatusCheck;
lesmin 0:32c20cfb2b30 77
lesmin 0:32c20cfb2b30 78 /**
lesmin 0:32c20cfb2b30 79 * @struct FW_APP_Download_Update_Remote
lesmin 0:32c20cfb2b30 80 * @brief 제어 명령 중 CONTROL_FW_Download, CONTROL_FW_Update, CONTROL_App_Download, CONTROL_App_Update, CONTROL_Remote_Access 일 경우 usMessageBody의 값\n
lesmin 0:32c20cfb2b30 81 * @ref stNotificationReqHdr 참조
lesmin 0:32c20cfb2b30 82 * 제어 메시지 수행 후 제어 메시지 결과 전송 시 포함한다.
lesmin 0:32c20cfb2b30 83 */
lesmin 0:32c20cfb2b30 84 typedef struct {
lesmin 0:32c20cfb2b30 85 /**
lesmin 0:32c20cfb2b30 86 *@var unStartTime
lesmin 0:32c20cfb2b30 87 *@brief 다운로드 시작 시각, Unix Time(=POSIX time, 1970년 1월1일부터 경과된 초)을 사용한다.
lesmin 0:32c20cfb2b30 88
lesmin 0:32c20cfb2b30 89 */
lesmin 0:32c20cfb2b30 90 /**
lesmin 0:32c20cfb2b30 91 *@var unEndTime
lesmin 0:32c20cfb2b30 92 *@brief 다운로드 종료 시각, Unix Time(=POSIX time, 1970년 1월1일부터 경과된 초)을 사용한다.
lesmin 0:32c20cfb2b30 93
lesmin 0:32c20cfb2b30 94 */
lesmin 0:32c20cfb2b30 95 /**
lesmin 0:32c20cfb2b30 96 *@var ucResultCode
lesmin 0:32c20cfb2b30 97 *@brief Result Code (0x00 : Success, other : Fail Reason)
lesmin 0:32c20cfb2b30 98 *@ref OMPErrorCode.h 참조
lesmin 0:32c20cfb2b30 99 */
lesmin 0:32c20cfb2b30 100
lesmin 0:32c20cfb2b30 101 U8 unStartTime[4];
lesmin 0:32c20cfb2b30 102 U8 unEndTime[4];
lesmin 0:32c20cfb2b30 103 U8 ucResultCode;
lesmin 0:32c20cfb2b30 104 }FW_APP_Download_Update_Remote;
lesmin 0:32c20cfb2b30 105
lesmin 0:32c20cfb2b30 106
lesmin 0:32c20cfb2b30 107 /**
lesmin 0:32c20cfb2b30 108 * @struct APP_Update
lesmin 0:32c20cfb2b30 109 * @brief 제어 명령 중 CONTROL_App_Update 일 경우 usMessageBody의 값\n
lesmin 0:32c20cfb2b30 110 * @ref stControlReqHdr 참조
lesmin 0:32c20cfb2b30 111 * OMP에서 제어 명령 메시지를 전송하여 GMMP Lib에서 해당 메시지를 수신한다.
lesmin 0:32c20cfb2b30 112 */
lesmin 0:32c20cfb2b30 113 typedef struct {
lesmin 0:32c20cfb2b30 114 /**
lesmin 0:32c20cfb2b30 115 *@var usFileName
lesmin 0:32c20cfb2b30 116 *@brief Application 파일 이름, App Name과 버전 정보를 합친 unique 이름 (예, AppName_1.0.0).
lesmin 0:32c20cfb2b30 117 */
lesmin 0:32c20cfb2b30 118 /**
lesmin 0:32c20cfb2b30 119 *@var ucAppUpdateCommand
lesmin 0:32c20cfb2b30 120 *@brief App Activation = 0, App Deactivation = 1
lesmin 0:32c20cfb2b30 121 */
lesmin 0:32c20cfb2b30 122
lesmin 0:32c20cfb2b30 123 U8 usFileName[LEN_FILE_NAME];
lesmin 0:32c20cfb2b30 124 U8 ucAppUpdateCommand;
lesmin 0:32c20cfb2b30 125 }APP_Update;
lesmin 0:32c20cfb2b30 126 #pragma pack(0)
lesmin 0:32c20cfb2b30 127
lesmin 0:32c20cfb2b30 128 #endif /* STRUCT_CONTROL_OPT_H_ */