随机延时修改了下,然后重连改了下,上电错误重发从3分改到1分

This commit is contained in:
小马_666 2025-02-07 13:23:22 +08:00
parent 782d77531c
commit ccd6adb7dc
6 changed files with 28 additions and 19 deletions

View File

@ -5,7 +5,7 @@
"type": "mrs-debugger", "type": "mrs-debugger",
"request": "launch", "request": "launch",
"name": "JT-DT-YD4N02A_RTT_MRS-4G", "name": "JT-DT-YD4N02A_RTT_MRS-4G",
"cwd": "d:\\SXDT\\Project\\CH32\\JT-DT-YD4N02A_RTT_MRS-NT26K", "cwd": "c:\\Users\\张喆1223\\Desktop\\NT26K\\JT-DT-YD4N02A_4G_RTT_MRS",
"openOCDCfg": { "openOCDCfg": {
"useLocalOpenOCD": true, "useLocalOpenOCD": true,
"executable": "c:/MounRiver/MounRiver_Studio2/resources/app/resources/win32/components/WCH/OpenOCD/OpenOCD/bin/openocd.exe", "executable": "c:/MounRiver/MounRiver_Studio2/resources/app/resources/win32/components/WCH/OpenOCD/OpenOCD/bin/openocd.exe",
@ -39,8 +39,8 @@
"additionalCommands": [] "additionalCommands": []
}, },
"loadedFiles": { "loadedFiles": {
"executableFile": "d:\\SXDT\\Project\\CH32\\JT-DT-YD4N02A_RTT_MRS-NT26K\\obj\\JT-DT-YD4N02A_RTT_MRS-4G.elf", "executableFile": "c:\\Users\\张喆1223\\Desktop\\NT26K\\JT-DT-YD4N02A_4G_RTT_MRS\\obj\\JT-DT-YD4N02A_RTT_MRS-4G.elf",
"symbolFile": "d:\\SXDT\\Project\\CH32\\JT-DT-YD4N02A_RTT_MRS-NT26K\\obj\\JT-DT-YD4N02A_RTT_MRS-4G.elf", "symbolFile": "c:\\Users\\张喆1223\\Desktop\\NT26K\\JT-DT-YD4N02A_4G_RTT_MRS\\obj\\JT-DT-YD4N02A_RTT_MRS-4G.elf",
"executableFileOffset": 0, "executableFileOffset": 0,
"symbolFileOffset": 0 "symbolFileOffset": 0
}, },

View File

@ -36,7 +36,7 @@
#include <ulog.h> #include <ulog.h>
#define K 3 * 1000 #define K (5 * 1000)
volatile rt_uint16_t work_duration = 1; // 工作时长 volatile rt_uint16_t work_duration = 1; // 工作时长
volatile rt_uint8_t device_life_check = 0; volatile rt_uint8_t device_life_check = 0;

View File

