AT25040 Driver
API reference
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Enumerations | Functions
at25040.hpp File Reference

Header-only Microchip AT25010/020/040B SPI EEPROM driver. More...

#include "at25040_registers.hpp"
#include "at25040_spi_interface.hpp"
#include <cstddef>
#include <cstdint>

Go to the source code of this file.

Classes

class  at25040::Device< Spi >
 

Namespaces

namespace  at25040
 

Macros

#define HF_AT25040_VERSION_STRING   "1.0.0"
 

Enumerations

enum class  at25040::Status : uint8_t {
  at25040::Ok = 0 , at25040::Timeout = 1 , at25040::Absent = 2 , at25040::Busy = 3 ,
  at25040::Arg = 4
}
 
enum class  at25040::BlockProtect : uint8_t { at25040::None = 0 , at25040::UpperQuarter = 1 , at25040::UpperHalf = 2 , at25040::All = 3 }
 Block write protection level, BP1:BP0 in the status register (datasheet Table 6-4). More...
 

Functions

const char * at25040::GetAt25040DriverVersion () noexcept
 

Detailed Description

Header-only Microchip AT25010/020/040B SPI EEPROM driver.

SPI Mode 0, 8-bit frames. READ/WRITE use a 9-bit address with A8 in bit 3 of the opcode. Probe is hardware-absent safe: floating MISO (0xFF) and MOSI echo of RDSR (0x05) are treated as absent. Do not clock the part from static constructors — call Probe from an explicit attach / console / HIL path.

Macro Definition Documentation

◆ HF_AT25040_VERSION_STRING

#define HF_AT25040_VERSION_STRING   "1.0.0"