APM:Libraries
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
ap::RCOutput_Tap Class Reference

#include <RCOutput_Tap.h>

Inheritance diagram for ap::RCOutput_Tap:
[legend]
Collaboration diagram for ap::RCOutput_Tap:
[legend]

Public Member Functions

void init () override
 
void set_freq (uint32_t chmask, uint16_t freq_hz) override
 
uint16_t get_freq (uint8_t ch) override
 
void enable_ch (uint8_t ch) override
 
void disable_ch (uint8_t ch) override
 
void write (uint8_t ch, uint16_t period_us) override
 
uint16_t read (uint8_t ch) override
 
void read (uint16_t *period_us, uint8_t len) override
 
void set_esc_scaling (uint16_t min_pwm, uint16_t max_pwm) override
 
void cork () override
 
void push () override
 
- Public Member Functions inherited from AP_HAL::RCOutput
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 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)
 

Private Member Functions

int _send_packet (EscPacket &p)
 
bool _uart_open ()
 
bool _uart_set_speed (int speed)
 
void _uart_close ()
 

Static Private Member Functions

static uint8_t _crc8_esc (uint8_t *p, uint8_t len)
 
static uint8_t _crc_packet (EscPacket &p)
 

Private Attributes

AP_HAL::Util::perf_counter_t _perf_rcout
 
uint8_t _enabled_channels
 
bool _corking
 
bool _led_on
 
uint8_t _channels_count = MAX_MOTORS
 
uint16_t _period [MAX_MOTORS]
 
uint16_t _esc_pwm_min
 
uint16_t _esc_pwm_max
 
uint32_t _last_led_update_msec
 
int _uart_fd = -1
 

Static Private Attributes

static const uint8_t MAX_MOTORS = 4
 

Additional Inherited Members

- Public Types inherited from AP_HAL::RCOutput
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
}
 

Detailed Description

Definition at line 58 of file RCOutput_Tap.h.

Member Function Documentation

◆ _crc8_esc()

static uint8_t ap::RCOutput_Tap::_crc8_esc ( uint8_t *  p,
uint8_t  len 
)
staticprivate

Referenced by set_esc_scaling().

Here is the caller graph for this function:

◆ _crc_packet()

static uint8_t ap::RCOutput_Tap::_crc_packet ( EscPacket &  p)
staticprivate

Referenced by set_esc_scaling().

Here is the caller graph for this function:

◆ _send_packet()

int ap::RCOutput_Tap::_send_packet ( EscPacket &  p)
private

◆ _uart_close()

void ap::RCOutput_Tap::_uart_close ( )
private

◆ _uart_open()

bool ap::RCOutput_Tap::_uart_open ( )
private

◆ _uart_set_speed()

bool ap::RCOutput_Tap::_uart_set_speed ( int  speed)
private

Definition at line 31 of file RCOutput_Tap_Linux.cpp.

◆ cork()

void ap::RCOutput_Tap::cork ( )
overridevirtual

Implements AP_HAL::RCOutput.

Referenced by set_esc_scaling().

Here is the caller graph for this function:

◆ disable_ch()

void ap::RCOutput_Tap::disable_ch ( uint8_t  ch)
overridevirtual

Implements AP_HAL::RCOutput.

◆ enable_ch()

void ap::RCOutput_Tap::enable_ch ( uint8_t  ch)
overridevirtual

Implements AP_HAL::RCOutput.

◆ get_freq()

uint16_t ap::RCOutput_Tap::get_freq ( uint8_t  ch)
overridevirtual

Implements AP_HAL::RCOutput.

◆ init()

void ap::RCOutput_Tap::init ( )
overridevirtual

Implements AP_HAL::RCOutput.

◆ push()

void ap::RCOutput_Tap::push ( )
overridevirtual

Implements AP_HAL::RCOutput.

Referenced by set_esc_scaling().

Here is the caller graph for this function:

◆ read() [1/2]

uint16_t ap::RCOutput_Tap::read ( uint8_t  ch)
overridevirtual

Implements AP_HAL::RCOutput.

◆ read() [2/2]

void ap::RCOutput_Tap::read ( uint16_t *  period_us,
uint8_t  len 
)
overridevirtual

Implements AP_HAL::RCOutput.

◆ set_esc_scaling()

void ap::RCOutput_Tap::set_esc_scaling ( uint16_t  min_pwm,
uint16_t  max_pwm 
)
inlineoverridevirtual

Reimplemented from AP_HAL::RCOutput.

Definition at line 69 of file RCOutput_Tap.h.

Here is the call graph for this function:

◆ set_freq()

void ap::RCOutput_Tap::set_freq ( uint32_t  chmask,
uint16_t  freq_hz 
)
overridevirtual

Implements AP_HAL::RCOutput.

◆ write()

void ap::RCOutput_Tap::write ( uint8_t  ch,
uint16_t  period_us 
)
overridevirtual

Implements AP_HAL::RCOutput.

Member Data Documentation

◆ _channels_count

uint8_t ap::RCOutput_Tap::_channels_count = MAX_MOTORS
private

Definition at line 94 of file RCOutput_Tap.h.

◆ _corking

bool ap::RCOutput_Tap::_corking
private

Definition at line 91 of file RCOutput_Tap.h.

◆ _enabled_channels

uint8_t ap::RCOutput_Tap::_enabled_channels
private

Definition at line 90 of file RCOutput_Tap.h.

◆ _esc_pwm_max

uint16_t ap::RCOutput_Tap::_esc_pwm_max
private

Definition at line 98 of file RCOutput_Tap.h.

Referenced by set_esc_scaling().

◆ _esc_pwm_min

uint16_t ap::RCOutput_Tap::_esc_pwm_min
private

Definition at line 97 of file RCOutput_Tap.h.

Referenced by set_esc_scaling().

◆ _last_led_update_msec

uint32_t ap::RCOutput_Tap::_last_led_update_msec
private

Definition at line 99 of file RCOutput_Tap.h.

◆ _led_on

bool ap::RCOutput_Tap::_led_on
private

Definition at line 92 of file RCOutput_Tap.h.

◆ _perf_rcout

AP_HAL::Util::perf_counter_t ap::RCOutput_Tap::_perf_rcout
private

Definition at line 88 of file RCOutput_Tap.h.

◆ _period

uint16_t ap::RCOutput_Tap::_period[MAX_MOTORS]
private

Definition at line 96 of file RCOutput_Tap.h.

◆ _uart_fd

int ap::RCOutput_Tap::_uart_fd = -1
private

Definition at line 100 of file RCOutput_Tap.h.

Referenced by _uart_set_speed().

◆ MAX_MOTORS

const uint8_t ap::RCOutput_Tap::MAX_MOTORS = 4
staticprivate

Definition at line 81 of file RCOutput_Tap.h.


The documentation for this class was generated from the following files: