Modified for W5500 Ethernet initialize Added the Ethernet interface re-initialize code Added the connection retry

Dependents:   ThingPlug_Ethernet_Example

Fork of GMMP_mbed by Eric Jung

Committer:
hkjung
Date:
Wed Aug 12 08:58:58 2015 +0000
Revision:
5:9bbb6933559b
Parent:
0:7e575e5f88ec
Ethernet interface reinitialize code added

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lesmin 0:7e575e5f88ec 1 /** GMMP Operation 중 주기보고 명령에 사용되는 구조체
lesmin 0:7e575e5f88ec 2 * @file Struct_Delivery.h
lesmin 0:7e575e5f88ec 3 * @date 2013/11/21
lesmin 0:7e575e5f88ec 4 * @version 0.0.0.1
lesmin 0:7e575e5f88ec 5 * @ref GMMPHeader참조
lesmin 0:7e575e5f88ec 6 **/
lesmin 0:7e575e5f88ec 7
lesmin 0:7e575e5f88ec 8 #ifndef STRUCT_DELIVERY_H_
lesmin 0:7e575e5f88ec 9 #define STRUCT_DELIVERY_H_
lesmin 0:7e575e5f88ec 10
lesmin 0:7e575e5f88ec 11
lesmin 0:7e575e5f88ec 12 #include "Define.h"
lesmin 0:7e575e5f88ec 13 #include "Struct_Common.h"
lesmin 0:7e575e5f88ec 14
lesmin 0:7e575e5f88ec 15 #pragma pack(1)
lesmin 0:7e575e5f88ec 16
lesmin 0:7e575e5f88ec 17 /**
lesmin 0:7e575e5f88ec 18 * @struct stPacketDeliveryReqHdr
lesmin 0:7e575e5f88ec 19 * @brief GMMP TCP Packet 구조 중 Request 수행 시 Message Header와 Message Body 영역
lesmin 0:7e575e5f88ec 20 * OMP에 주기 보고 명령을 전송 시 사용된다.
lesmin 0:7e575e5f88ec 21 */
lesmin 0:7e575e5f88ec 22 typedef struct {
lesmin 0:7e575e5f88ec 23 /**
lesmin 0:7e575e5f88ec 24 *@var usDomainCode
lesmin 0:7e575e5f88ec 25 *@brief 서비스 영역별 구분 코드\n
lesmin 0:7e575e5f88ec 26 - AlphaNumeric : 문자,숫자 조합, 특수문자제외, SPACE 허용 안하며 빈자리는 0x00(NULL)로 채운다.\n
lesmin 0:7e575e5f88ec 27 */
lesmin 0:7e575e5f88ec 28 /**
lesmin 0:7e575e5f88ec 29 *@var usGWID
lesmin 0:7e575e5f88ec 30 *@brief M2M GW ID
lesmin 0:7e575e5f88ec 31 */
lesmin 0:7e575e5f88ec 32 /**
lesmin 0:7e575e5f88ec 33 *@var usDeviceID
lesmin 0:7e575e5f88ec 34 *@brief M2M Device ID, 값이 0x0이면 GW 명령이다.
lesmin 0:7e575e5f88ec 35 */
lesmin 0:7e575e5f88ec 36 /**
lesmin 0:7e575e5f88ec 37 *@var ucReportType
lesmin 0:7e575e5f88ec 38 *@brief 주기 보고 명령 구분자
lesmin 0:7e575e5f88ec 39 *@ref Define_Delivery.h 참조
lesmin 0:7e575e5f88ec 40 */
lesmin 0:7e575e5f88ec 41 /**
lesmin 0:7e575e5f88ec 42 *@var ucMediaType
lesmin 0:7e575e5f88ec 43 *@brief 주기 보고 하는 데이터의 타입\n
lesmin 0:7e575e5f88ec 44 *아래 표 참조\n
lesmin 0:7e575e5f88ec 45 *@image html mediatype.JPG Media Type 표
lesmin 0:7e575e5f88ec 46 */
lesmin 0:7e575e5f88ec 47 /**
lesmin 0:7e575e5f88ec 48 *@var usMessageBody
lesmin 0:7e575e5f88ec 49 *@brief Data [2048byte]
lesmin 0:7e575e5f88ec 50 */
lesmin 0:7e575e5f88ec 51 U8 usDomainCode[LEN_DOMAIN_CODE];
lesmin 0:7e575e5f88ec 52 U8 usGWID[LEN_GW_ID];
lesmin 0:7e575e5f88ec 53 U8 usDeviceID[LEN_DEVICE_ID];
lesmin 0:7e575e5f88ec 54 U8 ucReportType;
lesmin 0:7e575e5f88ec 55 U8 ucMediaType;
lesmin 0:7e575e5f88ec 56 U8 usMessageBody[MAX_MSG_BODY];
lesmin 0:7e575e5f88ec 57 }stPacketDeliveryReqHdr; //Delivery Request
lesmin 0:7e575e5f88ec 58
lesmin 0:7e575e5f88ec 59 /**
lesmin 0:7e575e5f88ec 60 * @struct stPacketDeliveryRspHdr
lesmin 0:7e575e5f88ec 61 * @brief GMMP TCP Packet 구조 중 Response 수행 시 Message Header와 Message Body 영역
lesmin 0:7e575e5f88ec 62 * OMP에서 주기 보고 명령 응답 완료 수신 시 사용된다.
lesmin 0:7e575e5f88ec 63 */
lesmin 0:7e575e5f88ec 64 typedef struct {
lesmin 0:7e575e5f88ec 65 /**
lesmin 0:7e575e5f88ec 66 *@var usDomainCode
lesmin 0:7e575e5f88ec 67 *@brief 서비스 영역별 구분 코드\n
lesmin 0:7e575e5f88ec 68 - AlphaNumeric : 문자,숫자 조합, 특수문자제외, SPACE 허용 안하며 빈자리는 0x00(NULL)로 채운다.\n
lesmin 0:7e575e5f88ec 69 */
lesmin 0:7e575e5f88ec 70 /**
lesmin 0:7e575e5f88ec 71 *@var usGWID
lesmin 0:7e575e5f88ec 72 *@brief M2M GW ID
lesmin 0:7e575e5f88ec 73 */
lesmin 0:7e575e5f88ec 74 /**
lesmin 0:7e575e5f88ec 75 *@var usDeviceID
lesmin 0:7e575e5f88ec 76 *@brief M2M Device ID, 값이 0x0이면 GW 명령이다.
lesmin 0:7e575e5f88ec 77 */
lesmin 0:7e575e5f88ec 78 /**
lesmin 0:7e575e5f88ec 79 *@var ucResultCode
lesmin 0:7e575e5f88ec 80 *@brief Result Code (0x00 : Success, other : Fail Reason) @ref OMPErrorCode.h 참조
lesmin 0:7e575e5f88ec 81 */
lesmin 0:7e575e5f88ec 82 /**
lesmin 0:7e575e5f88ec 83 *@var unBackOffTime
lesmin 0:7e575e5f88ec 84 *@brief Result Code가 STATUS_NOT_ACCEPTABLE(OMP 과부하) 인 경우 해당 시간 값 만큼 이후 시간에 주기보고를 재시도 해야 한다.\n
lesmin 0:7e575e5f88ec 85 * Optional (선택적인 필드임을 의미한다)
lesmin 0:7e575e5f88ec 86 */
lesmin 0:7e575e5f88ec 87 U8 usDomainCode[LEN_DOMAIN_CODE];
lesmin 0:7e575e5f88ec 88 U8 usGWID[LEN_GW_ID];
lesmin 0:7e575e5f88ec 89 U8 usDeviceID[LEN_DEVICE_ID];
lesmin 0:7e575e5f88ec 90 U8 ucResultCode;
lesmin 0:7e575e5f88ec 91 U8 unBackOffTime[4];
lesmin 0:7e575e5f88ec 92 }stPacketDeliveryRspHdr; //Delivery Response
lesmin 0:7e575e5f88ec 93
lesmin 0:7e575e5f88ec 94 /**
lesmin 0:7e575e5f88ec 95 * @struct Delivery_Req
lesmin 0:7e575e5f88ec 96 * @brief GMMP TCP Packet 구조 중 Request Delivery 구조체
lesmin 0:7e575e5f88ec 97 * OMP에 주기보고 데이터를 전송한다.
lesmin 0:7e575e5f88ec 98 */
lesmin 0:7e575e5f88ec 99 typedef struct {
lesmin 0:7e575e5f88ec 100 /**
lesmin 0:7e575e5f88ec 101 *@var header
lesmin 0:7e575e5f88ec 102 *@brief @ref GMMPHeader 참조
lesmin 0:7e575e5f88ec 103 */
lesmin 0:7e575e5f88ec 104 /**
lesmin 0:7e575e5f88ec 105 *@var body
lesmin 0:7e575e5f88ec 106 *@brief @ref stPacketDeliveryReqHdr 참조
lesmin 0:7e575e5f88ec 107 */
lesmin 0:7e575e5f88ec 108 GMMPHeader header;
lesmin 0:7e575e5f88ec 109 stPacketDeliveryReqHdr body;
lesmin 0:7e575e5f88ec 110 }Delivery_Req;
lesmin 0:7e575e5f88ec 111
lesmin 0:7e575e5f88ec 112 /**
lesmin 0:7e575e5f88ec 113 * @struct Delivery_Rsp
lesmin 0:7e575e5f88ec 114 * @brief GMMP TCP Packet 구조 중 Response Delivery 구조체
lesmin 0:7e575e5f88ec 115 * OMP에 주기보고 데이터 전송 응답을 수신한다.
lesmin 0:7e575e5f88ec 116 */
lesmin 0:7e575e5f88ec 117 typedef struct {
lesmin 0:7e575e5f88ec 118 /**
lesmin 0:7e575e5f88ec 119 *@var header
lesmin 0:7e575e5f88ec 120 *@brief @ref GMMPHeader 참조
lesmin 0:7e575e5f88ec 121 */
lesmin 0:7e575e5f88ec 122 /**
lesmin 0:7e575e5f88ec 123 *@var body
lesmin 0:7e575e5f88ec 124 *@brief @ref stPacketDeliveryRspHdr 참조
lesmin 0:7e575e5f88ec 125 */
lesmin 0:7e575e5f88ec 126 GMMPHeader header;
lesmin 0:7e575e5f88ec 127 stPacketDeliveryRspHdr body;
lesmin 0:7e575e5f88ec 128 }Delivery_Rsp;
lesmin 0:7e575e5f88ec 129 #pragma pack(0)
lesmin 0:7e575e5f88ec 130
lesmin 0:7e575e5f88ec 131 #endif /* STRUCT_DELIVERY_H_ */
lesmin 0:7e575e5f88ec 132