|
@@ -21,7 +21,25 @@ uint8_t speedEnd=0;
|
|
|
uint8_t speed[10]; //处理头部
|
|
|
uint8_t DTUurc[100]; //接收平台数据
|
|
|
uint8_t DTUurc1[15]; //接收平台数据
|
|
|
+char input_strings[20]={0};
|
|
|
+char reIp0[10];
|
|
|
+char reIp1[10];
|
|
|
+char reIp2[10];
|
|
|
+char reIp3[10];
|
|
|
+char reIpP[10];
|
|
|
+Ipaddr ipaddr;
|
|
|
+MacSet macset;
|
|
|
+MacSet *macsetptr = &macset;
|
|
|
+char Newip[30];
|
|
|
+extern bool wdiFlag;
|
|
|
|
|
|
+char MqttReBuff[200];
|
|
|
+char MqttWorkBuff[200];
|
|
|
+char Mqtttotal_len[10];
|
|
|
+char payload_len[10];
|
|
|
+uint8_t Mqtttotal_lenu8=0;
|
|
|
+uint8_t payload_lenu8=0;
|
|
|
+char versionc[20]={0};
|
|
|
|
|
|
int pushpullcount = 0;
|
|
|
double dSpeed=0;
|
|
@@ -64,21 +82,21 @@ void reconn(void)
|
|
|
TcpConn(TCPconnvalue, 1, JLPTIP, JLPTPORT,0); //cid=1 tcpConnmode=0 普通模式
|
|
|
if(sendCmd_4G(TCPconnvalue, "+MIPOPEN: 1,0", 1, 1)) //TCP连接 0普通模式 2缓存模式 1透传模式
|
|
|
{
|
|
|
- printf("重连成功\r\n");
|
|
|
+ printf("进行重连,未验证连通性\r\n");
|
|
|
}
|
|
|
}
|
|
|
uint8_t Messagetemp_length=0;
|
|
|
uint8_t MessageHandleData[100]; //放入封装后数据
|
|
|
uint8_t tcppacket[100]; //消息数据
|
|
|
-uint8_t copyAddress[49];
|
|
|
+uint8_t copyAddress[49]={0};
|
|
|
void MessageHandle(uint16_t MessageID)
|
|
|
{
|
|
|
|
|
|
- Flash_ReadBytes((uint16_t*)&(tt808.LSH),tt808serialNum,1);//读取loc头部是否发生写入
|
|
|
- if(tt808.LSH==0xFFFF)
|
|
|
- {
|
|
|
+// Flash_ReadBytes((uint16_t*)&(tt808.LSH),tt808serialNum,1);//读取loc头部是否发生写入
|
|
|
+// if(tt808.LSH==0xFFFF)
|
|
|
+// {
|
|
|
tt808.LSH=0;//初始未写入
|
|
|
- }
|
|
|
+// }
|
|
|
uint16_t MessageAttributeData = Messagetemp_length;
|
|
|
|
|
|
MessageAttributeData |= ( Messagetemp_length | (TCPJMFSNULL<<10)); // 将长度左移3位后和加密方式进行按位或操作(001 RSA ,000 无加密)
|
|
@@ -132,10 +150,14 @@ void MessageHandle(uint16_t MessageID)
|
|
|
// printf("%02X ", tcppacket[i]); // 以十六进制格式打印每个元素
|
|
|
// }
|
|
|
printf("\r\n");
|
|
|
- memcpy(copyAddress,tcppacket,49);
|
|
|
+
|
|
|
+// if(MessageID==MessageID_location)
|
|
|
+// {
|
|
|
+ memcpy(copyAddress,tcppacket,index);//0200mqtt心跳信息(无网络重复发送鉴权报文)
|
|
|
+// }
|
|
|
|
|
|
//#if open4G ==1
|
|
|
- char TCPvalue[120];
|
|
|
+ char TCPvalue[200];
|
|
|
char *ptr = TCPvalue;
|
|
|
ptr += sprintf(ptr, "AT+MIPSEND=1,%d,\"",index);
|
|
|
for (int i = 0; i < index; i++) {
|
|
@@ -148,9 +170,8 @@ void MessageHandle(uint16_t MessageID)
|
|
|
}
|
|
|
//#endif
|
|
|
|
|
|
-
|
|
|
tt808.LSH+=1;//需做写入处理
|
|
|
- Flash_WriteBytes((uint16_t*)&(tt808.LSH),tt808serialNum,1);
|
|
|
+// Flash_WriteBytes((uint16_t*)&(tt808.LSH),tt808serialNum,1);
|
|
|
}
|
|
|
uint16_t swapBytes16(uint16_t value) {
|
|
|
return (value >> 8) | (value << 8);
|
|
@@ -159,6 +180,7 @@ uint32_t swapBytes32(uint32_t value) {
|
|
|
return ((value & 0xFF) << 24) | ((value & 0xFF00) << 8) |
|
|
|
((value >> 8) & 0xFF00) | ((value >> 24) & 0xFF);
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* @breaf 消息体封装
|
|
|
* Message[] 消息数据; length 消息数据长度; outMessage[] 封装后消息数据; MessageID 消息ID
|
|
@@ -187,7 +209,6 @@ uint8_t Message_bodydata(uint8_t *Message, uint8_t length, uint8_t outMessage[],
|
|
|
}
|
|
|
else if(MessageID==MessageID_location)//终端地址0200 补传0704
|
|
|
{
|
|
|
-
|
|
|
temp_length = length;//不加首尾
|
|
|
//状态标志/纬度/经度/速度
|
|
|
|
|
@@ -196,7 +217,6 @@ uint8_t Message_bodydata(uint8_t *Message, uint8_t length, uint8_t outMessage[],
|
|
|
temp_Message[index++] = Message[i]; // 将消息头拷贝到报文中
|
|
|
}
|
|
|
|
|
|
-
|
|
|
for(int i =0;i<temp_length;i++)
|
|
|
{
|
|
|
outMessage[i]=temp_Message[i];
|
|
@@ -485,24 +505,7 @@ void hexToBcd_arr(uint8_t* array, size_t length, uint8_t* out) {//通
|
|
|
out[i] = hexToBcd(array[i]);
|
|
|
}
|
|
|
}
|
|
|
-char input_strings[20]={0};
|
|
|
-char reIp0[10];
|
|
|
-char reIp1[10];
|
|
|
-char reIp2[10];
|
|
|
-char reIp3[10];
|
|
|
-char reIpP[10];
|
|
|
-Ipaddr ipaddr;
|
|
|
-MacSet macset;
|
|
|
-MacSet *macsetptr = &macset;
|
|
|
-char Newip[30];
|
|
|
-extern bool wdiFlag;
|
|
|
|
|
|
-char MqttReBuff[200];
|
|
|
-char MqttWorkBuff[200];
|
|
|
-char Mqtttotal_len[10];
|
|
|
-char payload_len[10];
|
|
|
-uint8_t Mqtttotal_lenu8=0;
|
|
|
-uint8_t payload_lenu8=0;
|
|
|
|
|
|
void Process_str_collections(void) {
|
|
|
// 循环遍历从0到macCount-1的每个索引
|
|
@@ -515,7 +518,6 @@ void Process_str_collections(void) {
|
|
|
);
|
|
|
}
|
|
|
}
|
|
|
-char versionc[20]={0};
|
|
|
void MqttRe(void)
|
|
|
{
|
|
|
if(strncmp((const char *)U4_4GrecvBuff, "+MQTTURC: \"publish\"", strlen("+MQTTURC: \"publish\""))==0)//接收到发布信息
|
|
@@ -527,7 +529,6 @@ void MqttRe(void)
|
|
|
Mqtttotal_lenu8 = atoi(Mqtttotal_len);
|
|
|
payload_lenu8 = atoi(payload_len);
|
|
|
|
|
|
-
|
|
|
//printf("%d,%d\r\n",Mqtttotal_lenu8,payload_lenu8);
|
|
|
if(Mqtttotal_lenu8==payload_lenu8)
|
|
|
{
|
|
@@ -739,11 +740,11 @@ void Test485Re(void)
|
|
|
}
|
|
|
else if(strncmp((char*)U1_485recvBuff, "+MIPOPEN: 1,0", strlen("+MIPOPEN: 1,0"))==0)//连接平台
|
|
|
{
|
|
|
- Offline=false;
|
|
|
- Online = true;
|
|
|
- uploaweork=true;
|
|
|
- printf("@U1设备已上线!!\r\n");
|
|
|
- refresh=true;
|
|
|
+// Offline=false;
|
|
|
+// Online = true;
|
|
|
+// uploaweork=true;
|
|
|
+// printf("@U1设备已上线!!\r\n");
|
|
|
+// refresh=true;
|
|
|
memset(U1_485recvBuff,0,BUFFER_SIZE);
|
|
|
}
|
|
|
|
|
@@ -972,13 +973,13 @@ void ReMIPURC(void)//DTU
|
|
|
//*设备上线,发送成功
|
|
|
if(strncmp((char*)U4_4GrecvBuff, "+MIPOPEN: 1,0", strlen("+MIPOPEN: 1,0"))==0)//连接平台
|
|
|
{
|
|
|
+ printf("进行连接,连通性未验证\r\n");
|
|
|
memset(U4_4GrecvBuff,0,BUFFER_SIZE);
|
|
|
}
|
|
|
///*定位信息(MGNSS)
|
|
|
else if(strncmp((char*)U4_4GrecvBuff, "+MGNSSURC: \"state\",1", strlen("+MGNSSURC: \"state\",1"))==0)
|
|
|
{
|
|
|
printf("@MGNSS设置成功\r\n");
|
|
|
-
|
|
|
memset(U4_4GrecvBuff,0,strlen("+MGNSSURC: \"state\",1"));
|
|
|
}
|
|
|
else if(strncmp((char*)U4_4GrecvBuff, "+MGNSSURC: \"state\",0", strlen("+MGNSSURC: \"state\",0"))==0)//断开平台
|
|
@@ -1003,7 +1004,7 @@ void ReMIPURC(void)//DTU
|
|
|
printf("@未发送成功,平台断开连接\r\n");
|
|
|
memset(U4_4GrecvBuff,0,BUFFER_SIZE);
|
|
|
uploaweork = false;
|
|
|
- reconn();//重连
|
|
|
+ //reconn();//重连
|
|
|
}
|
|
|
else if((strncmp((char*)U4_4GrecvBuff, "+CPIN: SIM REMOVED", strlen("+CPIN: SIM REMOVED"))==0) || (strncmp((char*)U4_4GrecvBuff, "+CME ERROR: 10", strlen("+CME ERROR: 10"))==0) )//无SIM
|
|
|
{
|