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

#include <AnalogIn.h>

Inheritance diagram for ChibiOS::AnalogIn:
[legend]
Collaboration diagram for ChibiOS::AnalogIn:
[legend]

Classes

struct  pin_info
 

Public Member Functions

 AnalogIn ()
 
void init () override
 
AP_HAL::AnalogSourcechannel (int16_t pin) override
 
void _timer_tick (void)
 
float board_voltage (void) override
 
float servorail_voltage (void) override
 
uint16_t power_status_flags (void) override
 

Static Public Member Functions

static void adccallback (ADCDriver *adcp, adcsample_t *buffer, size_t n)
 

Private Member Functions

void read_adc (uint32_t *val)
 
void update_power_flags (void)
 

Private Attributes

int _battery_handle
 
int _servorail_handle
 
int _system_power_handle
 
uint64_t _battery_timestamp
 
uint64_t _servorail_timestamp
 
ChibiOS::AnalogSource_channels [ANALOG_MAX_CHANNELS]
 
uint32_t _last_run
 
float _board_voltage
 
float _servorail_voltage
 
uint16_t _power_flags
 
ADCConversionGroup adcgrpcfg
 

Static Private Attributes

static const pin_info pin_config [] = HAL_ANALOG_PINS
 
static adcsample_t samples []
 
static uint32_t sample_sum []
 
static uint32_t sample_count
 

Friends

class AnalogSource
 

Detailed Description

Definition at line 55 of file AnalogIn.h.

Constructor & Destructor Documentation

◆ AnalogIn()

AnalogIn::AnalogIn ( )

Definition at line 173 of file AnalogIn.cpp.

Member Function Documentation

◆ _timer_tick()

void AnalogIn::_timer_tick ( void  )

Definition at line 249 of file AnalogIn.cpp.

Here is the call graph for this function:

◆ adccallback()

void AnalogIn::adccallback ( ADCDriver *  adcp,
adcsample_t *  buffer,
size_t  n 
)
static

Definition at line 183 of file AnalogIn.cpp.

Referenced by init().

Here is the caller graph for this function:

◆ board_voltage()

float ChibiOS::AnalogIn::board_voltage ( void  )
inlineoverridevirtual

Implements AP_HAL::AnalogIn.

Definition at line 63 of file AnalogIn.h.

◆ channel()

AP_HAL::AnalogSource * AnalogIn::channel ( int16_t  pin)
overridevirtual

Implements AP_HAL::AnalogIn.

Definition at line 308 of file AnalogIn.cpp.

Referenced by _timer_tick().

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

◆ init()

void AnalogIn::init ( void  )
overridevirtual

Implements AP_HAL::AnalogIn.

Definition at line 199 of file AnalogIn.cpp.

Here is the call graph for this function:

◆ power_status_flags()

uint16_t ChibiOS::AnalogIn::power_status_flags ( void  )
inlineoverridevirtual

Reimplemented from AP_HAL::AnalogIn.

Definition at line 65 of file AnalogIn.h.

◆ read_adc()

void AnalogIn::read_adc ( uint32_t *  val)
private

Definition at line 235 of file AnalogIn.cpp.

Referenced by _timer_tick().

Here is the caller graph for this function:

◆ servorail_voltage()

float ChibiOS::AnalogIn::servorail_voltage ( void  )
inlineoverridevirtual

Reimplemented from AP_HAL::AnalogIn.

Definition at line 64 of file AnalogIn.h.

◆ update_power_flags()

void AnalogIn::update_power_flags ( void  )
private

Definition at line 323 of file AnalogIn.cpp.

Referenced by _timer_tick().

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

Friends And Related Function Documentation

◆ AnalogSource

friend class AnalogSource
friend

Definition at line 57 of file AnalogIn.h.

Referenced by channel().

Member Data Documentation

◆ _battery_handle

int ChibiOS::AnalogIn::_battery_handle
private

Definition at line 72 of file AnalogIn.h.

◆ _battery_timestamp

uint64_t ChibiOS::AnalogIn::_battery_timestamp
private

Definition at line 75 of file AnalogIn.h.

◆ _board_voltage

float ChibiOS::AnalogIn::_board_voltage
private

Definition at line 80 of file AnalogIn.h.

Referenced by _timer_tick().

◆ _channels

ChibiOS::AnalogSource* ChibiOS::AnalogIn::_channels[ANALOG_MAX_CHANNELS]
private

Definition at line 77 of file AnalogIn.h.

Referenced by _timer_tick(), and channel().

◆ _last_run

uint32_t ChibiOS::AnalogIn::_last_run
private

Definition at line 79 of file AnalogIn.h.

Referenced by _timer_tick().

◆ _power_flags

uint16_t ChibiOS::AnalogIn::_power_flags
private

Definition at line 82 of file AnalogIn.h.

Referenced by update_power_flags().

◆ _servorail_handle

int ChibiOS::AnalogIn::_servorail_handle
private

Definition at line 73 of file AnalogIn.h.

◆ _servorail_timestamp

uint64_t ChibiOS::AnalogIn::_servorail_timestamp
private

Definition at line 76 of file AnalogIn.h.

◆ _servorail_voltage

float ChibiOS::AnalogIn::_servorail_voltage
private

Definition at line 81 of file AnalogIn.h.

Referenced by _timer_tick().

◆ _system_power_handle

int ChibiOS::AnalogIn::_system_power_handle
private

Definition at line 74 of file AnalogIn.h.

◆ adcgrpcfg

ADCConversionGroup ChibiOS::AnalogIn::adcgrpcfg
private

Definition at line 83 of file AnalogIn.h.

Referenced by init().

◆ pin_config

const AnalogIn::pin_info AnalogIn::pin_config = HAL_ANALOG_PINS
staticprivate

Definition at line 89 of file AnalogIn.h.

Referenced by _timer_tick(), and init().

◆ sample_count

uint32_t AnalogIn::sample_count
staticprivate

Definition at line 93 of file AnalogIn.h.

Referenced by adccallback(), and read_adc().

◆ sample_sum

uint32_t AnalogIn::sample_sum
staticprivate

Definition at line 92 of file AnalogIn.h.

Referenced by adccallback(), and read_adc().

◆ samples

adcsample_t AnalogIn::samples
staticprivate

Definition at line 91 of file AnalogIn.h.

Referenced by adccallback(), and init().


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