APM:Libraries
|
#include <RCOutput.h>
Public Types | |
enum | output_mode { MODE_PWM_NONE, MODE_PWM_NORMAL, MODE_PWM_ONESHOT, MODE_PWM_ONESHOT125, MODE_PWM_BRUSHED, MODE_PWM_DSHOT150, MODE_PWM_DSHOT300, MODE_PWM_DSHOT600, MODE_PWM_DSHOT1200 } |
Public Member Functions | |
virtual void | init ()=0 |
virtual void | set_freq (uint32_t chmask, uint16_t freq_hz)=0 |
virtual uint16_t | get_freq (uint8_t ch)=0 |
virtual void | enable_ch (uint8_t ch)=0 |
virtual void | disable_ch (uint8_t ch)=0 |
virtual void | write (uint8_t ch, uint16_t period_us)=0 |
virtual void | cork ()=0 |
virtual void | push ()=0 |
virtual uint16_t | read (uint8_t ch)=0 |
virtual void | read (uint16_t *period_us, uint8_t len)=0 |
virtual uint16_t | read_last_sent (uint8_t ch) |
virtual void | read_last_sent (uint16_t *period_us, uint8_t len) |
virtual void | set_safety_pwm (uint32_t chmask, uint16_t period_us) |
virtual void | set_failsafe_pwm (uint32_t chmask, uint16_t period_us) |
virtual bool | force_safety_on (void) |
virtual void | force_safety_off (void) |
virtual void | force_safety_no_wait (void) |
virtual void | set_esc_scaling (uint16_t min_pwm, uint16_t max_pwm) |
virtual bool | get_esc_scaling (uint16_t &min_pwm, uint16_t &max_pwm) |
virtual float | scale_esc_to_unity (uint16_t pwm) |
virtual bool | enable_px4io_sbus_out (uint16_t rate_hz) |
virtual void | timer_tick (void) |
virtual bool | serial_setup_output (uint8_t chan, uint32_t baudrate) |
virtual bool | serial_write_bytes (const uint8_t *bytes, uint16_t len) |
virtual uint16_t | serial_read_bytes (uint8_t *buf, uint16_t len) |
virtual void | serial_end (void) |
virtual void | set_output_mode (uint16_t mask, enum output_mode mode) |
virtual void | set_default_rate (uint16_t rate_hz) |
virtual void | set_telem_request_mask (uint16_t mask) |
Definition at line 34 of file RCOutput.h.
Enumerator | |
---|---|
MODE_PWM_NONE | |
MODE_PWM_NORMAL | |
MODE_PWM_ONESHOT | |
MODE_PWM_ONESHOT125 | |
MODE_PWM_BRUSHED | |
MODE_PWM_DSHOT150 | |
MODE_PWM_DSHOT300 | |
MODE_PWM_DSHOT600 | |
MODE_PWM_DSHOT1200 |
Definition at line 169 of file RCOutput.h.
|
pure virtual |
Implemented in ap::RCOutput_Tap, Linux::RCOutput_Bebop, Linux::RCOutput_AeroIO, F4Light::RCOutput, ChibiOS::RCOutput, PX4::PX4RCOutput, Linux::RCOutput_AioPRU, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_Disco, Linux::RCOutput_PCA9685, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by SRV_Channels::cork().
|
pure virtual |
Implemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, F4Light::RCOutput, Linux::RCOutput_AeroIO, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
|
pure virtual |
Implemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, F4Light::RCOutput, Linux::RCOutput_AeroIO, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by SRV_Channels::enable_aux_servos(), SRV_Channels::enable_by_mask(), RCOutputRGBLed::hw_init(), RC_UART::loop(), and setup().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 126 of file RCOutput.h.
Referenced by AP_BoardConfig::board_setup_sbus().
|
inlinevirtual |
Reimplemented in PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 103 of file RCOutput.h.
Referenced by AP_BoardConfig::board_init_safety(), GCS_MAVLINK::handle_preflight_reboot(), VRBRAIN::VRBRAINScheduler::reboot(), PX4::PX4Scheduler::reboot(), and ChibiOS::Scheduler::reboot().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 98 of file RCOutput.h.
Referenced by GCS_MAVLINK::_set_mode_common(), AP_BoardConfig::board_init_safety(), and RC_UART::loop().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 93 of file RCOutput.h.
Referenced by GCS_MAVLINK::_set_mode_common(), GCS_MAVLINK::handle_preflight_reboot(), PX4::PX4Scheduler::reboot(), VRBRAIN::VRBRAINScheduler::reboot(), and ChibiOS::Scheduler::reboot().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, and PX4::PX4RCOutput.
Definition at line 116 of file RCOutput.h.
|
pure virtual |
Implemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, Linux::RCOutput_AeroIO, F4Light::RCOutput, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by RCOutputRGBLed::hw_set_rgb().
|
pure virtual |
Implemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, F4Light::RCOutput, Linux::RCOutput_AeroIO, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by AP_BoardConfig::board_setup(), AP_BoardConfig::px4_setup_peripherals(), HAL_Linux::run(), HAL_SITL::run(), and HAL_F4Light::run().
|
pure virtual |
Implemented in ap::RCOutput_Tap, Linux::RCOutput_Bebop, Linux::RCOutput_AeroIO, F4Light::RCOutput, ChibiOS::RCOutput, PX4::PX4RCOutput, Linux::RCOutput_AioPRU, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_Disco, Linux::RCOutput_PCA9685, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by SRV_Channels::push().
|
pure virtual |
Implemented in Linux::RCOutput_AeroIO, Linux::RCOutput_Bebop, ap::RCOutput_Tap, F4Light::RCOutput, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by DataFlash_Class::Log_Write_RCOUT(), read_last_sent(), GCS_MAVLINK::send_servo_output_raw(), and stability_test().
|
pure virtual |
Implemented in Linux::RCOutput_AeroIO, Linux::RCOutput_Bebop, ap::RCOutput_Tap, F4Light::RCOutput, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 74 of file RCOutput.h.
Referenced by SRV_Channels::limit_slew_rate(), and Compass_PerMotor::scaled_output().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 75 of file RCOutput.h.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 121 of file RCOutput.h.
Referenced by Compass_PerMotor::scaled_output().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput.
Definition at line 164 of file RCOutput.h.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput.
Definition at line 157 of file RCOutput.h.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput.
Definition at line 145 of file RCOutput.h.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput.
Definition at line 151 of file RCOutput.h.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 185 of file RCOutput.h.
Referenced by SRV_Channels::enable_aux_servos().
|
inlinevirtual |
Reimplemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, ChibiOS::RCOutput, Linux::RCOutput_Disco, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 111 of file RCOutput.h.
Referenced by Linux::RCOutput_Disco::set_esc_scaling(), SRV_Channels::set_esc_scaling_for(), and AP_MotorsMulticopter::set_throttle_range().
|
inlinevirtual |
Reimplemented in PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 86 of file RCOutput.h.
Referenced by SRV_Channels::set_failsafe_limit(), SRV_Channels::set_failsafe_pwm(), and SRV_Channels::setup_failsafe_trim_all().
|
pure virtual |
Implemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, Linux::RCOutput_AeroIO, F4Light::RCOutput, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by drive(), RCOutputRGBLed::hw_set_rgb(), AP_Motors::rc_set_freq(), SRV_Channels::set_rc_frequency(), and RC_UART::setup().
|
inlinevirtual |
Reimplemented in F4Light::RCOutput, ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 180 of file RCOutput.h.
Referenced by AP_Motors::rc_set_freq().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 81 of file RCOutput.h.
Referenced by SRV_Channels::set_safety_limit().
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput.
Definition at line 191 of file RCOutput.h.
|
inlinevirtual |
Reimplemented in ChibiOS::RCOutput, PX4::PX4RCOutput, and VRBRAIN::VRBRAINRCOutput.
Definition at line 132 of file RCOutput.h.
Referenced by VRBRAIN::VRBRAINScheduler::_timer_thread(), PX4::PX4Scheduler::_timer_thread(), and ChibiOS::Scheduler::_timer_thread().
|
pure virtual |
Implemented in Linux::RCOutput_Bebop, ap::RCOutput_Tap, Linux::RCOutput_AeroIO, F4Light::RCOutput, ChibiOS::RCOutput, Linux::RCOutput_AioPRU, Linux::RCOutput_PCA9685, Linux::RCOutput_Disco, Linux::RCOutput_PRU, Linux::RCOutput_Sysfs, PX4::PX4RCOutput, VRBRAIN::VRBRAINRCOutput, Linux::RCOutput_ZYNQ, HALSITL::RCOutput, and Empty::RCOutput.
Referenced by drive(), loop(), RC_UART::loop(), and SRV_Channel::output_ch().