From ac4ebfca40ab816edd07583117fca8fef81ba029 Mon Sep 17 00:00:00 2001
From: yincheng.zhong <634916154@qq.com>
Date: 星期四, 22 八月 2024 09:49:03 +0800
Subject: [PATCH] 4G 功能外包开发完成

---
 keil/include/components/internet/src/Socket.c |   68 ++++++++++++++++++++++++++++++++++
 1 files changed, 68 insertions(+), 0 deletions(-)

diff --git a/keil/include/components/internet/src/Socket.c b/keil/include/components/internet/src/Socket.c
index de02677..262cc93 100644
--- a/keil/include/components/internet/src/Socket.c
+++ b/keil/include/components/internet/src/Socket.c
@@ -46,6 +46,10 @@
 
     HIDO_UINT8 l_au8SendQueueBuf[SOCKET_SEND_QUEUE_BUF_SIZE];
     HIDO_UINT8 l_au8RecvQueueBuf[SOCKET_RECV_QUEUE_BUF_SIZE];
+
+    HIDO_BOOL m_bUseHeartbeat;
+    HIDO_UINT32 m_u32HeartbeatFreq;
+    HIDO_CHAR m_acHeartbeatData[128];
 }ST_SocketData;
 
 /*******************************************************************************
@@ -762,6 +766,70 @@
 }
 
 /*******************************************************************************
+ * Function Name     : Socket_UseHeartbeat
+ *******************************************************************************/
+HIDO_BOOL Socket_UseHeartbeat(HIDO_INT32 _i32SockID)
+{
+    ST_SocketData *pstSocketData = &l_astSocketData[_i32SockID];
+
+    if(_i32SockID < 0 || _i32SockID >= SOCKET_NUM)
+    {
+        return HIDO_FALSE;
+    }
+
+    return pstSocketData->m_bUseHeartbeat;
+}
+
+/*******************************************************************************
+ * Function Name     : Socket_SetHeartbeatData
+ *******************************************************************************/
+HIDO_INT32 Socket_HeartbeatConfig(HIDO_INT32 _i32SockID, HIDO_UINT8 *_pu8Data, HIDO_UINT32 _u32Len, HIDO_UINT32 _u32HeartbeatFreq)
+{
+    ST_SocketData *pstSocketData = &l_astSocketData[_i32SockID];
+
+    if(_i32SockID < 0 || _i32SockID >= SOCKET_NUM)
+    {
+        return HIDO_ERR;
+    }
+
+    pstSocketData->m_bUseHeartbeat = HIDO_TRUE;
+    pstSocketData->m_u32HeartbeatFreq = _u32HeartbeatFreq;
+    HIDO_UtilByteArrayToHexString(_pu8Data, _u32Len, pstSocketData->m_acHeartbeatData, sizeof(pstSocketData->m_acHeartbeatData), HIDO_FALSE);
+
+    return HIDO_OK;
+}
+
+/*******************************************************************************
+ * Function Name     : Socket_GetHeartbeatFreq
+ *******************************************************************************/
+HIDO_UINT32 Socket_GetHeartbeatFreq(HIDO_INT32 _i32SockID)
+{
+    ST_SocketData *pstSocketData = &l_astSocketData[_i32SockID];
+
+    if(_i32SockID < 0 || _i32SockID >= SOCKET_NUM)
+    {
+        return 300;
+    }
+
+    return pstSocketData->m_u32HeartbeatFreq;
+}
+
+/*******************************************************************************
+ * Function Name     : Socket_GetHeartbeatFreq
+ *******************************************************************************/
+HIDO_CHAR *Socket_GetHeartbeatData(HIDO_INT32 _i32SockID)
+{
+    ST_SocketData *pstSocketData = &l_astSocketData[_i32SockID];
+
+    if(_i32SockID < 0 || _i32SockID >= SOCKET_NUM)
+    {
+        return 300;
+    }
+
+    return pstSocketData->m_acHeartbeatData;
+}
+
+/*******************************************************************************
  * Function Name     : Socket_Recv
  * Description       : 从Socket接收队列中读取数据
  * Input             : _i32Sock Socket描述符

--
Gitblit v1.9.3