modm API documentation
|
#include <modm/driver/inertial/itg3200.hpp>
Classes | |
struct | Data |
Public Typedefs | |
typedef Configuration< Power_t, ClockSource,(Bit2|Bit1|Bit0) > | ClockSource_t |
Public Types | |
enum | LowPassFilter : uint8_t |
enum | Interrupt : uint8_t |
The bit masks of the INT_CFG register. | |
enum | Status : uint8_t |
The bit masks of the INT_STATUS register. | |
enum | Power : uint8_t |
The bit masks of the PWR_MGM register. | |
enum | ClockSource : uint8_t |
Public Member Functions | |
MODM_FLAGS8 (Interrupt) | |
MODM_FLAGS8 (Status) | |
MODM_FLAGS8 (Power) | |
Itg3200 (Data &data, uint8_t address=0x68) | |
Constructor, requires an itg3200::Data object, sets address to default of 0x68 (AD0 low: 0x69) | |
modm::ResumableResult< bool > | configure (LowPassFilter filter=LowPassFilter::Hz20, uint8_t divider=0) |
modm::ResumableResult< bool > | readRotation () |
reads the temperature and gyro registers and buffer the results | |
modm::ResumableResult< bool > | setLowPassFilter (LowPassFilter filter) |
modm::ResumableResult< bool > | setSampleRateDivider (uint8_t divider) |
modm::ResumableResult< bool > | updateInterrupt (Interrupt_t setMask, Interrupt_t clearMask=Interrupt_t (0xf5)) |
modm::ResumableResult< bool > | updatePower (Power_t setMask, Power_t clearMask=Power_t (0xff)) |
LowPassFilter | getLowPassFilter () |
Interrupt_t | getInterrupt () |
Power_t | getPower () |
Status_t | getStatus () |
modm::ResumableResult< bool > | readStatus () |
Data & | getData () |
Get the data object for this sensor. | |
void | attachConfigurationHandler (I2c::ConfigurationHandler handler) |
modm::ResumableResult< bool > | ping () |
void | setAddress (uint8_t address) |
Protected Member Functions | |
modm::ResumableResult< ReturnType > resumable | function (...) |
int8_t | getResumableDepth () const |
bool | isResumableRunning () const |
bool | isTransactionRunning () |
modm::ResumableResult< bool > | runTransaction () |
Starts our own transaction and waits until finished. | |
bool | startRead (uint8_t *buffer, std::size_t size) |
Configures the transaction with a read operation and starts it. | |
bool | startTransaction () |
Starts the transaction with our own transaction object. | |
bool | startTransaction (modm::I2cTransaction *transaction) |
Starts the transaction with a seperate transaction object. | |
bool | startWrite (const uint8_t *buffer, std::size_t size) |
Configures the transaction with a write operation and starts it. | |
bool | startWriteRead (const uint8_t *writeBuffer, std::size_t writeSize, uint8_t *readBuffer, std::size_t readSize) |
Configures the transaction with a write/read operation and starts it. | |
void | stopResumable () |
Force all resumable functions to stop running at the current nesting level. | |
bool | wasTransactionSuccessful () |
Protected Attributes | |
I2cWriteReadTransaction | transaction |
|
inheritedinline |
Attaches a configuration handler, which is called before a transaction, whenever the configuration has to be changed.
|
inherited |
Run the resumable function.
You need to implement this method in you subclass yourself.
NestingError
if still running, <=NestingError
if it has finished.
|
inheritedinline |
|
inheritedinline |
true
if a resumable function is running at the current nesting level, else false
|
inheritedinlineprotected |
true
when transaction is busy.
|
inheritedinline |
true | device responds to address |
false | no device with address found |
|
inheritedinline |
Sets a new address of the slave device.
address | the slave address not yet shifted left (address < 128). |
|
inheritedinlineprotected |
true
when transaction did not return an error.