版本号:2.30.34.20

1. 添加ximea错误代码反馈:10、11;
2. 系统启动错误控制;
This commit is contained in:
tangchao0503
2023-06-26 19:14:31 +08:00
parent 610a384301
commit f370231979
3 changed files with 86 additions and 17 deletions

View File

@ -196,11 +196,11 @@ static void *UserDataSubscription_Task(void *arg)
PsdkLogger_UserLogDebug("gps TIME: %d.", gpsTime); PsdkLogger_UserLogDebug("gps TIME: %d.", gpsTime);
}//PsdkLogger_UserLogInfo }//PsdkLogger_UserLogInfo
printf("开始设置时间\n");
system('date');
if(counter>1 &&counter<10 && isGetGpsDate_time)//避免dji的bug第一次获取的gpsDate和gpsTime都为0 if(counter>1 &&counter<10 && isGetGpsDate_time)//避免dji的bug第一次获取的gpsDate和gpsTime都为0
{ {
printf("开始设置时间\n");
system('date');
char *gpsDate_str = (char *)malloc(sizeof(char)*50); char *gpsDate_str = (char *)malloc(sizeof(char)*50);
char *gpsTime_str = (char *)malloc(sizeof(char)*20); char *gpsTime_str = (char *)malloc(sizeof(char)*20);

View File

@ -77,6 +77,10 @@ static int s_stateOfXimea=100;
static int s_stateOfSbg=0; static int s_stateOfSbg=0;
static int s_stateOfFile=0; static int s_stateOfFile=0;
//0ximeaAirborneSystem系统未就绪不可启动1ximeaAirborneSystem系统就绪可以启动
//2ximeaAirborneSystem系统正在启动3ximeaAirborneSystem系统启动成功4系统已经关闭并且不能再次启动
int systemON_Control = 0;
char s_strUIMessage[100]=" "; char s_strUIMessage[100]=" ";
static char * s_strStateOfSbg="None"; static char * s_strStateOfSbg="None";
static char * s_strSbgSatelliteCounter="None"; static char * s_strSbgSatelliteCounter="None";
@ -393,6 +397,23 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
{ {
case 0: case 0:
s_strStateOfSbg="未打开"; s_strStateOfSbg="未打开";
if (systemON_Control == 0)
{
strcpy(s_strUIMessage,"系统已就绪!");
messageTimeCounter = 0;
messageTimespan = 1000;
systemON_Control = 1;//ximeaAirborneSystem系统一启动就会发送此信息 → 代表采集系统就绪;
}
if (systemON_Control == 3)
{
strcpy(s_strUIMessage,"采集系统崩溃,请重启并联系技术工程师!");
messageTimeCounter = 0;
messageTimespan = 1000;
}
break; break;
case 1: case 1:
s_strStateOfSbg="波特率设置失败"; s_strStateOfSbg="波特率设置失败";
@ -402,6 +423,7 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
break; break;
case 3: case 3:
s_strStateOfSbg="采集中"; s_strStateOfSbg="采集中";
systemON_Control = 3;
break; break;
default: default:
@ -466,20 +488,41 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
switch (s_stateOfXimea)//0-61ximea官方错误代码99发生的ximea官方错误代码没有处理100未打开101打开102设置帧率103自动曝光104正在采集 switch (s_stateOfXimea)//0-61ximea官方错误代码99发生的ximea官方错误代码没有处理100未打开101打开102设置帧率103自动曝光104正在采集
{ {
case 10:
s_strStateOfXimea="10";
strcpy(s_strUIMessage,"相机timeout请重启");
messageTimeCounter = 0;
messageTimespan = 200;
break;
case 11:
s_strStateOfXimea="11";
strcpy(s_strUIMessage,"相机Invalid arguments supplied");
messageTimeCounter = 0;
messageTimespan = 200;
break;
case 57: case 57:
s_strStateOfXimea="相机被占用"; s_strStateOfXimea="57";
strcpy(s_strUIMessage,"相机被占用!");
messageTimeCounter = 0;
messageTimespan = 200;
break; break;
case 99: case 99:
s_strStateOfXimea="未处理错误,错误码见日志"; s_strStateOfXimea="99";
break;
strcpy(s_strUIMessage,"相机异常,错误码见日志!");
messageTimeCounter = 0;
messageTimespan = 200;
break;
case 100: case 100:
s_strStateOfXimea="未打开"; s_strStateOfXimea="未打开";
break; break;
case 101: case 101:
s_strStateOfXimea="打开成功"; s_strStateOfXimea="打开成功";
strcpy(s_strUIMessage,"系统打开成功!"); strcpy(s_strUIMessage,"系统启动成功!");
messageTimeCounter = 0; messageTimeCounter = 0;
messageTimespan = 20; messageTimespan = 20;
@ -549,7 +592,6 @@ static T_PsdkReturnCode PsdkTestWidget_GetWidgetValue(E_PsdkWidgetType widgetTyp
} }
int frameRateGlobel = 0; int frameRateGlobel = 0;
int systemON_Control = 0;
static T_PsdkReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_PsdkWidgetType widgetType, uint32_t index, int32_t value, static T_PsdkReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_PsdkWidgetType widgetType, uint32_t index, int32_t value,
void *userData) void *userData)
{ {
@ -564,27 +606,54 @@ static T_PsdkReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_PsdkWidgetTy
case 5://系统启动关闭 case 5://系统启动关闭
if (value==0)//系统关闭 if (value==0)//系统关闭
{ {
char* command = "2"; if (systemON_Control == 3)
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server)); {
strcpy(s_strUIMessage,"系统已经关闭!");
messageTimeCounter = 0;
messageTimespan = 1000;
char* command = "2";
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server));
systemON_Control = 4;
}
} }
else if (value==1)//系统启动 else if (value==1)//系统启动
{ {
systemON_Control++; if (systemON_Control == 0)
if (systemON_Control>=2)
{ {
strcpy(s_strUIMessage,"重启300TC"); strcpy(s_strUIMessage,"等待系统初始化");
messageTimeCounter = 0; messageTimeCounter = 0;
messageTimespan = 1000; messageTimespan = 1000;
} }
else else if (systemON_Control == 1)
{ {
strcpy(s_strUIMessage,"系统启动中,超过60s未成功请重新启动系统"); strcpy(s_strUIMessage,"系统启动中,请等待");
messageTimeCounter = 0; messageTimeCounter = 0;
messageTimespan = 1000; messageTimespan = 1000;
char* command = "1"; char* command = "1";
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server)); sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server));
systemON_Control = 2;
}
else if (systemON_Control == 2)
{
strcpy(s_strUIMessage,"系统启动中,请等待!");
messageTimeCounter = 0;
messageTimespan = 1000;
}
else if (systemON_Control == 3)
{
strcpy(s_strUIMessage,"系统已经启动!");
messageTimeCounter = 0;
messageTimespan = 1000;
}
else if (systemON_Control == 4)
{
strcpy(s_strUIMessage,"相机占用,请重新上电!");
messageTimeCounter = 0;
messageTimespan = 1000;
} }
} }
break; break;

View File

@ -398,7 +398,7 @@ int main(void)
} }
//设置负载设备的别称 //设置负载设备的别称
if (PsdkProductInfo_SetAlias("300TC") != PSDK_ERROR_SYSTEM_MODULE_CODE_SUCCESS) { if (PsdkProductInfo_SetAlias("300TC_2.30.34.20") != PSDK_ERROR_SYSTEM_MODULE_CODE_SUCCESS) {
PsdkLogger_UserLogError("set product alias error."); PsdkLogger_UserLogError("set product alias error.");
return PSDK_ERROR_SYSTEM_MODULE_CODE_UNKNOWN; return PSDK_ERROR_SYSTEM_MODULE_CODE_UNKNOWN;
} }