Rev 2499 | Rev 2517 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2499 | Rev 2500 | ||
---|---|---|---|
Line 399... | Line 399... | ||
399 | // ++++++++++++++++++++++++++++ |
399 | // ++++++++++++++++++++++++++++ |
400 | // + New direction setpoint from NC |
400 | // + New direction setpoint from NC |
401 | if(NC_CompassSetpoint != -1) |
401 | if(NC_CompassSetpoint != -1) |
402 | { |
402 | { |
403 | int diff; |
403 | int diff; |
404 | if(!NeueKompassRichtungMerken && (KompassSollWert != NC_CompassSetpoint) && CareFree) |
404 | if(!NeueKompassRichtungMerken && (KompassSollWert != NC_CompassSetpoint) && (CareFree || NCForcesNewDirection)) |
405 | { |
405 | { |
406 | diff = ((540 + (KompassSollWert - NC_CompassSetpoint)) % 360) - 180; |
406 | diff = ((540 + (KompassSollWert - NC_CompassSetpoint)) % 360) - 180; |
407 | if(diff > 2) diff = 2; // max. 2° in 20ms = 100°/sec |
407 | if(diff > 2) diff = 2; // max. 2° in 20ms = 100°/sec |
408 | else |
408 | else |
409 | if(diff < -2) diff = -2; |
409 | if(diff < -2) diff = -2; |
410 | KompassSollWert -= diff; |
410 | KompassSollWert -= diff; |
411 | } |
411 | } |
- | 412 | else |
|
- | 413 | { |
|
412 | else NC_CompassSetpoint = -1; |
414 | NC_CompassSetpoint = -1; |
- | 415 | NCForcesNewDirection = 0; // allows Yawing without CareFree (Yawing at Coming Home) |
|
- | 416 | } |
|
413 | } |
417 | } |
414 | // ++++++++++++++++++++++++++++ |
418 | // ++++++++++++++++++++++++++++ |
415 | #if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
419 | #if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
416 | if(EE_Parameter.Receiver == RECEIVER_HOTT) HoTT_Menu(); |
420 | if(EE_Parameter.Receiver == RECEIVER_HOTT) HoTT_Menu(); |
417 | else |
421 | else |