|
@@ -541,19 +541,20 @@ void MqttRe(void)
|
|
|
dblocptr->headinfo.loc_pullIndex=0;
|
|
|
Flash_WriteBytes((uint16_t*)&(dblocptr->headinfo),LocDbHeadStart,4);//更新刻度
|
|
|
printf("更新刻度成功\r\n");
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
}
|
|
|
else if(strncmp((char*)MqttWorkBuff, "DTU+JT808_IMEI=", strlen("DTU+JT808_IMEI="))==0)//修改IME号
|
|
|
{
|
|
|
- memcpy(DTUurc1,MqttWorkBuff+15,12);
|
|
|
- const char *hex = (const char *)DTUurc1; // 将 uint8_t * 转换为 const char *
|
|
|
- int size = strlen(hex) / 2; // 计算二进制数据的长度
|
|
|
- unsigned char *bin = (unsigned char *)malloc(size); // 分配足够的内存用于存储二进制数据
|
|
|
- rlt = hex2bin(bin, hex); // 调用hex2bin函数进行转换
|
|
|
- memcpy(DTUurc, bin, rlt); // 将 bin 中的 rlt 个字节复制到 MIPurc1 中 接收到的数据放入MIPurc1中
|
|
|
- free(bin); // 释放内存
|
|
|
-
|
|
|
- reIME = true;
|
|
|
- HAL_Delay(500);
|
|
|
+ memcpy(DTUurc1,MqttWorkBuff+15,12);
|
|
|
+ const char *hex = (const char *)DTUurc1; // 将 uint8_t * 转换为 const char *
|
|
|
+ int size = strlen(hex) / 2; // 计算二进制数据的长度
|
|
|
+ unsigned char *bin = (unsigned char *)malloc(size); // 分配足够的内存用于存储二进制数据
|
|
|
+ rlt = hex2bin(bin, hex); // 调用hex2bin函数进行转换
|
|
|
+ memcpy(DTUurc, bin, rlt); // 将 bin 中的 rlt 个字节复制到 MIPurc1 中 接收到的数据放入MIPurc1中
|
|
|
+ free(bin); // 释放内存
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
+ reIME = true;
|
|
|
+ HAL_Delay(500);
|
|
|
}
|
|
|
else if(strncmp((char*)MqttWorkBuff, "DTU+JT808_SERVER=", strlen("DTU+JT808_SERVER="))==0)
|
|
|
{
|
|
@@ -580,6 +581,7 @@ void MqttRe(void)
|
|
|
ptr += sprintf(ptr, "%d.", ipaddr.IP2);
|
|
|
ptr += sprintf(ptr, "%d", ipaddr.IP3);
|
|
|
printf("更换IP成功\r\n");
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
}
|
|
|
//ptr += sprintf(ptr, ":%d", ipaddr.IPp);
|
|
|
//printf("%s\r\n",Newip);
|
|
@@ -590,6 +592,7 @@ void MqttRe(void)
|
|
|
else if(strncmp((char*)MqttWorkBuff, "DTU+VER=?", strlen("DTU+VER=?"))==0)
|
|
|
{
|
|
|
printf("%s\r\n",version);
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
}
|
|
|
|
|
|
else if(strncmp((char*)MqttWorkBuff, "DTU+MANUALMODE=1", strlen("DTU+MANUALMODE=1"))==0)
|
|
@@ -597,12 +600,14 @@ void MqttRe(void)
|
|
|
ManualWork = 1;
|
|
|
Flash_WriteBytes(&ManualWork,ManualWorkaddr,1);
|
|
|
printf("手动模式开启\r\n");
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
}
|
|
|
else if(strncmp((char*)MqttWorkBuff, "DTU+MANUALMODE=0", strlen("DTU+MANUALMODE=0"))==0)
|
|
|
{
|
|
|
ManualWork = 0;
|
|
|
Flash_WriteBytes(&ManualWork,ManualWorkaddr,1);
|
|
|
printf("手动模式关闭\r\n");
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
}
|
|
|
|
|
|
|
|
@@ -610,7 +615,7 @@ void MqttRe(void)
|
|
|
|
|
|
HAL_StatusTypeDef WriteSta;
|
|
|
//*PDA需求 485写入MAC号
|
|
|
- if(strncmp((char*)MqttWorkBuff, "DTU+ADDMAC", strlen("DTU+ADDMAC"))==0)
|
|
|
+ if(strncmp((char*)MqttWorkBuff, "DTU+ADDMAC=", strlen("DTU+ADDMAC="))==0)
|
|
|
{
|
|
|
|
|
|
macset.macCount=0;
|
|
@@ -670,6 +675,7 @@ void MqttRe(void)
|
|
|
if(WriteSta == HAL_OK)
|
|
|
{
|
|
|
printf("更新存储刻度完成\r\n");
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
}
|
|
|
ReadSNname();//更新
|
|
|
Process_str_collections();//处理连接字符串
|
|
@@ -685,17 +691,22 @@ void MqttRe(void)
|
|
|
{
|
|
|
enterInterface_time = HAL_GetTick();
|
|
|
SET_MENU_STATUS(2,2,0,0);
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
Allopen=true;
|
|
|
}
|
|
|
else if(strncmp((char*)MqttWorkBuff, "DTU+WORK=ALLCLOSE", strlen("DTU+WORK=ALLCLOSE"))==0)
|
|
|
{
|
|
|
enterInterface_time = HAL_GetTick();
|
|
|
SET_MENU_STATUS(2,1,1,1);
|
|
|
+ MQTT_PUB(0,topica,"Success","+MQTTURC: \"puback\"");
|
|
|
Allopen=true;
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
+ else
|
|
|
+ {
|
|
|
+ MQTT_PUB(0,topica,"Error","+MQTTURC: \"puback\"");
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|