Fix for #2722. Needs tests.

This commit is contained in:
Bertrand Songis
2015-10-25 12:36:46 +01:00
parent 2aa2b41f3a
commit 47ea418d5b
3 changed files with 6 additions and 4 deletions
+1 -1
View File
@@ -449,7 +449,7 @@ PACK(typedef struct {
TRAINER_MODULE
};
enum TrainerMode {
TRAINER_MODE_MASTER,
TRAINER_MODE_MASTER_TRAINER_JACK,
TRAINER_MODE_SLAVE,
TRAINER_MODE_MASTER_SBUS_EXTERNAL_MODULE,
TRAINER_MODE_MASTER_CPPM_EXTERNAL_MODULE,
+1 -1
View File
@@ -264,7 +264,7 @@ void checkTrainerSettings()
uint8_t requiredTrainerMode = g_model.trainerMode;
if (requiredTrainerMode != currentTrainerMode) {
switch (currentTrainerMode) {
case TRAINER_MODE_MASTER:
case TRAINER_MODE_MASTER_TRAINER_JACK:
stop_trainer_capture();
break;
case TRAINER_MODE_SLAVE:
+4 -2
View File
@@ -127,13 +127,15 @@ extern "C" void TIM3_IRQHandler()
if ( (TRAINER_TIMER->DIER & TIM_DIER_CC3IE ) && ( TRAINER_TIMER->SR & TIM_SR_CC3IF ) ) {
// capture mode on trainer jack
capture = TRAINER_TIMER->CCR3 ;
doCapture = true;
if (currentTrainerMode == TRAINER_MODE_MASTER_TRAINER_JACK)
doCapture = true;
}
if ( ( TRAINER_TIMER->DIER & TIM_DIER_CC2IE ) && ( TRAINER_TIMER->SR & TIM_SR_CC2IF ) ) {
// capture mode on heartbeat pin (external module)
capture = TRAINER_TIMER->CCR2 ;
doCapture = true ;
if (currentTrainerMode == TRAINER_MODE_MASTER_CPPM_EXTERNAL_MODULE)
doCapture = true ;
}
if (doCapture) {