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; |