Subversion Repositories NaviCtrl

Rev

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

Rev 785 Rev 789
Line 98... Line 98...
98
NaviData_Deviation_t NaviData_Deviation;
98
NaviData_Deviation_t NaviData_Deviation;
99
NaviData_Home_t NaviData_Home;
99
NaviData_Home_t NaviData_Home;
100
NaviData_Target_t NaviData_Target;
100
NaviData_Target_t NaviData_Target;
101
NaviData_Flags_t NaviData_Flags;
101
NaviData_Flags_t NaviData_Flags;
102
NaviData_Tiny_t NaviData_Tiny;
102
NaviData_Tiny_t NaviData_Tiny;
103
NaviData_Pos_t NaviData_Failsafe;
103
NaviData_FS_Pos_t NaviData_Failsafe;
104
NaviData_Out_t NaviData_Out1Trigger;
104
NaviData_Out_t NaviData_Out1Trigger;
105
NaviData_t NaviData;
105
NaviData_t NaviData;
Line 106... Line 106...
106
 
106
 
107
u8 UART1_Request_VersionInfo    = FALSE;
107
u8 UART1_Request_VersionInfo    = FALSE;
Line 732... Line 732...
732
                                MenuItem = SerialMsg.pData[0];
732
                                MenuItem = SerialMsg.pData[0];
733
                                UART1_Request_Display1 = TRUE;
733
                                UART1_Request_Display1 = TRUE;
734
                                break;
734
                                break;
Line 735... Line 735...
735
 
735
 
736
                        case 'o': // request for navigation information
736
                        case 'o': // request for navigation information
737
                                UART1_NaviData_Interval = (u32) SerialMsg.pData[0] * 10;
737
                                UART1_NaviData_Interval = (u32) SerialMsg.pData[0] * 10;                 // PC sends: 10 = 100ms
738
                                if(SerialMsg.DataLen > 2) UART1_NaviData_MaxBytes = SerialMsg.pData[1] * 256 + SerialMsg.pData[2];
738
                                if(SerialMsg.DataLen > 2) UART1_NaviData_MaxBytes = SerialMsg.pData[1] * 256 + SerialMsg.pData[2];  // PC sends: 4 & 0 = 1024 Bytes per second
739
                                else UART1_NaviData_MaxBytes = 0;
739
                                else UART1_NaviData_MaxBytes = 0;
740
                                if(UART1_NaviData_Interval > 0) UART1_Request_NaviData = TRUE;
740
                                if(UART1_NaviData_Interval > 0) UART1_Request_NaviData = TRUE;
741
                                UART1_AboTimeOut = SetDelay(ABO_TIMEOUT);
741
                                UART1_AboTimeOut = SetDelay(ABO_TIMEOUT);
742
                                if(UART1_NaviData_Interval < 100) UART1_NaviData_Interval = 100;
742
                                if(UART1_NaviData_Interval < 100) UART1_NaviData_Interval = 100;
Line 1157... Line 1157...
1157
                                NaviData_Failsafe.Altimeter_5cm = NaviData.Altimeter_5cm;
1157
                                NaviData_Failsafe.Altimeter_5cm = NaviData.Altimeter_5cm;
1158
                                NaviData_Failsafe.GroundSpeed = NaviData.GroundSpeed / 10;
1158
                                NaviData_Failsafe.GroundSpeed = NaviData.GroundSpeed / 10;
1159
                                NaviData_Failsafe.OSDStatusFlags = (FC.StatusFlags & OSD_FLAG_MASK1) | (FC.StatusFlags2 & OSD_FLAG_MASK2);
1159
                                NaviData_Failsafe.OSDStatusFlags = (FC.StatusFlags & OSD_FLAG_MASK1) | (FC.StatusFlags2 & OSD_FLAG_MASK2);
1160
                                NaviData_Failsafe.Longitude = GPS_FailsafePosition.Longitude;
1160
                                NaviData_Failsafe.Longitude = GPS_FailsafePosition.Longitude;
1161
                                NaviData_Failsafe.Latitude = GPS_FailsafePosition.Latitude;
1161
                                NaviData_Failsafe.Latitude = GPS_FailsafePosition.Latitude;
1162
                                crc_fs = CRC16((unsigned char*)(&NaviData_Failsafe.Longitude), sizeof(NaviData_Pos_t) - START_PAYLOAD_DATA); // update crc for the structure
1162
                                crc_fs = CRC16((unsigned char*)(&NaviData_Failsafe.Longitude), sizeof(NaviData_FS_Pos_t) - START_PAYLOAD_DATA); // update crc for the structure
1163
                                if((crc_fs != CRC_Fs) || (--count_fs == 0))
1163
                                if((crc_fs != CRC_Fs) || (--count_fs == 0))
1164
                                {
1164
                                {
1165
                                 sent += MKProtocol_CreateSerialFrame(&UART1_tx_buffer, 'O', NC_ADDRESS, 1 , (u8 *)&NaviData_Failsafe, sizeof(NaviData_Failsafe)) + 1;
1165
                                 sent += MKProtocol_CreateSerialFrame(&UART1_tx_buffer, 'O', NC_ADDRESS, 1 , (u8 *)&NaviData_Failsafe, sizeof(NaviData_Failsafe)) + 1;
1166
                                 CRC_Fs = crc_fs;
1166
                                 CRC_Fs = crc_fs;
1167
                                 count_fs = 20*2;
1167
                                 count_fs = 20*2;