FastArduino v1.10
C++ library to build fast but small Arduino/AVR projects
|
Asynchronous I2C Manager for ATmega architecture with status notification facility. More...
#include <fastarduino/i2c_handler_atmega.h>
Public Member Functions | |
template<uint8_t SIZE> | |
I2CAsyncStatusManager (typename PARENT::I2CCOMMAND(&buffer)[SIZE], STATUS_HOOK_ status_hook) | |
Create an asynchronous I2C Manager for ATmega MCUs. More... | |
Public Member Functions inherited from i2c::AbstractI2CAsyncManager< MODE_, POLICY_, HAS_STATUS_, STATUS_HOOK_, HAS_DEBUG_, DEBUG_HOOK_ > | |
void | begin () |
Prepare and enable the MCU for I2C transmission. More... | |
void | end () |
Disable MCU I2C transmission. More... | |
void | begin_ () |
Prepare and enable the MCU for I2C transmission. More... | |
void | end_ () |
Disable MCU I2C transmission. More... | |
Additional Inherited Members | |
Public Types inherited from i2c::AbstractI2CAsyncManager< MODE_, POLICY_, HAS_STATUS_, STATUS_HOOK_, HAS_DEBUG_, DEBUG_HOOK_ > | |
using | ABSTRACT_FUTURE = future::AbstractFuture |
The abstract base class of all futures to be defined for this I2C Manager. More... | |
template<typename OUT , typename IN > | |
using | FUTURE = future::Future< OUT, IN > |
The template base class of all futures to be defined for this I2C Manager. More... | |
using | I2CCOMMAND = I2CCommand< ABSTRACT_FUTURE > |
The type of I2CCommand to use in the buffer passed to the constructor of this AbstractI2CAsyncManager. More... | |
Asynchronous I2C Manager for ATmega architecture with status notification facility.
This class offers no support for dynamic proxies.
MODE_ | the I2C mode for this manager |
POLICY_ | the policy to use in case of an error during I2C transaction |
STATUS_HOOK_ | the type of the hook to be called. This can be a simple function pointer (of type I2C_STATUS_HOOK ) or a Functor class (or Functor class reference). Using a Functor class will generate smaller code. |
Definition at line 853 of file i2c_handler_atmega.h.
|
inlineexplicit |
Create an asynchronous I2C Manager for ATmega MCUs.
SIZE | the size of I2CCommand buffer that will be queued for asynchronous handling |
buffer | a buffer of SIZE I2CCommand items, that will be used to queue I2C command for asynchronous handling |
status_hook | the status hook function or functor that is called during I2C transaction execution. |
Definition at line 869 of file i2c_handler_atmega.h.