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

#include <SoftSigReader.h>

Collaboration diagram for ChibiOS::SoftSigReader:
[legend]

Public Member Functions

bool attach_capture_timer (ICUDriver *icu_drv, icuchannel_t chan, uint8_t dma_stream, uint32_t dma_channel)
 
bool read (uint32_t &widths0, uint32_t &widths1)
 
bool set_bounce_buf_size (uint16_t buf_size)
 

Static Private Member Functions

static void _irq_handler (void *self, uint32_t flags)
 

Private Attributes

uint32_t * signal
 
uint8_t num_timer_channels
 
ObjectBuffer< uint32_t > sigbuf {MAX_SIGNAL_TRANSITIONS}
 
uint8_t enable_chan_mask
 
uint8_t max_pulse_width
 
const stm32_dma_stream_t * dma
 
ICUConfig icucfg
 
ICUDriver * _icu_drv = nullptr
 
uint16_t _bounce_buf_size = DEFAULT_BOUNCE_BUF_SIZE
 
bool need_swap
 

Detailed Description

Definition at line 29 of file SoftSigReader.h.

Member Function Documentation

◆ _irq_handler()

void SoftSigReader::_irq_handler ( void *  self,
uint32_t  flags 
)
staticprivate

Definition at line 90 of file SoftSigReader.cpp.

Referenced by attach_capture_timer().

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

◆ attach_capture_timer()

bool SoftSigReader::attach_capture_timer ( ICUDriver *  icu_drv,
icuchannel_t  chan,
uint8_t  dma_stream,
uint32_t  dma_channel 
)

Definition at line 28 of file SoftSigReader.cpp.

Referenced by ChibiOS::RCInput::init().

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

◆ read()

bool SoftSigReader::read ( uint32_t &  widths0,
uint32_t &  widths1 
)

Definition at line 101 of file SoftSigReader.cpp.

Referenced by ChibiOS::RCInput::_timer_tick().

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

◆ set_bounce_buf_size()

bool SoftSigReader::set_bounce_buf_size ( uint16_t  buf_size)

Definition at line 121 of file SoftSigReader.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _bounce_buf_size

uint16_t ChibiOS::SoftSigReader::_bounce_buf_size = DEFAULT_BOUNCE_BUF_SIZE
private

Definition at line 45 of file SoftSigReader.h.

Referenced by _irq_handler(), attach_capture_timer(), and set_bounce_buf_size().

◆ _icu_drv

ICUDriver* ChibiOS::SoftSigReader::_icu_drv = nullptr
private

Definition at line 44 of file SoftSigReader.h.

Referenced by attach_capture_timer().

◆ dma

const stm32_dma_stream_t* ChibiOS::SoftSigReader::dma
private

Definition at line 42 of file SoftSigReader.h.

Referenced by _irq_handler(), and attach_capture_timer().

◆ enable_chan_mask

uint8_t ChibiOS::SoftSigReader::enable_chan_mask
private

Definition at line 40 of file SoftSigReader.h.

◆ icucfg

ICUConfig ChibiOS::SoftSigReader::icucfg
private

Definition at line 43 of file SoftSigReader.h.

Referenced by attach_capture_timer().

◆ max_pulse_width

uint8_t ChibiOS::SoftSigReader::max_pulse_width
private

Definition at line 41 of file SoftSigReader.h.

◆ need_swap

bool ChibiOS::SoftSigReader::need_swap
private

Definition at line 46 of file SoftSigReader.h.

Referenced by attach_capture_timer(), and read().

◆ num_timer_channels

uint8_t ChibiOS::SoftSigReader::num_timer_channels
private

Definition at line 38 of file SoftSigReader.h.

◆ sigbuf

ObjectBuffer<uint32_t> ChibiOS::SoftSigReader::sigbuf {MAX_SIGNAL_TRANSITIONS}
private

Definition at line 39 of file SoftSigReader.h.

Referenced by _irq_handler(), and read().

◆ signal

uint32_t* ChibiOS::SoftSigReader::signal
private

Definition at line 36 of file SoftSigReader.h.

Referenced by _irq_handler(), attach_capture_timer(), and set_bounce_buf_size().


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