解决了连接失败后,重连指令未输入命令ATE0关闭回显造成的回显超出resp大小的问题,

This commit is contained in:
小马_666 2025-02-06 16:40:57 +08:00
parent 138d8a5111
commit a9fcd97121
2 changed files with 21 additions and 13 deletions

View File

@ -843,7 +843,7 @@ int Nt26k_Process_Events(Nt26kEvent nt26k_recv_event, struct at_device *device,
LOG_D("断网,等待连接中......\n");
ret = RT_ERROR;
}
rt_thread_mdelay(3000);
rt_thread_mdelay(5000);
}
}
if (rt_strcmp(event->event_name, "掉电事件") == RT_EOK)
@ -1477,6 +1477,12 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
LOG_D("AT device power on success");
/* disable echo */
at_client_obj_wait_connect(device->client, 5000);
/* disable echo */
if (at_obj_exec_cmd(device->client, resp, "ATE0") != RT_EOK)
{
result = -RT_ERROR;
goto __exit;
}
/*AT+QICFG="dataformat" 设置收发模式*/
if (at_obj_exec_cmd(device->client, resp, "AT+QICFG=\"dataformat\",%d,%d", AT_NSONMI_MODE_DEFAULT, AT_NSONMI_MODE_DEFAULT) != RT_EOK)
{
@ -1524,8 +1530,8 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
goto __exit;
}
at_delete_resp(resp);
}
at_delete_resp(resp);
}
}
else
@ -1538,15 +1544,17 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
{
nt26k_disconnect_retry_flag = 1;
LOG_D("重连网络失败,等待%d s后重连\n", delay_n * 5);
rt_thread_mdelay(5000);
// rt_thread_mdelay(delay_n * 5000);
rt_thread_mdelay(delay_n * 5000);
delay_n++;
if (delay_n >= 66) // 大于3小时的重连都不行则重启设备
{
Flash_Set_WorkDuration(work_duration);
delay_n = 0;
reboot();
}
// delay_n++;
// if (delay_n >= 66) // 大于3小时的重连都不行则重启设备
// {
// Flash_Set_WorkDuration(work_duration);
// delay_n = 0;
// reboot();
// }
nt26k_conncet_tcp_flag = 0;
rt_sem_release(nt26k_disconnect_sem);
}
}

View File

@ -15,8 +15,8 @@
/*使用动态日志及密码功能时,需开启宏 FINSH_USING_AUTH ULOG_USING_FILTER ENABLE_LOG_ALL ULOG_OUTPUT_LVL = 7 以及设置ulog.c 1522行 输出等级为0*/
/**/
#define FINSH_USING_AUTH //开启终端密码登录功能
#define ULOG_USING_FILTER //开启动态修改日志等级 默认修改在ulog.c 1522行
// #define FINSH_USING_AUTH //开启终端密码登录功能
// #define ULOG_USING_FILTER //开启动态修改日志等级 默认修改在ulog.c 1522行
#define ENABLE_LOG_ALL
#define TEST_ENABLE //打开所有的终端测试程序