|
REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
|
#include <EEPROM25AA02.h>


Classes | |
| class | Status |
Public Member Functions | |
| EEPROM25AA02 (bus::addr_t address, uint8_t alt_function_idx) | |
| Status | read_status_register () const |
| bool | write_status_register (const Status status) const |
| size_t | read (size_t address, size_t length, uint8_t *buffer) const |
| Reads the specified number of bytes starting at address into the specified buffer. Returns number of read bytes on success, 0 on failure. | |
| bool | read8 (size_t address, uint8_t *data_out) const |
| Reads one byte at the specified address into the provided pointer. Returns 0 on failure. | |
| bool | read16 (size_t address, uint16_t *data_out) const |
| Reads two bytes starting at the specified address into the provided pointer. Returns 0 on failure. | |
| bool | read32 (size_t address, uint32_t *data_out) const |
| Reads four bytes starting at the specified address into the provided pointer. Returns 0 on failure. | |
| size_t | write (size_t address, size_t length, const uint8_t *buffer) const |
| Writes the specified number of bytes starting at address into the specified buffer. Returns number of written bytes on success, 0 on failure. | |
| bool | write8 (size_t address, uint8_t data) const |
| Writes one byte at the specified address Returns 0 on failure. | |
| bool | write16 (size_t address, uint16_t data) const |
| Writes two bytes starting at the specified address Returns 0 on failure. | |
| bool | write32 (size_t address, uint32_t data) const |
| Writes four bytes starting at the specified address Returns 0 on failure. | |
Public Member Functions inherited from functions::DataFunction | |
| DataFunction (bus::addr_t address, uint8_t alt_function_idx, const SPISettings &spiSettings) | |
| void | begin_communication () const |
| void | end_communication () const |
| void | transfer (const void *mosi_buf, void *miso_buf, size_t count) const |
| uint8_t | transfer8 (uint8_t data_in) const |
| uint16_t | transfer16 (uint16_t data_in) const |
| uint32_t | transfer32 (uint32_t data_in) const |
Public Member Functions inherited from functions::Function | |
| Function (bus::addr_t address) | |
Static Public Attributes | |
| static const SPISettings | DEFAULT_SPI_SETTINGS {4'000'000, MSBFIRST, SPI_MODE0} |
| static constexpr uint8_t | ADDRESS_UUID = 0xF8 |
Protected Member Functions | |
| void | set_write_enable () const |
| void | unset_write_enable () const |
| bool | await_write_complete () const |
Static Protected Member Functions | |
| static constexpr bool | _is_address_valid (size_t address) |
Static Protected Member Functions inherited from functions::DataFunction | |
| static SPIClass & | get_raw_spi () |
Static Protected Attributes | |
| static constexpr uint8_t | COMMAND_READ = 0b0000'0011 |
| static constexpr uint8_t | COMMAND_READ_STATUS_REGISTER = 0b0000'0101 |
| static constexpr uint8_t | COMMAND_WRITE = 0b0000'0010 |
| static constexpr uint8_t | COMMAND_WRITE_STATUS_REGISTER = 0b0000'0001 |
| static constexpr uint8_t | COMMAND_WRITE_ENABLE = 0b0000'0110 |
| static constexpr uint8_t | COMMAND_WRITE_DISABLE = 0b0000'0100 |
| static constexpr uint8_t | ADRESS_MASK = 0x0f |
| static constexpr size_t | MAX_ADDRESS = 255 |
Additional Inherited Members | |
Public Attributes inherited from functions::DataFunction | |
| const SPISettings & | spi_settings |
Public Attributes inherited from functions::Function | |
| const bus::addr_t | address |
Protected Attributes inherited from functions::DataFunction | |
| bus::addr_t | alt_function_address |
| bool | use_csel = false |
Detailed Description
Definition at line 13 of file EEPROM25AA02.h.
Constructor & Destructor Documentation
◆ EEPROM25AA02()
|
inlineexplicit |
Definition at line 73 of file EEPROM25AA02.h.
References functions::Function::address, functions::DataFunction::DataFunction(), and DEFAULT_SPI_SETTINGS.
Referenced by metadata::MetadataEditor::MetadataEditor().
Member Function Documentation
◆ _is_address_valid()
|
inlinestaticconstexprprotected |
Definition at line 26 of file EEPROM25AA02.h.
References functions::Function::address, and MAX_ADDRESS.
◆ await_write_complete()
|
protected |
Definition at line 166 of file EEPROM25AA02.cpp.
References read_status_register().
Referenced by write(), write8(), and write_status_register().
◆ read()
| size_t functions::EEPROM25AA02::read | ( | size_t | address, |
| size_t | length, | ||
| uint8_t * | buffer ) const |
Reads the specified number of bytes starting at address into the specified buffer. Returns number of read bytes on success, 0 on failure.
Definition at line 23 of file EEPROM25AA02.cpp.
References _is_address_valid(), functions::Function::address, functions::DataFunction::begin_communication(), COMMAND_READ, functions::DataFunction::end_communication(), and functions::DataFunction::get_raw_spi().
Referenced by read16(), read32(), read8(), metadata::MetadataEditor::read_entity_classifier(), metadata::MetadataEditor::read_eui(), and write().
◆ read16()
| bool functions::EEPROM25AA02::read16 | ( | size_t | address, |
| uint16_t * | data_out ) const |
Reads two bytes starting at the specified address into the provided pointer. Returns 0 on failure.
Definition at line 48 of file EEPROM25AA02.cpp.
References functions::Function::address, and read().
◆ read32()
| bool functions::EEPROM25AA02::read32 | ( | size_t | address, |
| uint32_t * | data_out ) const |
Reads four bytes starting at the specified address into the provided pointer. Returns 0 on failure.
Definition at line 52 of file EEPROM25AA02.cpp.
References functions::Function::address, read(), and uint32_t.
◆ read8()
| bool functions::EEPROM25AA02::read8 | ( | size_t | address, |
| uint8_t * | data_out ) const |
Reads one byte at the specified address into the provided pointer. Returns 0 on failure.
Definition at line 44 of file EEPROM25AA02.cpp.
References functions::Function::address, and read().
Referenced by write8().
◆ read_status_register()
| functions::EEPROM25AA02::Status functions::EEPROM25AA02::read_status_register | ( | ) | const |
Definition at line 157 of file EEPROM25AA02.cpp.
References functions::DataFunction::begin_communication(), COMMAND_READ_STATUS_REGISTER, functions::DataFunction::end_communication(), and functions::DataFunction::get_raw_spi().
Referenced by await_write_complete(), write(), and write8().
◆ set_write_enable()
|
protected |
Definition at line 10 of file EEPROM25AA02.cpp.
References COMMAND_WRITE_ENABLE, and functions::DataFunction::transfer8().
Referenced by write(), write8(), and write_status_register().
◆ unset_write_enable()
|
protected |
Definition at line 16 of file EEPROM25AA02.cpp.
References COMMAND_WRITE_DISABLE, and functions::DataFunction::transfer8().
◆ write()
| size_t functions::EEPROM25AA02::write | ( | size_t | address, |
| size_t | length, | ||
| const uint8_t * | buffer ) const |
Writes the specified number of bytes starting at address into the specified buffer. Returns number of written bytes on success, 0 on failure.
Definition at line 56 of file EEPROM25AA02.cpp.
References _is_address_valid(), functions::Function::address, ADRESS_MASK, await_write_complete(), functions::DataFunction::begin_communication(), COMMAND_WRITE, functions::DataFunction::end_communication(), functions::DataFunction::get_raw_spi(), read(), read_status_register(), and set_write_enable().
Referenced by write16(), write32(), and metadata::MetadataEditor::write_entity_classifier().
◆ write16()
| bool functions::EEPROM25AA02::write16 | ( | size_t | address, |
| uint16_t | data ) const |
Writes two bytes starting at the specified address Returns 0 on failure.
Definition at line 145 of file EEPROM25AA02.cpp.
References functions::Function::address, and write().
◆ write32()
| bool functions::EEPROM25AA02::write32 | ( | size_t | address, |
| uint32_t | data ) const |
Writes four bytes starting at the specified address Returns 0 on failure.
Definition at line 151 of file EEPROM25AA02.cpp.
References functions::Function::address, uint32_t, and write().
◆ write8()
| bool functions::EEPROM25AA02::write8 | ( | size_t | address, |
| uint8_t | data ) const |
Writes one byte at the specified address Returns 0 on failure.
Definition at line 117 of file EEPROM25AA02.cpp.
References functions::Function::address, await_write_complete(), functions::DataFunction::begin_communication(), COMMAND_WRITE, functions::DataFunction::end_communication(), functions::DataFunction::get_raw_spi(), read8(), read_status_register(), and set_write_enable().
◆ write_status_register()
| bool functions::EEPROM25AA02::write_status_register | ( | const Status | status | ) | const |
Definition at line 178 of file EEPROM25AA02.cpp.
References await_write_complete(), functions::DataFunction::begin_communication(), COMMAND_WRITE_STATUS_REGISTER, functions::DataFunction::end_communication(), functions::DataFunction::get_raw_spi(), and set_write_enable().
Member Data Documentation
◆ ADDRESS_UUID
|
staticconstexpr |
Definition at line 30 of file EEPROM25AA02.h.
◆ ADRESS_MASK
|
staticconstexprprotected |
Definition at line 22 of file EEPROM25AA02.h.
Referenced by write().
◆ COMMAND_READ
|
staticconstexprprotected |
Definition at line 15 of file EEPROM25AA02.h.
Referenced by read().
◆ COMMAND_READ_STATUS_REGISTER
|
staticconstexprprotected |
Definition at line 16 of file EEPROM25AA02.h.
Referenced by read_status_register().
◆ COMMAND_WRITE
|
staticconstexprprotected |
Definition at line 17 of file EEPROM25AA02.h.
◆ COMMAND_WRITE_DISABLE
|
staticconstexprprotected |
Definition at line 20 of file EEPROM25AA02.h.
Referenced by unset_write_enable().
◆ COMMAND_WRITE_ENABLE
|
staticconstexprprotected |
Definition at line 19 of file EEPROM25AA02.h.
Referenced by set_write_enable().
◆ COMMAND_WRITE_STATUS_REGISTER
|
staticconstexprprotected |
Definition at line 18 of file EEPROM25AA02.h.
Referenced by write_status_register().
◆ DEFAULT_SPI_SETTINGS
|
static |
Definition at line 8 of file EEPROM25AA02.h.
Referenced by EEPROM25AA02().
◆ MAX_ADDRESS
|
staticconstexprprotected |
Definition at line 24 of file EEPROM25AA02.h.
Referenced by _is_address_valid().
The documentation for this class was generated from the following files:
- lib/hardware/src/chips/EEPROM25AA02.h
- lib/hardware/src/chips/EEPROM25AA02.cpp
Public Member Functions inherited from