@ -20,7 +20,7 @@
#define MAX_EXPIRATION_DAYS (365 * MAX_EXPIRATION_YEARS + 30 * 3U) #define MAX_EXPIRATION_DAYS (365 * MAX_EXPIRATION_YEARS + 30 * 3U)
#define SYS_HW_VERSION (0X22U) #define SYS_HW_VERSION (0X22U)
#define SYS_SW_VERSION (0X19U) #define SYS_SW_VERSION (0X11U)
#define SYS_IOT_UPLOAD_CYCLE_MIN (0X3C00U) // 高位在前,低位在后 #define SYS_IOT_UPLOAD_CYCLE_MIN (0X3C00U) // 高位在前,低位在后
#define SYS_IOT_RETRY (0X03U) #define SYS_IOT_RETRY (0X03U)
#define SYS_TEMP_ALARM_THRESHOLD (0X30U) #define SYS_TEMP_ALARM_THRESHOLD (0X30U)
@ -32,14 +32,20 @@
#define SYS_IOT_URL ("8.130.127.158") #define SYS_IOT_URL ("8.130.127.158")
#define SYS_IOT_PORT ("7101") #define SYS_IOT_PORT ("7101")
// #define SYS_IOT_URL ("8.130.117.149")
// #define SYS_IOT_PORT ("7137")
// 定义宏来打印编译时间和日期 // 定义宏来打印编译时间和日期
#define COMPILE_TIME \ #define COMPILE_TIME \
do { \ do { \
rt_kprintf("Compiled at: %s\n", __TIMESTAMP__); \ rt_kprintf("Compiled on: %s at %s\n", __DATE__, __TIME__); \
} while (0) } while (0)
// #define SYS_IOT_URL ("8.130.117.149")
// #define SYS_IOT_PORT ("7137")
// 定义宏来打印编译时间和日期
// #define COMPILE_TIME \
// do { \
// rt_kprintf("Compiled at: %s\n", __TIMESTAMP__); \
// } while (0)
typedef enum typedef enum
{ {
kPowerOnEvent, kPowerOnEvent,

View File

@ -1457,7 +1457,7 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
RT_ASSERT(device); RT_ASSERT(device);
rt_err_t result = RT_EOK; rt_err_t result = RT_EOK;
rt_uint32_t delay_n = 0; rt_uint32_t delay_n = 0;
at_response_t resp = RT_NULL;
LOG_D("nt26k_life_thread entry\n"); LOG_D("nt26k_life_thread entry\n");
while (1) while (1)
@ -1469,7 +1469,7 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
{ {
LOG_D("重连网络中...\n"); LOG_D("重连网络中...\n");
nt26k_connect_sever_flag = 0; nt26k_connect_sever_flag = 0;
at_response_t resp = at_create_resp(128, 0, 5000); resp = at_create_resp(128, 0, 5000);
if (resp == RT_NULL) if (resp == RT_NULL)
{ {
LOG_E("No memory for response structure!"); LOG_E("No memory for response structure!");
@ -1527,6 +1527,7 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
nt26k_conncet_tcp_flag = RT_TRUE; nt26k_conncet_tcp_flag = RT_TRUE;
delay_n = 0; delay_n = 0;
nt26k_disconnect_retry_flag = 0; nt26k_disconnect_retry_flag = 0;
at_delete_resp(resp);
} }
else else
{ {
@ -1536,8 +1537,6 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
goto __exit; goto __exit;
} }
} }
rt_thread_mdelay(1);
at_delete_resp(resp);
} }
} }
else else
@ -1553,6 +1552,10 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
LOG_D("重连网络失败,等待10s后重连\n"); LOG_D("重连网络失败,等待10s后重连\n");
// rt_thread_mdelay(delay_n * 5000); // rt_thread_mdelay(delay_n * 5000);
if (resp != RT_NULL)
{
at_delete_resp(resp);
}
delay_n++; delay_n++;
if (delay_n >= 360) // 连续重连大于1小时都不行则重启设备 if (delay_n >= 360) // 连续重连大于1小时都不行则重启设备
@ -1561,7 +1564,7 @@ static void Nt26k_Life_Thread_Entry(void *parameter)
rt_thread_mdelay(100); rt_thread_mdelay(100);
reboot(); reboot();
} }
rt_thread_mdelay(10000); rt_thread_mdelay(IMEI_Delay() + 10000);
// nt26k_conncet_tcp_flag = 0; // nt26k_conncet_tcp_flag = 0;
rt_sem_release(nt26k_disconnect_sem); rt_sem_release(nt26k_disconnect_sem);
} }
@ -1632,7 +1635,7 @@ int BSP_Nt26k_Thread_Init(void)
nt26k_error_timer = rt_timer_create("nt26k_error_timer", nt26k_error_timer = rt_timer_create("nt26k_error_timer",
Nt26k_Error_Timer_Cb, Nt26k_Error_Timer_Cb,
RT_NULL, RT_NULL,
3 * 60 * RT_TICK_PER_SECOND, // 3分钟) 1 * 60 * RT_TICK_PER_SECOND, // 1分钟)
RT_TIMER_FLAG_PERIODIC); RT_TIMER_FLAG_PERIODIC);
nt26k_upload_timer = rt_timer_create("nt26k_upload_timer", nt26k_upload_timer = rt_timer_create("nt26k_upload_timer",
Nt26k_Upload_Timer_Cb, Nt26k_Upload_Timer_Cb,

View File

@ -20,8 +20,8 @@ int Get_RandomNumber(void)
while(RNG_GetFlagStatus(RNG_FLAG_DRDY) == RESET); while(RNG_GetFlagStatus(RNG_FLAG_DRDY) == RESET);
random = RNG_GetRandomNumber(); random = RNG_GetRandomNumber();
LOG_D("random = %d\r\n", random % 31); // LOG_D("random = %d\r\n", random % 31);
// 生成0到1000之间的随机数 // 生成0到1000之间的随机数
return random % 1000; return random % 2000;
} }

View File

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