| modm API documentation
    | 
#include <modm/driver/storage/at24mac402.hpp>
 
  
 | Public Member Functions | |
| At24Mac402 (uint8_t address=0x50) | |
| void | setAddress (uint8_t address) | 
| bool | readMac (std::span< uint8_t, 6 > data) | 
| bool | readUniqueId (std::span< uint8_t, 16 > data) | 
| bool | ping () | 
| bool | writeByte (uint32_t address, uint8_t data) | 
| bool | write (uint32_t address, const uint8_t *data, std::size_t length) | 
| template<typename T > | |
| bool | write (uint32_t address, const T &data) | 
| bool | readByte (uint32_t address, uint8_t &data) | 
| bool | read (uint32_t address, uint8_t *data, std::size_t length) | 
| template<typename T > | |
| bool | read (uint32_t address, T &data) | 
| Protected Member Functions | |
| void | attachConfigurationHandler (I2c::ConfigurationHandler handler) | 
| bool | isTransactionRunning () | 
| bool | read (uint16_t address, T &data) | 
| bool | read (uint8_t *buffer, std::size_t size) | 
| Starts a write transaction and waits until finished. | |
| bool | runTransaction () | 
| Starts our own transaction and waits until finished. | |
| bool | startTransaction () | 
| Starts the transaction with our own transaction object. | |
| bool | startTransaction (modm::I2cTransaction *transaction) | 
| Starts the transaction with a separate transaction object. | |
| bool | wasTransactionSuccessful () | 
| bool | write (const uint8_t *buffer, std::size_t size) | 
| Starts a write transaction and waits until finished. | |
| bool | writeRead (const uint8_t *writeBuffer, std::size_t writeSize, uint8_t *readBuffer, std::size_t readSize) | 
| Starts a write-read transaction and waits until finished. | |
| 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.
| 
 | 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.