|
@@ -198,9 +198,10 @@ void TcpTaskDeInit(void *arg)
|
|
|
|
|
|
/*------------------------------函数区域-----------------------*/
|
|
|
static void TcpDataInfoAssembleSend()
|
|
|
-{ static UINT8 send_counter = 0;
|
|
|
+{ static UINT32 send_counter = 0;
|
|
|
BattMsgtoTcpType BattToTcpInfo;
|
|
|
GPSMsgtoTcpType GpsToTcpInfo;
|
|
|
+ VersionMsgtoTcpType VerMsgToTcpInfo;
|
|
|
OsaUtcTimeTValue TimeStracture;
|
|
|
UINT8 csq=0;
|
|
|
INT8 snr=0;
|
|
@@ -209,8 +210,10 @@ static void TcpDataInfoAssembleSend()
|
|
|
UINT16 BattU;
|
|
|
UINT8 temp=0;
|
|
|
UINT8 TEMP_NUM=0;
|
|
|
+ TEMP_NUM = BATT_TEMP_NUM+2;//TEMP_NUM为温度总检测数量
|
|
|
UINT16 DataLen;
|
|
|
- if(send_counter%1==0)
|
|
|
+ //if(send_counter%1==0)
|
|
|
+ if(0)
|
|
|
{
|
|
|
osStatus_t result = osMutexAcquire(UartMutex, osWaitForever);
|
|
|
appGetSystemTimeUtcSync(&TimeStracture);
|
|
@@ -239,7 +242,6 @@ static void TcpDataInfoAssembleSend()
|
|
|
BattToTcpInfo.battInfo.msgCollectionTimeUTC[5] = ((TimeStracture.UTCtimer2) >> 8 ) & 0xFF; //sec
|
|
|
BattToTcpInfo.battInfo.signalStrength = csq ;
|
|
|
//故障等级故障代码未定义
|
|
|
- TEMP_NUM = UartReadMsg.data[3];//TEMP_NUM为温度总检测数量
|
|
|
BattToTcpInfo.battInfo.errClass = 0x00;
|
|
|
BattToTcpInfo.battInfo.errCode[0] = 0x00;
|
|
|
BattToTcpInfo.battInfo.errCode[1] = 0x00;
|
|
@@ -286,7 +288,8 @@ static void TcpDataInfoAssembleSend()
|
|
|
tcpipConnectionSend(socContext.id, (UINT8 *)&BattToTcpInfo, sizeof(BattToTcpInfo), 0, 0, 0);
|
|
|
|
|
|
}
|
|
|
- if(send_counter%6==0)
|
|
|
+ //if(send_counter%6==0)
|
|
|
+ if(0)
|
|
|
{
|
|
|
osStatus_t result = osMutexAcquire(GpsMutex, osWaitForever);
|
|
|
appGetSystemTimeUtcSync(&TimeStracture);
|
|
@@ -319,11 +322,63 @@ static void TcpDataInfoAssembleSend()
|
|
|
{
|
|
|
tcpipConnectionSend(socContext.id, (UINT8 *)&GpsToTcpInfo, sizeof(GpsToTcpInfo), 0, 0, 0);
|
|
|
}
|
|
|
- }
|
|
|
- if(send_counter>=6*10+1)
|
|
|
+ }
|
|
|
+ if(send_counter==0)
|
|
|
{
|
|
|
- send_counter=1;
|
|
|
+ CHAR iccid[20];
|
|
|
+ CHAR imei[15];
|
|
|
+ appGetIccidNumSync(iccid);
|
|
|
+ appGetImeiNumSync(imei);
|
|
|
+ appGetSystemTimeUtcSync(&TimeStracture);
|
|
|
+ DataLen= (UINT16)sizeof(VerMsgToTcpInfo.VerInfo);
|
|
|
+ VerMsgToTcpInfo.startSymbol[0] = TCP_START_SYM1;
|
|
|
+ VerMsgToTcpInfo.startSymbol[1] = TCP_START_SYM2;
|
|
|
+ VerMsgToTcpInfo.cmdSymbol = TCP_CMD_SYM;
|
|
|
+ VerMsgToTcpInfo.ansSymbol = TCP_ANS_SYM;
|
|
|
+ memcpy(VerMsgToTcpInfo.SN, BattSN,BATT_SN_LEN);
|
|
|
+ VerMsgToTcpInfo.encryptMethod = TCP_ENCPT_DISABLE; //not encrypt
|
|
|
+ VerMsgToTcpInfo.dataLength[0] = (DataLen>>8) & 0xFF;
|
|
|
+ VerMsgToTcpInfo.dataLength[1] = DataLen & 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.sendTimeUTC[0] = ((((TimeStracture.UTCtimer1) >> 16) & 0xFFFF) - 0x07D0) & 0xFF; //year
|
|
|
+ VerMsgToTcpInfo.VerInfo.sendTimeUTC[1] = ((TimeStracture.UTCtimer1) >> 8 ) & 0xFF; //month
|
|
|
+ VerMsgToTcpInfo.VerInfo.sendTimeUTC[2] = (TimeStracture.UTCtimer1) & 0xFF; //day
|
|
|
+ VerMsgToTcpInfo.VerInfo.sendTimeUTC[3] = ((TimeStracture.UTCtimer2) >> 24 ) & 0xFF; //hour
|
|
|
+ VerMsgToTcpInfo.VerInfo.sendTimeUTC[4] = ((TimeStracture.UTCtimer2) >> 16 ) & 0xFF; //mins
|
|
|
+ VerMsgToTcpInfo.VerInfo.sendTimeUTC[5] = ((TimeStracture.UTCtimer2) >> 8 ) & 0xFF; //sec
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgMark = VERSIONMSG;
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgCollectionTimeUTC[0] = ((((TimeStracture.UTCtimer1) >> 16) & 0xFFFF) - 0x07D0) & 0xFF; //year
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgCollectionTimeUTC[1] = ((TimeStracture.UTCtimer1) >> 8 ) & 0xFF; //month
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgCollectionTimeUTC[2] = (TimeStracture.UTCtimer1) & 0xFF; //day
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgCollectionTimeUTC[3] = ((TimeStracture.UTCtimer2) >> 24 ) & 0xFF; //hour
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgCollectionTimeUTC[4] = ((TimeStracture.UTCtimer2) >> 16 ) & 0xFF; //mins
|
|
|
+ VerMsgToTcpInfo.VerInfo.msgCollectionTimeUTC[5] = ((TimeStracture.UTCtimer2) >> 8 ) & 0xFF;
|
|
|
+ memcpy(VerMsgToTcpInfo.VerInfo.ICCID,iccid,20);
|
|
|
+ memcpy(VerMsgToTcpInfo.VerInfo.IMEI,imei,15);
|
|
|
+ osMutexAcquire(UartMutex, osWaitForever);
|
|
|
+ VerMsgToTcpInfo.VerInfo.BMSHwVersion = UartReadMsg.data[(0x08+BATT_CELL_VOL_NUM+TEMP_NUM)*2+1];
|
|
|
+ VerMsgToTcpInfo.VerInfo.BMSSwVersion = UartReadMsg.data[(0x08+BATT_CELL_VOL_NUM+TEMP_NUM)*2];
|
|
|
+ osMutexRelease(UartMutex);
|
|
|
+ VerMsgToTcpInfo.VerInfo.NBHwVersion[0] = (HWVERSION>>8)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.NBHwVersion[1] = (HWVERSION)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.BLVersion[0] = (BLSWVERSION>>24)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.BLVersion[1] = (BLSWVERSION>>16)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.BLVersion[2] = (BLSWVERSION>>8)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.BLVersion[3] = (BLSWVERSION)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.DRVVersion[0] = (DRVSWVERSION>>24)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.DRVVersion[1] = (DRVSWVERSION>>16)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.DRVVersion[2] = (DRVSWVERSION>>8)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.DRVVersion[3] = (DRVSWVERSION)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.APPVersion[0] = (APPSWVERSION>>24)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.APPVersion[1] = (APPSWVERSION>>16)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.APPVersion[2] = (APPSWVERSION>>8)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.VerInfo.APPVersion[3] = (APPSWVERSION)& 0xFF;
|
|
|
+ VerMsgToTcpInfo.CRC = bcc_chk((UINT8 *)&VerMsgToTcpInfo, sizeof(VerMsgToTcpInfo)-1 );
|
|
|
+ tcpipConnectionSend(socContext.id, (UINT8 *)&VerMsgToTcpInfo, sizeof(VerMsgToTcpInfo), 0, 0, 0);
|
|
|
}
|
|
|
+ if(send_counter>0xffff)
|
|
|
+ {
|
|
|
+ send_counter = 0;
|
|
|
+ }
|
|
|
else
|
|
|
{
|
|
|
send_counter++;
|