This commit is contained in:
小马_666 2025-02-08 17:49:38 +08:00
parent 5aa64c354a
commit b0cc717f30
2 changed files with 24 additions and 16 deletions

View File

@ -20,7 +20,7 @@
#define MAX_EXPIRATION_DAYS (365 * MAX_EXPIRATION_YEARS + 30 * 3U)
#define SYS_HW_VERSION (0X22U)
#define SYS_SW_VERSION (0X12U)
#define SYS_SW_VERSION (0X13U)
#define SYS_IOT_UPLOAD_CYCLE_MIN (0X3C00U) // 高位在前,低位在后
#define SYS_IOT_RETRY (0X03U)
#define SYS_TEMP_ALARM_THRESHOLD (0X30U)

View File

@ -813,9 +813,6 @@ int Nt26k_Process_Events(Nt26kEvent nt26k_recv_event, struct at_device *device,
if (result != RT_EOK)
{
LOG_E("nt26k send failed\n");
nt26k_connect_sever_flag = 0;
nt26k_conncet_tcp_flag = 0;
rt_sem_release(nt26k_disconnect_sem);
ret = RT_ERROR;
continue;
}
@ -831,9 +828,7 @@ int Nt26k_Process_Events(Nt26kEvent nt26k_recv_event, struct at_device *device,
else
{
// 收不到说明在平台未注册或者信号不行,此时nt26k_connect_sever_flag 为0但nt26k_conncet_tcp_flag = 1此时不发起重连等待事件触发就行
nt26k_connect_sever_flag = 0;
nt26k_conncet_tcp_flag = 0;
rt_sem_release(nt26k_disconnect_sem);
ret = RT_ERROR;
}
}
@ -841,12 +836,6 @@ int Nt26k_Process_Events(Nt26kEvent nt26k_recv_event, struct at_device *device,
}
else
{
if (!nt26k_disconnect_retry_flag)
{
LOG_D("断网,启动重连\n");
rt_sem_release(nt26k_disconnect_sem);
}
LOG_D("断网,等待连接中......\n");
ret = RT_ERROR;
}
rt_thread_mdelay(3000);
@ -866,6 +855,21 @@ int Nt26k_Process_Events(Nt26kEvent nt26k_recv_event, struct at_device *device,
ret = RT_EOK;
}
}
else
{
if (ret != RT_EOK)
{
nt26k_connect_sever_flag = 0;
nt26k_conncet_tcp_flag = 0;
if (!nt26k_disconnect_retry_flag)
{
LOG_D("断网,启动重连\n");
rt_sem_release(nt26k_disconnect_sem);
}
LOG_D("断网,等待连接中......\n");
}
}
return ret;
}
@ -1540,7 +1544,7 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
if (device->class->device_ops->control(device, AT_DEVICE_CTRL_NET_CONN, RT_NULL) == RT_EOK)
{
LOG_D("重连网络成功\n");
nt26k_conncet_tcp_flag = RT_TRUE;
nt26k_conncet_tcp_flag = 1;
delay_n = 0;
nt26k_disconnect_retry_flag = 0;
at_delete_resp(resp);
@ -1566,6 +1570,10 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
goto __exit;
}
}
else
{
nt26k_disconnect_retry_flag = 0;
}
}
else
{
@ -1575,12 +1583,12 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
__exit:
if (result != RT_EOK)
{
nt26k_disconnect_retry_flag = 1;
LOG_D("联网错误,等待10s后重连");
if (resp != RT_NULL)
{
at_delete_resp(resp);
}
nt26k_disconnect_retry_flag = 1;
LOG_D("联网错误,等待10s后重连");
delay_n++;
if (delay_n >= 360) // 连续重连大于1小时都不行则重启设备
{