APM:Libraries
|
#include <RCInput_115200.h>
Public Member Functions | |
RCInput_115200 (const char *device) | |
void | init () override |
void | _timer_tick (void) override |
void | set_device_path (const char *path) |
![]() | |
RCInput () | |
bool | new_input () |
uint8_t | num_channels () |
uint16_t | read (uint8_t ch) |
uint8_t | read (uint16_t *periods, uint8_t len) |
int16_t | get_rssi (void) override |
bool | set_override (uint8_t channel, int16_t override) |
void | clear_overrides () |
bool | add_dsm_input (const uint8_t *bytes, size_t nbytes) |
void | add_sbus_input (const uint8_t *bytes, size_t nbytes) |
bool | add_sumd_input (const uint8_t *bytes, size_t nbytes) |
bool | add_st24_input (const uint8_t *bytes, size_t nbytes) |
bool | add_srxl_input (const uint8_t *bytes, size_t nbytes) |
![]() | |
virtual void | teardown () |
virtual bool | rc_bind (int dsmMode) |
Private Types | |
enum | Decoders { DECODER_DSM =0, DECODER_ST24, DECODER_SUMD, DECODER_SRXL, DECODER_SYNC } |
Private Attributes | |
const char * | device_path |
int32_t | fd = -1 |
enum Decoders | decoder = DECODER_SYNC |
uint8_t | dsm_count |
uint8_t | st24_count |
uint32_t | last_input_ms |
Additional Inherited Members | |
![]() | |
static RCInput * | from (AP_HAL::RCInput *rcinput) |
![]() | |
void | _process_rc_pulse (uint16_t width_s0, uint16_t width_s1) |
void | _update_periods (uint16_t *periods, uint8_t len) |
void | _process_ppmsum_pulse (uint16_t width) |
void | _process_sbus_pulse (uint16_t width_s0, uint16_t width_s1) |
void | _process_dsm_pulse (uint16_t width_s0, uint16_t width_s1) |
![]() | |
std::atomic< unsigned int > | rc_input_count |
std::atomic< unsigned int > | last_rc_input_count |
uint16_t | _pwm_values [LINUX_RC_INPUT_NUM_CHANNELS] |
uint8_t | _num_channels |
uint16_t | _override [LINUX_RC_INPUT_NUM_CHANNELS] |
struct { | |
int8_t _channel_counter | |
uint16_t _pulse_capt [LINUX_RC_INPUT_NUM_CHANNELS] | |
} | ppm_state |
struct { | |
uint16_t bytes [25] | |
uint16_t bit_ofs | |
} | sbus_state |
struct { | |
uint16_t bytes [16] | |
uint16_t bit_ofs | |
} | dsm_state |
struct { | |
uint8_t frame [16] | |
uint8_t partial_frame_count | |
uint32_t last_input_ms | |
} | dsm |
struct { | |
uint8_t frame [25] | |
uint8_t partial_frame_count | |
uint32_t last_input_ms | |
} | sbus |
int16_t | _rssi = -1 |
Definition at line 26 of file RCInput_115200.h.
|
private |
Enumerator | |
---|---|
DECODER_DSM | |
DECODER_ST24 | |
DECODER_SUMD | |
DECODER_SRXL | |
DECODER_SYNC |
Definition at line 39 of file RCInput_115200.h.
|
inline |
|
overridevirtual |
Reimplemented from Linux::RCInput.
Definition at line 71 of file RCInput_115200.cpp.
Referenced by RCInput_115200().
|
overridevirtual |
Call init from the platform hal instance init, so that both the type of the RCInput implementation and init argument (e.g. ISRRegistry) are known to the programmer. (It's too difficult to describe this dependency in the C++ type system.)
Reimplemented from Linux::RCInput.
Definition at line 39 of file RCInput_115200.cpp.
Referenced by RCInput_115200().
void RCInput_115200::set_device_path | ( | const char * | path | ) |
Definition at line 66 of file RCInput_115200.cpp.
Referenced by RCInput_115200().
|
private |
Definition at line 46 of file RCInput_115200.h.
Referenced by _timer_tick().
|
private |
Definition at line 36 of file RCInput_115200.h.
Referenced by init(), and set_device_path().
|
private |
Definition at line 48 of file RCInput_115200.h.
Referenced by _timer_tick().
|
private |
Definition at line 37 of file RCInput_115200.h.
Referenced by _timer_tick(), and init().
|
private |
Definition at line 50 of file RCInput_115200.h.
Referenced by _timer_tick().
|
private |
Definition at line 49 of file RCInput_115200.h.
Referenced by _timer_tick().