Struct avr_hal_generic::eeprom::Eeprom
source · pub struct Eeprom<H, EEPROM> { /* private fields */ }
Implementations§
source§impl<H, EEPROM> Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
impl<H, EEPROM> Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
pub const CAPACITY: u16 = EEPROM::CAPACITY
pub fn new(p: EEPROM) -> Self
pub fn capacity(&self) -> u16
pub fn read_byte(&self, offset: u16) -> u8
pub fn write_byte(&mut self, offset: u16, data: u8)
pub fn erase_byte(&mut self, offset: u16)
pub fn read(&self, offset: u16, buf: &mut [u8]) -> Result<(), OutOfBoundsError>
pub fn write(&mut self, offset: u16, buf: &[u8]) -> Result<(), OutOfBoundsError>
pub fn erase(&mut self, from: u16, to: u16) -> Result<(), OutOfBoundsError>
Trait Implementations§
source§impl<H, EEPROM> NorFlash for Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
impl<H, EEPROM> NorFlash for Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
source§const WRITE_SIZE: usize = 1usize
const WRITE_SIZE: usize = 1usize
The minumum number of bytes the storage peripheral can write
source§const ERASE_SIZE: usize = 1usize
const ERASE_SIZE: usize = 1usize
The minumum number of bytes the storage peripheral can erase
source§fn erase(&mut self, from: u32, to: u32) -> Result<(), Self::Error>
fn erase(&mut self, from: u32, to: u32) -> Result<(), Self::Error>
Erase the given storage range, clearing all data within
[from..to]
.
The given range will contain all 1s afterwards. Read moresource§fn write(&mut self, offset: u32, bytes: &[u8]) -> Result<(), Self::Error>
fn write(&mut self, offset: u32, bytes: &[u8]) -> Result<(), Self::Error>
If power is lost during write, the contents of the written words are undefined,
but the rest of the page is guaranteed to be unchanged.
It is not allowed to write to the same word twice.
offset
and bytes.len()
must both be multiples of WRITE_SIZE
.source§impl<H, EEPROM> ReadNorFlash for Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
impl<H, EEPROM> ReadNorFlash for Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
impl<H, EEPROM> MultiwriteNorFlash for Eeprom<H, EEPROM>where
EEPROM: EepromOps<H>,
Auto Trait Implementations§
impl<H, EEPROM> Freeze for Eeprom<H, EEPROM>where
EEPROM: Freeze,
impl<H, EEPROM> RefUnwindSafe for Eeprom<H, EEPROM>where
EEPROM: RefUnwindSafe,
H: RefUnwindSafe,
impl<H, EEPROM> Send for Eeprom<H, EEPROM>
impl<H, EEPROM> Sync for Eeprom<H, EEPROM>
impl<H, EEPROM> Unpin for Eeprom<H, EEPROM>
impl<H, EEPROM> UnwindSafe for Eeprom<H, EEPROM>where
EEPROM: UnwindSafe,
H: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more