// set update rate to motors - a value in hertz void AP_MotorsSingle::set_update_rate( uint16_t speed_hz ) { // record requested speed _speed_hz = speed_hz; // set update rate for the 3 motors (but not the servo on channel 7) uint32_t mask = 1U << AP_MOTORS_MOT_1 | 1U << AP_MOTORS_MOT_2 | 1U << AP_MOTORS_MOT_3 | 1U << AP_MOTORS_MOT_4 ; rc_set_freq(mask, _servo_speed); uint32_t mask2 = 1U << AP_MOTORS_MOT_7; rc_set_freq(mask2, _speed_hz); }
// set update rate to motors - a value in hertz void AP_MotorsMatrix::set_update_rate( uint16_t speed_hz ) { // record requested speed _speed_hz = speed_hz; // we can use a mask of 0xFF here as rc_set_freq masks with actual // motor mask rc_set_freq(0xFF, _speed_hz ); }
// set update rate to motors - a value in hertz void AP_MotorsSingle::set_update_rate( uint16_t speed_hz ) { // record requested speed _speed_hz = speed_hz; uint32_t mask = 1U << AP_MOTORS_MOT_5 | 1U << AP_MOTORS_MOT_6 ; rc_set_freq(mask, _speed_hz); }
// set update rate to motors - a value in hertz void AP_MotorsHeli_Dual::set_update_rate( uint16_t speed_hz ) { // record requested speed _speed_hz = speed_hz; // setup fast channels uint16_t mask = 0; for (uint8_t i=0; i<AP_MOTORS_HELI_DUAL_NUM_SWASHPLATE_SERVOS; i++) { mask |= 1U << (AP_MOTORS_MOT_1+i); } rc_set_freq(mask, _speed_hz); }
// set update rate to motors - a value in hertz void AP_MotorsHeli_Single::set_update_rate( uint16_t speed_hz ) { // record requested speed _speed_hz = speed_hz; // setup fast channels uint32_t mask = 1U << AP_MOTORS_MOT_1 | 1U << AP_MOTORS_MOT_2 | 1U << AP_MOTORS_MOT_3 | 1U << AP_MOTORS_MOT_4; rc_set_freq(mask, _speed_hz); }
// set update rate to motors - a value in hertz void AP_MotorsMatrix::set_update_rate( uint16_t speed_hz ) { // record requested speed _speed_hz = speed_hz; uint16_t mask = 0; for (uint8_t i=0; i<AP_MOTORS_MAX_NUM_MOTORS; i++) { if (motor_enabled[i]) { mask |= 1U << i; } } rc_set_freq(mask, _speed_hz ); }