From 28f37df5dd32d6630dbcc23dca88f6a3ae063d7f Mon Sep 17 00:00:00 2001
From: zhangbo <zhangbo@qq.com>
Date: 星期五, 23 五月 2025 18:03:21 +0800
Subject: [PATCH] 移植了国产加速度计的计步逻辑,逻辑是30s没有步数进入休眠模式1分钟上传一次

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

diff --git a/keil/include/components/internet/src/Socket.c b/keil/include/components/internet/src/Socket.c
index de02677..5fe031e 100644
--- a/keil/include/components/internet/src/Socket.c
+++ b/keil/include/components/internet/src/Socket.c
@@ -18,8 +18,8 @@
  *                                  Macro                                      *
  *******************************************************************************/
 /* SOICKET相关 */
-#define SOCKET_SEND_QUEUE_BUF_SIZE                    (512)
-#define SOCKET_RECV_QUEUE_BUF_SIZE                    (512)
+#define SOCKET_SEND_QUEUE_BUF_SIZE                    (1024)
+#define SOCKET_RECV_QUEUE_BUF_SIZE                    (2000)
 #define SOCKET_SEND_QUEUE_MEMBER_CNT                  16
 #define SOCKET_RECV_QUEUE_MEMBER_CNT                  16
 
@@ -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;
 
 /*******************************************************************************
@@ -378,6 +382,7 @@
     pstSocketData->m_eState = SOCKET_STATE_CONNECTED;
 
     /* 重置队列 */
+#if 0
     HIDO_VLQInit(&pstSocketData->m_stSendQueue, pstSocketData->l_au8SendQueueBuf,
             SOCKET_SEND_QUEUE_BUF_SIZE, SOCKET_SEND_QUEUE_MEMBER_CNT);
     if(SOCKET_TYPE_TCP == pstSocketData->m_eType)
@@ -390,7 +395,8 @@
         HIDO_VLQInit(&pstSocketData->m_stRecvQueue, pstSocketData->l_au8RecvQueueBuf,
                 SOCKET_RECV_QUEUE_BUF_SIZE, SOCKET_RECV_QUEUE_MEMBER_CNT);
     }
-
+#endif
+		
     /* 通知上层 */
     if(pstSocketData->m_fnEventProc != HIDO_NULL)
     {
@@ -690,7 +696,7 @@
     if(HIDO_NULL == pstMember)
     {
         HIDO_Debug("socket[%d] send buf full\r\n", _i32SockID);
-
+//        AIR780E_Reset();
         return HIDO_ERR;
     }
 
@@ -762,6 +768,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