修改串口读取时间延长等问题

N938
jxjajs 6 months ago
parent dfcb3623a9
commit 915259ba2f

@ -568,7 +568,7 @@ void Gm_CloseSensorsPower()
// 打开传感器电源 // 打开传感器电源
void Gm_OpenSensorsPower() void Gm_OpenSensorsPower()
{ {
//char iIoNo; //char iIoNo;
/* int igpio; /* int igpio;
char szbuf[128]; char szbuf[128];
@ -711,7 +711,7 @@ void Gm_CloseSerialPort()
{ {
int i; int i;
for (i = 0; i < MAX_SERIAL_PORT_NUM; i++) for (i = 1; i < MAX_SERIAL_PORT_NUM; i++)
{ {
if (serialport[i].fd > 0) if (serialport[i].fd > 0)
{ {
@ -1262,6 +1262,8 @@ void GM_StartSerialComm()
#endif #endif
for (i = 0; i < MAX_SERIAL_DEV_NUM; i++) for (i = 0; i < MAX_SERIAL_DEV_NUM; i++)
{ {
memset(srdt.ms_dev[i].aiValue, 0, sizeof(AI_DEF)*MAX_DEV_VALUE_NUM);
memset(weatherpntmsg, 0, sizeof(AI_DEF)*WEATHER_DATA_NUM);
if (0 == devparam[i].IsNoInsta) if (0 == devparam[i].IsNoInsta)
{ {
srdt.ms_dev[i].IsNeedSerial = 0; srdt.ms_dev[i].IsNeedSerial = 0;
@ -1276,7 +1278,10 @@ void GM_StartSerialComm()
srdt.ms_dev[i].FirstCmdTimeCnt = get_msec(); srdt.ms_dev[i].FirstCmdTimeCnt = get_msec();
srdt.ms_dev[i].recvdatacnt = 0; srdt.ms_dev[i].recvdatacnt = 0;
for (j = 0; j < WEATHER_DATA_NUM; j++) for (j = 0; j < WEATHER_DATA_NUM; j++)
{
srdt.ms_dev[i].aiValue[j].AiState = SER_STARTSAMPLE; srdt.ms_dev[i].aiValue[j].AiState = SER_STARTSAMPLE;
weatherpntmsg[j].AiState = SER_STARTSAMPLE;
}
break; break;
case RALLY_PROTOCOL: /* 拉力*/ case RALLY_PROTOCOL: /* 拉力*/
sprintf(szbuf, "%s", "拉力"); sprintf(szbuf, "%s", "拉力");
@ -1305,6 +1310,7 @@ void GM_StartSerialComm()
case PELCO_P_PROTOCOL: /* 摄像机协议*/ case PELCO_P_PROTOCOL: /* 摄像机协议*/
case SERIALCAMERA_PROTOCOL: /* 串口摄像机协议*/ case SERIALCAMERA_PROTOCOL: /* 串口摄像机协议*/
sprintf(szbuf, "%s", "摄像机"); sprintf(szbuf, "%s", "摄像机");
srdt.ms_dev[i].IsNeedSerial = 0;
break; break;
default: default:
srdt.ms_dev[i].IsNeedSerial = 0; srdt.ms_dev[i].IsNeedSerial = 0;
@ -1567,9 +1573,9 @@ int GM_CloseTimer()
else // 关闭所有串口及电源 else // 关闭所有串口及电源
{ {
Gm_CloseSerialPort(); Gm_CloseSerialPort();
for (j = 0; j < MAX_SERIAL_DEV_NUM; j++) //for (j = 0; j < MAX_SERIAL_DEV_NUM; j++)
Gm_CloseSensorsPower(); //Gm_CloseSensorsPower();
for (j = 0; j < MAX_SERIAL_PORT_NUM; j++) for (j = 1; j < MAX_SERIAL_PORT_NUM; j++)
ClearCmdFormPollCmdBuf(j); ClearCmdFormPollCmdBuf(j);
sprintf(buf, "%s", "关闭串口定时器!"); sprintf(buf, "%s", "关闭串口定时器!");
DebugLog(8, buf, 'I'); DebugLog(8, buf, 'I');
@ -2097,9 +2103,9 @@ void SendCmdFormPollCmdBuf(int port)
serialport[devparam[srdt.curdevidx[port]].commid].m_iRevStatus = 0; serialport[devparam[srdt.curdevidx[port]].commid].m_iRevStatus = 0;
if (serialport[port].fd < 0) if (serialport[port].fd < 0)
return; return;
//ret = Gm_SetSerialPortParam(port); ret = Gm_SetSerialPortParam(port);
//if (ret < 0) if (ret < 0)
// return; return;
len = GM_SerialComSend(&pPortParam->PollCmd[2], pPortParam->cmdlen - 2, port); len = GM_SerialComSend(&pPortParam->PollCmd[2], pPortParam->cmdlen - 2, port);
if (len < 1) if (len < 1)
{ {
@ -3359,6 +3365,7 @@ void Collect_sensor_data()
struct tm t0; struct tm t0;
const char *path = "/sdcard/log"; // 指定目录路径 const char *path = "/sdcard/log"; // 指定目录路径
int days = 15; // 删除15天前的log文件 int days = 15; // 删除15天前的log文件
sprintf(logbuf, "进入程序时间:%lld, ideletefile=%d", get_msec(), ideletefile); sprintf(logbuf, "进入程序时间:%lld, ideletefile=%d", get_msec(), ideletefile);
DebugLog(8, logbuf, 'I'); DebugLog(8, logbuf, 'I');
@ -3593,6 +3600,7 @@ void GM_CameraSerialComRecv(SIO_PARAM_SERIAL_DEF *pPortParam)
int64_t t0, t1; int64_t t0, t1;
t0 = get_msec(); t0 = get_msec();
memset(recvbuf, 0, sizeof(recvbuf)); memset(recvbuf, 0, sizeof(recvbuf));
if (pPortParam->fd <= 0) if (pPortParam->fd <= 0)
return; return;
@ -3769,7 +3777,7 @@ int GetWeatherData(Data_DEF *data, int datano)
sprintf(szbuf, "未知"); sprintf(szbuf, "未知");
break; break;
} }
sprintf(logbuf, "data_state=%d, 拉力value=%0.3f", data->AiState, data->EuValue); sprintf(logbuf, "data_state=%d, %svalue=%0.3f", data->AiState, szbuf,data->EuValue);
DebugLog(8, logbuf, 'I'); DebugLog(8, logbuf, 'I');
if ((SER_SAMPLEFAIL == data->AiState) || (SAMPLINGSUCCESS == data->AiState)) if ((SER_SAMPLEFAIL == data->AiState) || (SAMPLINGSUCCESS == data->AiState))
{ {

Loading…
Cancel
Save