Browse Source

5次收不到 短线重连

master
zhangsan 5 years ago
parent
commit
11ebcc6110
  1. BIN
      si4/soft_gsm_main.si4project/soft_gsm_main.sip_sym
  2. BIN
      si4/soft_gsm_main.si4project/soft_gsm_main.siwork
  3. 2
      source/app/app_task_gm35.c
  4. 14
      source/app/app_task_tcp.c

BIN
si4/soft_gsm_main.si4project/soft_gsm_main.sip_sym

Binary file not shown.

BIN
si4/soft_gsm_main.si4project/soft_gsm_main.siwork

Binary file not shown.

2
source/app/app_task_gm35.c

@ -374,7 +374,7 @@ void L2_task_gm35_flow_handle(struct _s_task_gm35_gprs_ *s)
TTSS_Task_step(TTSS_TASK_GM35_FLOW_CIPSTART_SUCCESS) TTSS_Task_step(TTSS_TASK_GM35_FLOW_CIPSTART_SUCCESS)
if(0 == g_at_send_status.conn_ok) if(0 == g_at_send_status.conn_ok)
{ {
L0_uart4_uc(0x1a); //关闭send //L0_uart4_uc(0x1a); //关闭send
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_CIPSTART,D_Tdelay_300ms); //断线重连 L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_CIPSTART,D_Tdelay_300ms); //断线重连
} }

14
source/app/app_task_tcp.c

@ -6,7 +6,7 @@
#define MODBUS_SLAVER_DW20_REG_START 0x02 #define MODBUS_SLAVER_DW20_REG_START 0x02
#define MODBUS_SLAVER_DW20_REG_NUM 0x02 #define MODBUS_SLAVER_DW20_REG_NUM 0x02
#define MODBUS_SLAVER_RETRY_MAX_TIME 3 #define MODBUS_SLAVER_RETRY_MAX_TIME 5
TS_tcp ts_tcp; TS_tcp ts_tcp;
@ -44,14 +44,13 @@ void L3_task_tcp_handle(TS_tcp *s)
} }
TTSS_Task_step(D_task_tcp_send_modbus_pkg) TTSS_Task_step(D_task_tcp_send_modbus_pkg)
//L0_uart0_sendArray((U8*)&s->loopPkg,s->pkglen); //L0_uart0_sendArray((U8*)&s->loopPkg,s->pkglen);
L3_gm35_send((U8*)&s->loopPkg,s->pkglen); L3_gm35_send((U8*)&s->loopPkg,s->pkglen);
s->sendStamp = s_nos_tick.t_5ms; s->sendStamp = s_nos_tick.t_5ms;
L2_task_go(D_task_tcp_wait_modbus_ack); L2_task_go(D_task_tcp_wait_modbus_ack);
TTSS_Task_step(D_task_tcp_wait_modbus_ack) TTSS_Task_step(D_task_tcp_wait_modbus_ack)
if(s_nos_tick.t_5ms - s->sendStamp >= 200) if(s_nos_tick.t_5ms - s->sendStamp >= 300)
{ {
if(s_uart4_tcp_rec.ok) if(s_uart4_tcp_rec.ok)
{ {
@ -62,7 +61,14 @@ void L3_task_tcp_handle(TS_tcp *s)
s->ackFlag = 1; s->ackFlag = 1;
} }
} }
s->retryTimes++; else
{
if(++s->retryTimes >= MODBUS_SLAVER_RETRY_MAX_TIME)
{
//断开连接
g_at_send_status.conn_ok = 0;
}
}
if(s->ackFlag || s->retryTimes >= MODBUS_SLAVER_RETRY_MAX_TIME) if(s->ackFlag || s->retryTimes >= MODBUS_SLAVER_RETRY_MAX_TIME)
{ {
if(G.ccmd_slaver_info[s->slaverIndex].mask == 1) if(G.ccmd_slaver_info[s->slaverIndex].mask == 1)

Loading…
Cancel
Save