|
APM:Libraries
|
#include <I2CDevice.h>
Public Member Functions | |
| I2CDevice (uint8_t bus, uint8_t address, uint32_t bus_clock, bool use_smbus, uint32_t timeout_ms) | |
| ~I2CDevice () | |
| void | set_address (uint8_t address) override |
| void | set_retries (uint8_t retries) override |
| bool | set_speed (enum Device::Speed speed) override |
| bool | transfer (const uint8_t *send, uint32_t send_len, uint8_t *recv, uint32_t recv_len) override |
| bool | read_registers_multiple (uint8_t first_reg, uint8_t *recv, uint32_t recv_len, uint8_t times) override |
| AP_HAL::Device::PeriodicHandle | register_periodic_callback (uint32_t period_usec, AP_HAL::Device::PeriodicCb) override |
| bool | adjust_periodic_callback (AP_HAL::Device::PeriodicHandle h, uint32_t period_usec) override |
| AP_HAL::Semaphore * | get_semaphore () override |
| void | set_split_transfers (bool set) override |
Public Member Functions inherited from AP_HAL::I2CDevice | |
| I2CDevice () | |
| virtual bool | set_speed (Device::Speed speed) override=0 |
| virtual Device::PeriodicHandle | register_periodic_callback (uint32_t period_usec, Device::PeriodicCb) override=0 |
Public Member Functions inherited from AP_HAL::Device | |
| FUNCTOR_TYPEDEF (PeriodicCb, void) | |
| Device (enum BusType type) | |
| enum BusType | bus_type (void) const |
| uint8_t | bus_num (void) const |
| uint32_t | get_bus_id (void) const |
| uint8_t | get_bus_address (void) const |
| void | set_device_type (uint8_t devtype) |
| virtual | ~Device () |
| bool | read_registers (uint8_t first_reg, uint8_t *recv, uint32_t recv_len) |
| bool | write_register (uint8_t reg, uint8_t val, bool checked=false) |
| void | set_checked_register (uint8_t reg, uint8_t val) |
| bool | setup_checked_registers (uint8_t num_regs, uint8_t frequency=10) |
| bool | check_next_register (void) |
| bool | read (uint8_t *recv, uint32_t recv_len) |
| virtual PeriodicHandle | register_periodic_callback (uint32_t period_usec, PeriodicCb)=0 |
| virtual bool | unregister_callback (PeriodicHandle h) |
| virtual void | register_completion_callback (AP_HAL::MemberProc proc) |
| virtual void | register_completion_callback (AP_HAL::Proc proc) |
| virtual bool | set_chip_select (bool set) |
| void | set_read_flag (uint8_t flag) |
| uint32_t | get_bus_id_devtype (uint8_t devtype) |
Static Public Member Functions | |
| static I2CDevice * | from (AP_HAL::I2CDevice *dev) |
Static Public Member Functions inherited from AP_HAL::Device | |
| static uint32_t | make_bus_id (enum BusType bus_type, uint8_t bus, uint8_t address, uint8_t devtype) |
| static uint32_t | change_bus_id (uint32_t old_id, uint8_t devtype) |
Private Member Functions | |
| bool | _transfer (const uint8_t *send, uint32_t send_len, uint8_t *recv, uint32_t recv_len) |
Private Attributes | |
| I2CBus & | bus |
| uint8_t | _retries |
| uint8_t | _address |
| char * | pname |
| bool | _split_transfers |
| bool | _use_smbus |
| uint32_t | _timeout_ms |
Additional Inherited Members | |
Public Types inherited from AP_HAL::Device | |
| enum | BusType { BUS_TYPE_UNKNOWN = 0, BUS_TYPE_I2C = 1, BUS_TYPE_SPI = 2, BUS_TYPE_UAVCAN = 3 } |
| enum | Speed { SPEED_HIGH, SPEED_LOW } |
| typedef void * | PeriodicHandle |
Protected Member Functions inherited from AP_HAL::Device | |
| void | set_device_address (uint8_t address) |
| void | set_device_bus (uint8_t bus) |
Protected Attributes inherited from AP_HAL::Device | |
| uint8_t | _read_flag = 0 |
| union DeviceId | _bus_id |
Definition at line 50 of file I2CDevice.h.
| I2CDevice::I2CDevice | ( | uint8_t | bus, |
| uint8_t | address, | ||
| uint32_t | bus_clock, | ||
| bool | use_smbus, | ||
| uint32_t | timeout_ms | ||
| ) |
|
virtual |
Reimplemented from AP_HAL::I2CDevice.
Definition at line 151 of file I2CDevice.cpp.
|
private |
Definition at line 238 of file I2CDevice.cpp.
Referenced by transfer().
|
overridevirtual |
Implements AP_HAL::I2CDevice.
Definition at line 301 of file I2CDevice.cpp.
|
inlinestatic |
Definition at line 52 of file I2CDevice.h.
|
inlineoverridevirtual |
Implements AP_HAL::I2CDevice.
Definition at line 83 of file I2CDevice.h.
|
overridevirtual |
Implements AP_HAL::I2CDevice.
Definition at line 282 of file I2CDevice.cpp.
|
override |
|
inlineoverridevirtual |
Reimplemented from AP_HAL::Device.
Definition at line 61 of file I2CDevice.h.
|
inlineoverridevirtual |
Reimplemented from AP_HAL::Device.
Definition at line 64 of file I2CDevice.h.
|
inlineoverride |
|
inlineoverridevirtual |
Reimplemented from AP_HAL::I2CDevice.
Definition at line 88 of file I2CDevice.h.
|
overridevirtual |
Implements AP_HAL::I2CDevice.
Definition at line 184 of file I2CDevice.cpp.
|
private |
Definition at line 99 of file I2CDevice.h.
Referenced by _transfer(), and ~I2CDevice().
|
private |
Definition at line 98 of file I2CDevice.h.
Referenced by _transfer().
|
private |
Definition at line 101 of file I2CDevice.h.
Referenced by transfer().
|
private |
Definition at line 103 of file I2CDevice.h.
Referenced by _transfer().
|
private |
Definition at line 102 of file I2CDevice.h.
Referenced by transfer().
|
private |
Definition at line 93 of file I2CDevice.h.
Referenced by _transfer(), adjust_periodic_callback(), I2CDevice(), register_periodic_callback(), transfer(), and ~I2CDevice().
|
private |
Definition at line 100 of file I2CDevice.h.
Referenced by I2CDevice(), and ~I2CDevice().
1.8.13