| modm API documentation
    | 
#include <modm/driver/storage/i2c_eeprom.hpp>
 
  
 | Public Member Functions | |
| I2cEeprom (uint8_t address=0x50) | |
| 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) | 
| Read byte. | |
| bool | read (uint32_t address, uint8_t *data, std::size_t length) | 
| Read block. | |
| template<typename T > | |
| bool | read (uint16_t address, T &data) | 
| void | attachConfigurationHandler (I2c::ConfigurationHandler handler) | 
| bool | ping () | 
| bool | read (uint8_t *buffer, std::size_t size) | 
| Starts a write transaction and waits until finished. | |
| void | setAddress (uint8_t address) | 
| 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 Member Functions | |
| bool | isTransactionRunning () | 
| 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 () | 
| Protected Attributes | |
| i2c_eeprom::detail::DataTransmissionAdapter< AddressBytes > | transaction | 
I2C Eeprom
Compatible with the 24C256 (ST) and 24FC1025 (Microchip) family and other I2C eeprom with an 16-bit address pointer. Base address for most 24xxyyyy eeproms is 0x50.
| 
 | 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 | 
| true | device responds to address | 
| false | no device with address found | 
| 
 | inline | 
| 
 | 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. | 
 | inline | 
| bool modm::I2cEeprom< I2cMaster, AddressBytes >::write | ( | uint32_t | address, | 
| const uint8_t * | data, | ||
| std::size_t | length | ||
| ) | 
Write block
| address | Address | 
| data | Data block | 
| length | Number of bytes to be written | 
true if the data could be written, false otherwise | 
 | inline | 
Write byte
| address | Address | 
| data | Data byte | 
true if the data could be written, false otherwise