APM:Libraries
Classes | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
F4Light::PPM_parser Class Reference

#include <RC_PPM_parser.h>

Inheritance diagram for F4Light::PPM_parser:
[legend]
Collaboration diagram for F4Light::PPM_parser:
[legend]

Classes

struct  DSM
 
struct  DSM_State
 
struct  SBUS
 
struct  SbusState
 

Public Member Functions

 PPM_parser ()
 
void init (uint8_t ch)
 
- Public Member Functions inherited from F4Light::_parser
 _parser ()
 
virtual ~_parser ()
 
virtual void late_init (uint8_t b)
 
virtual uint64_t get_last_signal () const
 
virtual uint64_t get_last_change () const
 
virtual uint8_t get_valid_channels () const
 
virtual uint16_t get_val (uint8_t ch) const
 
virtual bool bind (int dsmMode) const
 

Protected Member Functions

void parse_pulses (void)
 
void start_ioc (void)
 

Private Member Functions

void rxIntRC (uint16_t value0, uint16_t value1, bool state)
 
bool _process_ppmsum_pulse (uint16_t value)
 
void _process_dsm_pulse (uint16_t width_s0, uint16_t width_s1)
 
void _process_sbus_pulse (uint16_t width_s0, uint16_t width_s1, struct PPM_parser::SbusState &state)
 
void add_dsm_input ()
 
void add_sbus_input ()
 

Private Attributes

uint8_t _ch
 
Pulse last_pulse
 
uint8_t channel_ctr
 
bool _got_ppm
 
bool _got_dsm
 
bool _was_ppm
 
bool _was_dsm
 
struct F4Light::PPM_parser::DSM dsm
 
struct F4Light::PPM_parser::SBUS sbus
 
struct SbusState sbus_state [2]
 
struct F4Light::PPM_parser::DSM_State dsm_state
 
enum BOARD_RC_MODE _rc_mode
 
uint8_t _ioc
 

Additional Inherited Members

- Protected Attributes inherited from F4Light::_parser
volatile uint64_t _last_signal
 
volatile uint16_t _val [F4Light_RC_INPUT_NUM_CHANNELS]
 
uint64_t _last_change
 
volatile uint8_t _channels
 

Detailed Description

Definition at line 9 of file RC_PPM_parser.h.

Constructor & Destructor Documentation

◆ PPM_parser()

F4Light::PPM_parser::PPM_parser ( )
inline

Definition at line 11 of file RC_PPM_parser.h.

Here is the call graph for this function:

Member Function Documentation

◆ _process_dsm_pulse()

void PPM_parser::_process_dsm_pulse ( uint16_t  width_s0,
uint16_t  width_s1 
)
private

Definition at line 243 of file RC_PPM_parser.cpp.

Referenced by rxIntRC().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _process_ppmsum_pulse()

bool PPM_parser::_process_ppmsum_pulse ( uint16_t  value)
private

Definition at line 103 of file RC_PPM_parser.cpp.

Referenced by rxIntRC().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _process_sbus_pulse()

void PPM_parser::_process_sbus_pulse ( uint16_t  width_s0,
uint16_t  width_s1,
struct PPM_parser::SbusState state 
)
private

Definition at line 140 of file RC_PPM_parser.cpp.

Referenced by rxIntRC().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_dsm_input()

void F4Light::PPM_parser::add_dsm_input ( )
private

◆ add_sbus_input()

void F4Light::PPM_parser::add_sbus_input ( )
private

◆ init()

void PPM_parser::init ( uint8_t  ch)
virtual

Implements F4Light::_parser.

Definition at line 28 of file RC_PPM_parser.cpp.

Referenced by PPM_parser().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ parse_pulses()

void PPM_parser::parse_pulses ( void  )
protected

Definition at line 56 of file RC_PPM_parser.cpp.

Referenced by init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ rxIntRC()

void PPM_parser::rxIntRC ( uint16_t  value0,
uint16_t  value1,
bool  state 
)
private

Definition at line 72 of file RC_PPM_parser.cpp.

Referenced by parse_pulses().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ start_ioc()

void PPM_parser::start_ioc ( void  )
protected

Definition at line 52 of file RC_PPM_parser.cpp.

Referenced by init().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ _ch

uint8_t F4Light::PPM_parser::_ch
private

Definition at line 44 of file RC_PPM_parser.h.

Referenced by _process_dsm_pulse(), init(), and parse_pulses().

◆ _got_dsm

bool F4Light::PPM_parser::_got_dsm
private

Definition at line 50 of file RC_PPM_parser.h.

Referenced by _process_dsm_pulse(), _process_sbus_pulse(), and PPM_parser().

◆ _got_ppm

bool F4Light::PPM_parser::_got_ppm
private

Definition at line 49 of file RC_PPM_parser.h.

Referenced by _process_ppmsum_pulse(), and PPM_parser().

◆ _ioc

uint8_t F4Light::PPM_parser::_ioc
private

Definition at line 81 of file RC_PPM_parser.h.

Referenced by init(), and start_ioc().

◆ _rc_mode

enum BOARD_RC_MODE F4Light::PPM_parser::_rc_mode
private

Definition at line 79 of file RC_PPM_parser.h.

Referenced by _process_dsm_pulse(), _process_sbus_pulse(), PPM_parser(), and rxIntRC().

◆ _was_dsm

bool F4Light::PPM_parser::_was_dsm
private

Definition at line 53 of file RC_PPM_parser.h.

Referenced by PPM_parser().

◆ _was_ppm

bool F4Light::PPM_parser::_was_ppm
private

Definition at line 52 of file RC_PPM_parser.h.

Referenced by PPM_parser().

◆ channel_ctr

uint8_t F4Light::PPM_parser::channel_ctr
private

Definition at line 47 of file RC_PPM_parser.h.

Referenced by _process_ppmsum_pulse(), and init().

◆ dsm

struct F4Light::PPM_parser::DSM F4Light::PPM_parser::dsm
private

◆ dsm_state

struct F4Light::PPM_parser::DSM_State F4Light::PPM_parser::dsm_state
private

Referenced by _process_dsm_pulse().

◆ last_pulse

Pulse F4Light::PPM_parser::last_pulse
private

Definition at line 46 of file RC_PPM_parser.h.

Referenced by init(), and parse_pulses().

◆ sbus

struct F4Light::PPM_parser::SBUS F4Light::PPM_parser::sbus
private

◆ sbus_state

struct SbusState F4Light::PPM_parser::sbus_state[2]
private

Definition at line 71 of file RC_PPM_parser.h.

Referenced by init(), and rxIntRC().


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