modm API documentation
|
#include <modm/driver/storage/at24mac402.hpp>
Public Member Functions | |
At24Mac402 (uint8_t address=0x50) | |
void | setAddress (uint8_t address) |
modm::ResumableResult< bool > | readMac (std::span< uint8_t, 6 > data) |
modm::ResumableResult< bool > | readUniqueId (std::span< uint8_t, 16 > data) |
modm::ResumableResult< bool > | ping () |
modm::ResumableResult< bool > | writeByte (uint32_t address, uint8_t data) |
modm::ResumableResult< bool > | write (uint32_t address, const uint8_t *data, std::size_t length) |
template<typename T > | |
modm::ResumableResult< bool > | write (uint32_t address, const T &data) |
modm::ResumableResult< bool > | readByte (uint32_t address, uint8_t &data) |
modm::ResumableResult< bool > | read (uint32_t address, uint8_t *data, std::size_t length) |
template<typename T > | |
modm::ResumableResult< bool > | read (uint32_t address, T &data) |
Protected Member Functions | |
void | attachConfigurationHandler (I2c::ConfigurationHandler handler) |
modm::ResumableResult< ReturnType > resumable | function (...) |
int8_t | getResumableDepth () const |
bool | isResumableRunning () const |
bool | isTransactionRunning () |
modm::ResumableResult< bool > | read (uint16_t address, T &data) |
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 | |
i2c_eeprom::detail::DataTransmissionAdapter< 2 > | transaction |
AT24MAC402 I2C EEPROM
2 kBit EEPROM with pre-programmed 48 bit MAC address, 128 bit unique id and 8 bit address pointer. The device address can be configured from 0x50 to 0x57 with 3 address input lines.
modm::At24Mac402< I2cMaster >::At24Mac402 | ( | uint8_t | address = 0x50 | ) |
address | i2c data base address (0b1010xxx) |
|
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 |
void modm::At24Mac402< I2cMaster >::setAddress | ( | uint8_t | address | ) |
Set I2C data base address (0b1010xxx). The upper 4 bits will always be forced to 0b1010.
|
inheritedinlineprotected |
true
when transaction did not return an error.