From 8640356be8994056e16307bcbf39c0e3c40ad7c8 Mon Sep 17 00:00:00 2001 From: Lizongdi <1210855344@qq.com> Date: Fri, 4 Sep 2026 13:33:08 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E4=B8=BB=E7=BA=BF=E5=BE=85=E5=90=88?= =?UTF-8?q?=E3=80=91=E8=B6=85=E6=97=B6=E6=97=B6=E9=97=B4=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E4=B8=B2=E5=8F=A3=E5=B1=9E=E6=80=A7=EF=BC=8C=E4=B8=8D=E5=86=8D?= =?UTF-8?q?=E6=98=AF=E9=9D=A0=E5=85=A8=E5=B1=80=E5=AE=8F=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E7=BB=9F=E4=B8=80=E5=86=B3=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- peripheral/com.c | 7 +++++++ peripheral/include/com.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/peripheral/com.c b/peripheral/com.c index 5df5e17..8a08676 100644 --- a/peripheral/com.c +++ b/peripheral/com.c @@ -82,6 +82,7 @@ TComCtrl *rd_ComCreate(cbk_ComCheck _pfCheck, cbk_ComDecode _pfDecode, cbk_ComSe rd_RingbufferReset(ptComCtrl->m_stComBuf.m_ptSend); ptComCtrl->m_pfSend = _pfSend; ptComCtrl->m_iDevIndex = -1; + ptComCtrl->m_iRecvTime = RECV_TIMEOUT; TMutiDev *ptMutiDev = RD_CALLOC(1, sizeof(TMutiDev)); ptMutiDev->m_pfCheck = _pfCheck; @@ -93,6 +94,12 @@ TComCtrl *rd_ComCreate(cbk_ComCheck _pfCheck, cbk_ComDecode _pfDecode, cbk_ComSe return ptComCtrl; } +void rd_ComSetRecvTime(TComCtrl *_ptComCtrl, int _iRecvTime) +{ + if (NULL == _ptComCtrl || _iRecvTime <= 0) return; + _ptComCtrl->m_iRecvTime = _iRecvTime; +} + void rd_ComAddDev(TComCtrl *_ptComCtrl, cbk_ComCheck _pfCheck, cbk_ComDecode _pfDecode) { TMutiDev *ptMutiDev = RD_CALLOC(1, sizeof(TMutiDev)); diff --git a/peripheral/include/com.h b/peripheral/include/com.h index c2ddf8d..25674a9 100644 --- a/peripheral/include/com.h +++ b/peripheral/include/com.h @@ -102,6 +102,7 @@ typedef struct UT_array *m_pMutiDevArray; cbk_ComSend m_pfSend; void *m_pUserData; + int m_iRecvTime; // check返回0时的超时时间 }TComCtrl; /*==============================================* @@ -114,6 +115,7 @@ typedef struct * routines' or functions' implementations * *----------------------------------------------*/ TComCtrl *rd_ComCreate(cbk_ComCheck _pfCheck, cbk_ComDecode _pfDecode, cbk_ComSend _pfSend, int _iSize, void *_pUserData); +void rd_ComSetRecvTime(TComCtrl *_ptComCtrl, int _iRecvTime); void rd_ComAddDev(TComCtrl *_ptComCtrl, cbk_ComCheck _pfCheck, cbk_ComDecode _pfDecode); int rd_ComDelete(TComCtrl *_ptComCtrl); int rd_ComSend(TComCtrl *_ptComCtrl, char *_pBuffer, uint32_t _iSize);