31,7 → 31,7 |
SPI_FCCMD_STICK2, SPI_FCCMD_PARAMETER2, SPI_FCCMD_BL_ACCU |
}; |
unsigned char SPI_CommandCounter = 0; |
unsigned char NC_ErrorCode = 0; |
unsigned char NC_ErrorCode = 0, Partner_ErrorCode = 0; |
unsigned char NC_GPS_ModeCharacter = ' '; |
unsigned char EarthMagneticField = 0; |
unsigned char EarthMagneticInclination = 0, EarthMagneticInclinationTheoretic = 0; |
269,11 → 269,7 |
ToNaviCtrl.Param.Byte[8] = VersionInfo.BL_Firmware; |
ToNaviCtrl.Param.Byte[9] = ActiveParamSet; |
ToNaviCtrl.Param.Int[5] = FlugMinutenGesamt; // 10 & 11 |
if(PlatinenVersion >= 30) |
{ |
if(!(PIND & 0x20)) ToNaviCtrl.Param.Byte[12] = 2; // Slave |
else ToNaviCtrl.Param.Byte[12] = 1; // Master |
} else ToNaviCtrl.Param.Byte[12] = 0; |
ToNaviCtrl.Param.Byte[12] = IamMaster; |
slow_command++; |
break; |
case 1: |
488,8 → 484,28 |
//++++++++++++++++++++++++++++++++++++++++++++ |
if(FromNaviCtrl.Param.Byte[12] && !beeptime && !DisableRcOffBeeping) beeptime = FromNaviCtrl.Param.Byte[12] * 16; |
//++++++++++++++++++++++++++++++++++++++++++++ |
if(FromNaviCtrl.Param.Byte[4] & 0x01) NCForcesNewDirection = 1; |
if(FromNaviCtrl.Param.Byte[4] & 0x02) PORTD &= ~0x10; else PORTD |= 0x10; // switches PORTD.4 Low (UART-MUX) |
if(FromNaviCtrl.Param.Byte[4] & 0x01) NCForcesNewDirection = 1; |
if(FromNaviCtrl.Param.Byte[4] & 0x02) // controls the Uart-Multiplexer on the FC3.0 |
{ |
#ifdef REDUNDANT_FC_SLAVE |
if(MotorenEin) // otherwise we wouldn't read the answer of the BLs if debugging on FC is active |
{ |
UART_MUX_TO_BL; |
SwitchMultiplexerToUpdate = 0; |
} |
else |
#endif |
{ |
if(UebertragungAbgeschlossen == 2) UART_MUX_TO_UPDATE; |
SwitchMultiplexerToUpdate = 1; |
} |
} |
else |
{ |
UART_MUX_TO_BL; |
SwitchMultiplexerToUpdate = 0; |
} |
|
if(FromNaviCtrl.Param.Byte[4] & 0x10) // External Control |
{ |
memcpy((unsigned char *)&ExternalControl, (unsigned char *)&FromNaviCtrl.Param.Byte[13], 7); // 7 Bytes ExternalControl |
515,6 → 531,10 |
if(!SpeakHoTT || (SpeakHoTT >= SPEAK_GPS_HOLD && SpeakHoTT <= SPEAK_GPS_OFF)) SpeakHoTT = FromNaviCtrl.Param.Byte[11]; |
#endif |
NC_RequestsConfig = FromNaviCtrl.Param.Byte[12]; |
Partner_ErrorCode = FromNaviCtrl.Param.Byte[13]; |
Partner_StatusFlags = FromNaviCtrl.Param.Byte[14]; |
Partner_StatusFlags2 = FromNaviCtrl.Param.Byte[15]; |
Partner_StatusFlags3 = FromNaviCtrl.Param.Byte[16]; |
break; |
case SPI_NCCMD_GPSINFO: |
GPSInfo.Flags = FromNaviCtrl.Param.Byte[0]; |