/trunk/fc.c |
---|
102,6 → 102,7 |
long SollHoehe = 0; |
long FromNC_AltitudeSetpoint = 0; |
unsigned char FromNC_AltitudeSpeed = 0; |
unsigned char carefree_old = 50; // to make the Beep when switching |
int CompassGierSetpoint = 0; |
int LageKorrekturRoll = 0,LageKorrekturNick = 0, HoverGas = 0; |
347,7 → 348,6 |
FromNaviCtrl_Value.Kalman_K = -1; |
FromNaviCtrl_Value.Kalman_MaxDrift = 0; |
FromNaviCtrl_Value.Kalman_MaxFusion = 32; |
for(i=0;i<8;i++) |
{ |
Poti[i] = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
365,6 → 365,7 |
if((NeutralAccX < 300) || (NeutralAccX > 750)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_NICK; }; |
if((NeutralAccY < 300) || (NeutralAccY > 750)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_ROLL; }; |
if((NeutralAccZ < 512) || (NeutralAccZ > 850)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_TOP; }; |
carefree_old = 70; |
} |
558,7 → 559,6 |
//############################################################################ |
{ |
unsigned char tmp,i; |
static unsigned char carefree_old = 2; |
#define CHK_POTI(b,a) {if(a < 248) b = a; else b = Poti[255 - a];} |
#define CHK_POTI_MM(b,a,min,max) {CHK_POTI(b,a); LIMIT_MIN_MAX(b, min, max);} |
for(i=0;i<8;i++) |
620,15 → 620,21 |
#endif |
CareFree = 1; |
if(tmp >= 248 && Poti[255 - tmp] < 50) CareFree = 0; |
if(carefree_old == 0 && CareFree) beeptime = 1000; |
if(carefree_old == 1 && !CareFree) beeptime = 200; |
carefree_old = CareFree; |
if(carefree_old != CareFree) |
{ |
if(carefree_old < 3) |
{ |
if(CareFree) beeptime = 1500; |
else beeptime = 200; |
carefree_old = CareFree; |
} else carefree_old--; |
} |
if(FromNaviCtrl.CompassValue < 0 && CareFree) VersionInfo.HardwareError[0] |= FC_ERROR0_CAREFREE; else VersionInfo.HardwareError[0] &= ~FC_ERROR0_CAREFREE; |
} |
else |
{ |
CareFree = 0; |
carefree_old = 0; |
carefree_old = 10; |
} |
if(FromNaviCtrl.CompassValue < 0 && MotorenEin && CareFree && BeepMuster == 0xffff) // ungültiger Kompasswert |
/trunk/fc.h |
---|
25,6 → 25,7 |
#define FC_STATUS2_ALTITUDE_CONTROL 0x02 |
extern volatile unsigned char FC_StatusFlags, FC_StatusFlags2; |
extern void ParameterZuordnung(void); |
#define Poti1 Poti[0] |
#define Poti2 Poti[1] |
/trunk/libfc1284.a |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/trunk/makefile |
---|
6,7 → 6,7 |
#------------------------------------------------------------------- |
VERSION_MAJOR = 0 |
VERSION_MINOR = 83 |
VERSION_PATCH = 7 |
VERSION_PATCH = 8 |
VERSION_SERIAL_MAJOR = 11 # Serial Protocol |
VERSION_SERIAL_MINOR = 0 # Serial Protocol |
NC_SPI_COMPATIBLE = 19 # Navi-Kompatibilität |
/trunk/spi.c |
---|
309,9 → 309,7 |
{ |
KompassSollWert = FromNaviCtrl.Param.sInt[4]; // bei Carefree kann NC den Kompass-Sollwinkel vorgeben |
} |
// if(CareFree) POI_KameraNick = (POI_KameraNick + FromNaviCtrl.Param.sInt[5]) / 2; // Nickwinkel |
// else POI_KameraNick = 0; |
POI_KameraNick = POI_KameraNick = (POI_KameraNick + FromNaviCtrl.Param.sInt[5]) / 2; // FromNaviCtrl.Param.sInt[5]; // Nickwinkel |
POI_KameraNick = (POI_KameraNick + FromNaviCtrl.Param.sInt[5]) / 2; // FromNaviCtrl.Param.sInt[5]; // Nickwinkel |
break; |
case SPI_NCCMD_VERSION: |
NC_Version.Major = FromNaviCtrl.Param.Byte[0]; |
/trunk/uart.c |
---|
411,7 → 411,7 |
break; |
case 's': // Parametersatz speichern |
if((1 <= pRxData[0]) && (pRxData[0] <= 5) && (pRxData[1] == EEPARAM_REVISION)) // check for setting to be in range |
if((1 <= pRxData[0]) && (pRxData[0] <= 5) && (pRxData[1] == EEPARAM_REVISION) && MotorenEin == 0) // check for setting to be in range |
{ |
memcpy(&EE_Parameter, (uint8_t*)&pRxData[1], sizeof(EE_Parameter) - 1); |
ParamSet_WriteToEEProm(pRxData[0]); |
/trunk/version.txt |
---|
453,4 → 453,5 |
- Defaultreceiver ist RECEIVER_JETI |
- GPS-Operation-Radius per default auf 245m |
- Höhenvorgabe im Vario-Mode durch Waypoints |
- bei laufenden Motoren keine neuen Settings annehmen |