Subversion Repositories NaviCtrl

Rev

Rev 457 | Rev 461 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 457 Rev 460
Line 120... Line 120...
120
u8 NC_To_FC_Flags = 0;
120
u8 NC_To_FC_Flags = 0;
121
u8 BL_MinOfMaxPWM;  // indication if all BL-controllers run on full power
121
u8 BL_MinOfMaxPWM;  // indication if all BL-controllers run on full power
122
u32 FC_I2C_ErrorConter;
122
u32 FC_I2C_ErrorConter;
123
SPI_Version_t FC_Version;
123
SPI_Version_t FC_Version;
124
s16 POI_KameraNick = 0;
124
s16 POI_KameraNick = 0;
-
 
125
u8 NC_Wait_for_LED = 0;
Line 125... Line 126...
125
 
126
 
126
//--------------------------------------------------------------
127
//--------------------------------------------------------------
127
void SSP0_IRQHandler(void)
128
void SSP0_IRQHandler(void)
128
{
129
{
Line 458... Line 459...
458
                                        else ToFlightCtrl.Param.Byte[5]  = 0; // 1 = S
459
                                        else ToFlightCtrl.Param.Byte[5]  = 0; // 1 = S
459
                                        i1 = abs(GPSData.Position.Latitude)/10000000L;
460
                                        i1 = abs(GPSData.Position.Latitude)/10000000L;
460
                                        i2 = abs(GPSData.Position.Latitude)%10000000L;
461
                                        i2 = abs(GPSData.Position.Latitude)%10000000L;
461
                                        if(!(NCFlags & NC_FLAG_GPS_OK)) {i1 = 0; i2 = 0;}
462
                                        if(!(NCFlags & NC_FLAG_GPS_OK)) {i1 = 0; i2 = 0;}
462
                                        i1 *= 100;
463
                                        i1 *= 100;
-
 
464
                                // Minuten
-
 
465
                                i2 *= 6;
-
 
466
                                i2 /= 10;
463
                                        i1 += i2 / 100000;
467
                                        i1 += i2 / 100000;
464
                                        i2  = i2 % 100000;
468
                                        i2  = i2 % 100000;
465
                                        i2 /= 10;
469
                                        i2 /= 10;
466
                                        ToFlightCtrl.Param.Byte[6]  = i1 % 256;
470
                                        ToFlightCtrl.Param.Byte[6]  = i1 % 256;
467
                                        ToFlightCtrl.Param.Byte[7]  = i1 / 256;
471
                                        ToFlightCtrl.Param.Byte[7]  = i1 / 256;
Line 477... Line 481...
477
                                        else ToFlightCtrl.Param.Byte[2]  = 0; // 1 = S
481
                                        else ToFlightCtrl.Param.Byte[2]  = 0; // 1 = S
478
                                        i1 = abs(GPSData.Position.Longitude)/10000000L;
482
                                        i1 = abs(GPSData.Position.Longitude)/10000000L;
479
                                        i2 = abs(GPSData.Position.Longitude)%10000000L;
483
                                        i2 = abs(GPSData.Position.Longitude)%10000000L;
480
                                        if(!(NCFlags & NC_FLAG_GPS_OK)) {i1 = 0; i2 = 0;}
484
                                        if(!(NCFlags & NC_FLAG_GPS_OK)) {i1 = 0; i2 = 0;}
481
                                        i1 *= 100;
485
                                        i1 *= 100;
-
 
486
                                // Minuten
-
 
487
                                i2 *= 6;
-
 
488
                                i2 /= 10;
482
                                        i1 += i2 / 100000;
489
                                        i1 += i2 / 100000;
483
                                        i2  = i2 % 100000;
490
                                        i2  = i2 % 100000;
484
                                        i2 /= 10;
491
                                        i2 /= 10;
485
                                        ToFlightCtrl.Param.Byte[3]  = i1 % 256;
492
                                        ToFlightCtrl.Param.Byte[3]  = i1 % 256;
486
                                        ToFlightCtrl.Param.Byte[4]  = i1 / 256;
493
                                        ToFlightCtrl.Param.Byte[4]  = i1 / 256;
Line 652... Line 659...
652
                                CHK_POTI_MM(Parameter.NaviGpsPLimit,FromFlightCtrl.Param.Byte[6],0,255);
659
                                CHK_POTI_MM(Parameter.NaviGpsPLimit,FromFlightCtrl.Param.Byte[6],0,255);
653
                                CHK_POTI_MM(Parameter.NaviGpsILimit,FromFlightCtrl.Param.Byte[7],0,255);
660
                                CHK_POTI_MM(Parameter.NaviGpsILimit,FromFlightCtrl.Param.Byte[7],0,255);
654
                                CHK_POTI_MM(Parameter.NaviGpsDLimit,FromFlightCtrl.Param.Byte[8],0,255);
661
                                CHK_POTI_MM(Parameter.NaviGpsDLimit,FromFlightCtrl.Param.Byte[8],0,255);
655
                                FC.RC_Quality   = FromFlightCtrl.Param.Byte[9];
662
                                FC.RC_Quality   = FromFlightCtrl.Param.Byte[9];
656
                                NaviData.RC_Quality = FC.RC_Quality;
663
                                NaviData.RC_Quality = FC.RC_Quality;
657
//FromFlightCtrl.Param.Byte[10];
664
NC_Wait_for_LED = FromFlightCtrl.Param.Byte[10];
658
 
-
 
-
 
665
DebugOut.Analog[16] = NC_Wait_for_LED;
659
//                              FC.RC_RSSI              = FromFlightCtrl.Param.Byte[10];
666
//                              FC.RC_RSSI              = FromFlightCtrl.Param.Byte[10];
660
//                              if(!FC.RC_RSSI) NaviData.RC_Quality = FC.RC_Quality; else NaviData.RC_Quality = FC.RC_RSSI;
667
//                              if(!FC.RC_RSSI) NaviData.RC_Quality = FC.RC_Quality; else NaviData.RC_Quality = FC.RC_RSSI;
661
//                              NaviData.RC_RSSI = FC.RC_RSSI;
668
//                              NaviData.RC_RSSI = FC.RC_RSSI;
662
                                NaviData.Gas    = (FC.BAT_Voltage * (u32) FromFlightCtrl.Param.Byte[11]) / (u32) Parameter.LowVoltageWarning;
669
                                NaviData.Gas    = (FC.BAT_Voltage * (u32) FromFlightCtrl.Param.Byte[11]) / (u32) Parameter.LowVoltageWarning;
663
                                break;
670
                                break;