Subversion Repositories NaviCtrl

Rev

Rev 605 | Rev 618 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 605 Rev 611
Line 659... Line 659...
659
                                }
659
                                }
660
                                NaviData.FCStatusFlags = FC.StatusFlags;
660
                                NaviData.FCStatusFlags = FC.StatusFlags;
661
                                if(FC.StatusFlags2 & FC_STATUS2_WAIT_FOR_TAKEOFF) NaviData.FCStatusFlags &= ~FC_STATUS_FLY;
661
                                if(FC.StatusFlags2 & FC_STATUS2_WAIT_FOR_TAKEOFF) NaviData.FCStatusFlags &= ~FC_STATUS_FLY;
662
                                FC.StatusFlags2 = FromFlightCtrl.Param.Byte[9];
662
                                FC.StatusFlags2 = FromFlightCtrl.Param.Byte[9];
663
                                NaviData.FCStatusFlags2 = (NaviData.FCStatusFlags2 & (FC_STATUS2_OUT1_ACTIVE | FC_STATUS2_OUT2_ACTIVE)) | (FC.StatusFlags2 & (0xff - (FC_STATUS2_OUT1_ACTIVE | FC_STATUS2_OUT2_ACTIVE)));
663
                                NaviData.FCStatusFlags2 = (NaviData.FCStatusFlags2 & (FC_STATUS2_OUT1_ACTIVE | FC_STATUS2_OUT2_ACTIVE)) | (FC.StatusFlags2 & (0xff - (FC_STATUS2_OUT1_ACTIVE | FC_STATUS2_OUT2_ACTIVE)));
664
 
-
 
665
                                if((!(LastTransmittedFCStatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) && (FC.StatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) NaviData.FCStatusFlags2 |= FC_STATUS2_OUT1_ACTIVE;
664
                                if((!(LastTransmittedFCStatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) && (FC.StatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) NaviData.FCStatusFlags2 |= FC_STATUS2_OUT1_ACTIVE;
666
                                else
665
                                else
667
                                if(((LastTransmittedFCStatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) && !(FC.StatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) NaviData.FCStatusFlags2 &= ~FC_STATUS2_OUT1_ACTIVE;
666
                                if(((LastTransmittedFCStatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) && !(FC.StatusFlags2 & FC_STATUS2_OUT1_ACTIVE)) NaviData.FCStatusFlags2 &= ~FC_STATUS2_OUT1_ACTIVE;
Line 668... Line 667...
668
 
667
 
Line 684... Line 683...
684
                                BL_MinOfMaxPWM = FromFlightCtrl.Param.Byte[3];  
683
                                BL_MinOfMaxPWM = FromFlightCtrl.Param.Byte[3];  
685
                                if(BL_MinOfMaxPWM < Logging_BL_MinOfMaxPWM)     Logging_BL_MinOfMaxPWM = BL_MinOfMaxPWM;        // hold the value until logged
684
                                if(BL_MinOfMaxPWM < Logging_BL_MinOfMaxPWM)     Logging_BL_MinOfMaxPWM = BL_MinOfMaxPWM;        // hold the value until logged
686
                                if(BL_MinOfMaxPWM < ErrorCheck_BL_MinOfMaxPWM)  ErrorCheck_BL_MinOfMaxPWM = BL_MinOfMaxPWM;             // hold the value until Error processed
685
                                if(BL_MinOfMaxPWM < ErrorCheck_BL_MinOfMaxPWM)  ErrorCheck_BL_MinOfMaxPWM = BL_MinOfMaxPWM;             // hold the value until Error processed
687
                                Parameter.NaviGpsModeControl = FromFlightCtrl.Param.Byte[4];
686
                                Parameter.NaviGpsModeControl = FromFlightCtrl.Param.Byte[4];
688
                                FromFC_VarioCharacter = FromFlightCtrl.Param.Byte[5];
687
                                FromFC_VarioCharacter = FromFlightCtrl.Param.Byte[5];
-
 
688
//0x40
-
 
689
//0x20
-
 
690
//0x10
-
 
691
if(FromFlightCtrl.Param.Byte[2] & 0x80) // this Flag marks a changed Out1
-
 
692
 {
-
 
693
                NaviData_Out1Trigger.Longitude = NaviData.CurrentPosition.Longitude;
-
 
694
                NaviData_Out1Trigger.Latitude = NaviData.CurrentPosition.Latitude;
-
 
695
                NaviData_Out1Trigger.Altimeter = NaviData.Altimeter;
-
 
696
 }
689
                                index = FromFlightCtrl.Param.Byte[2] % MAX_MOTORS;
697
                                index = FromFlightCtrl.Param.Byte[2] & 0x0f; //MAX_MOTORS
690
                                Motor[index].NotReadyCnt = FromFlightCtrl.Param.Byte[6];
698
                                Motor[index].NotReadyCnt = FromFlightCtrl.Param.Byte[6];
691
                                Motor_Version[index] = FromFlightCtrl.Param.Byte[7];
699
                                Motor_Version[index] = FromFlightCtrl.Param.Byte[7];
692
                                Motor[index].MaxPWM = FromFlightCtrl.Param.Byte[8];
700
                                Motor[index].MaxPWM = FromFlightCtrl.Param.Byte[8];
693
                                Motor[index].State = FromFlightCtrl.Param.Byte[9];
701
                                Motor[index].State = FromFlightCtrl.Param.Byte[9];
694
                                Motor[index].Temperature = FromFlightCtrl.Param.Byte[10];
702
                                Motor[index].Temperature = FromFlightCtrl.Param.Byte[10];
Line 826... Line 834...
826
                                Parameter.MaximumAltitude = FromFlightCtrl.Param.Byte[3];
834
                                Parameter.MaximumAltitude = FromFlightCtrl.Param.Byte[3];
827
                                ServoParams.CompInvert = FromFlightCtrl.Param.Byte[4];
835
                                ServoParams.CompInvert = FromFlightCtrl.Param.Byte[4];
828
                                Parameter.HomeYawMode = ((ServoParams.CompInvert & 0x18) >> 3);
836
                                Parameter.HomeYawMode = ((ServoParams.CompInvert & 0x18) >> 3);
829
                                NaviData_Home.LipoCellCount = FromFlightCtrl.Param.Byte[5];
837
                                NaviData_Home.LipoCellCount = FromFlightCtrl.Param.Byte[5];
830
                                NaviData_Volatile.ShutterCounter = FromFlightCtrl.Param.Int[3];   // 6 & 7
838
                                NaviData_Volatile.ShutterCounter = FromFlightCtrl.Param.Int[3];   // 6 & 7
-
 
839
// DebugOut.Analog[] = NaviData_Volatile.ShutterCounter;
831
// 8
840
// 8
832
// 9
841
// 9
833
// 10
842
// 10
834
// 11
843
// 11
835
                                break;
844
                                break;