PROC UnPack()
!通过逗号分开字符
Num_Cmd_Start :=1;
Num_Cmd_End :=StrFind(Str_Rcv,Num_Cmd_Start,",");
Num_Cmd_Len:=Num_Cmd_End-Num_Cmd_Start;
Num_State_Start :=Num_Cmd_End+1;
Num_State_End :=StrFind(Str_Rcv,Num_State_Start,",");
Num_State_Len:=Num_State_End-Num_State_Start;
Num_X_Start :=Num_State_End+1;
Num_X_End :=StrFind(Str_Rcv,Num_X_Start,",");
Num_X_Len:=Num_X_End-Num_X_Start;
Num_Y_Start :=Num_X_End+1;
Num_Y_End :=StrFind(Str_Rcv,Num_Y_Start,",");
Num_Y_Len:=Num_Y_End-Num_Y_Start;
Num_R_Start :=Num_Y_End+1;
Num_R_End :=StrFind(Str_Rcv,Num_R_Start,",");
Num_R_Len:=Num_R_End-Num_R_Start;
!提取字符串
Str_Cmd:=strpart(Str_Rcv,Num_Cmd_Start,Num_Cmd_Len);
Str_State:=strpart(Str_Rcv,Num_State_Start,Num_State_Len);
Str_X:=strpart(Str_Rcv,Num_X_Start,Num_X_Len);
Str_Y:=strpart(Str_Rcv,Num_Y_Start,Num_Y_Len);
Str_R:=strpart(Str_Rcv,Num_R_Start,Num_R_Len);
TPWrite Str_Cmd;
TPWrite Str_State;
!字符串转换为数值,并返回状态
Bool_X:= StrToVal(Str_X,Num_X);
TPWrite "Num_X"\Num:=Num_X;
Bool_Y:= StrToVal(Str_Y,Num_Y);
TPWrite "Num_Y"\Num:=Num_Y;
Bool_R:= StrToVal(Str_R,Num_R);
TPWrite "Num_R"\Num:=Num_R;
ENDPROC