ArduCopter: use EXPECT_DELAY() macro

This commit is contained in:
Andrew Tridgell 2019-05-11 18:18:21 +10:00
parent 4cdfe6bac3
commit bc2f5fa33b
2 changed files with 5 additions and 4 deletions

View File

@ -124,7 +124,7 @@ MAV_RESULT Copter::mavlink_compassmot(mavlink_channel_t chan)
interference_pct[i] = 0.0f;
}
hal.scheduler->expect_delay_ms(5000);
EXPECT_DELAY(hal, 5000);
// enable motors and pass through throttle
init_rc_out();
@ -137,7 +137,7 @@ MAV_RESULT Copter::mavlink_compassmot(mavlink_channel_t chan)
// main run while there is no user input and the compass is healthy
while (command_ack_start == command_ack_counter && compass.healthy() && motors->armed()) {
hal.scheduler->expect_delay_ms(5000);
EXPECT_DELAY(hal, 5000);
// 50hz loop
if (millis() - last_run_time < 20) {
@ -230,8 +230,6 @@ MAV_RESULT Copter::mavlink_compassmot(mavlink_channel_t chan)
}
}
hal.scheduler->expect_delay_ms(0);
// stop motors
motors->output_min();
motors->armed(false);

View File

@ -25,6 +25,8 @@ void Copter::motor_test_output()
return;
}
EXPECT_DELAY(hal, 2000);
// check for test timeout
uint32_t now = AP_HAL::millis();
if ((now - motor_test_start_ms) >= motor_test_timeout_ms) {
@ -146,6 +148,7 @@ MAV_RESULT Copter::mavlink_motor_test_start(mavlink_channel_t chan, uint8_t moto
// start test
ap.motor_test = true;
EXPECT_DELAY(hal, 3000);
// enable and arm motors
if (!motors->armed()) {
init_rc_out();