avr_eeprom(3avr) avr-libc avr_eeprom(3avr)

avr_eeprom - <avr/eeprom.h>: EEPROM handling


#define EEMEM __attribute__((section('.eeprom')))
#define eeprom_is_ready()
#define eeprom_busy_wait() do {} while (!eeprom_is_ready())


uint8_t eeprom_read_byte (const uint8_t *__p) __ATTR_PURE__
uint16_t eeprom_read_word (const uint16_t *__p) __ATTR_PURE__
uint32_t eeprom_read_dword (const uint32_t *__p) __ATTR_PURE__
float eeprom_read_float (const float *__p) __ATTR_PURE__
void eeprom_read_block (void *__dst, const void *__src, size_t __n)
void eeprom_write_byte (uint8_t *__p, uint8_t __value)
void eeprom_write_word (uint16_t *__p, uint16_t __value)
void eeprom_write_dword (uint32_t *__p, uint32_t __value)
void eeprom_write_float (float *__p, float __value)
void eeprom_write_block (const void *__src, void *__dst, size_t __n)
void eeprom_update_byte (uint8_t *__p, uint8_t __value)
void eeprom_update_word (uint16_t *__p, uint16_t __value)
void eeprom_update_dword (uint32_t *__p, uint32_t __value)
void eeprom_update_float (float *__p, float __value)
void eeprom_update_block (const void *__src, void *__dst, size_t __n)


#define _EEPUT(addr, val) eeprom_write_byte ((uint8_t *)(addr), (uint8_t)(val))
#define __EEPUT(addr, val) eeprom_write_byte ((uint8_t *)(addr), (uint8_t)(val))
#define _EEGET(var, addr) (var) = eeprom_read_byte ((const uint8_t *)(addr))
#define __EEGET(var, addr) (var) = eeprom_read_byte ((const uint8_t *)(addr))

#include <avr/eeprom.h> 

This header file declares the interface to some simple library routines suitable for handling the data EEPROM contained in the AVR microcontrollers. The implementation uses a simple polled mode interface. Applications that require interrupt-controlled EEPROM access to ensure that no time will be wasted in spinloops will have to deploy their own implementation.

Notes:

Read a byte from EEPROM. Compatibility define for IAR C.

Write a byte to EEPROM. Compatibility define for IAR C.

Read a byte from EEPROM. Compatibility define for IAR C.

Write a byte to EEPROM. Compatibility define for IAR C.

Attribute expression causing a variable to be allocated within the .eeprom section.

Loops until the eeprom is no longer busy.

Returns

Nothing.

Returns

1 if EEPROM is ready for a new read/write operation, 0 if not.

Read a block of __n bytes from EEPROM address __src to SRAM __dst.

uint8_t eeprom_read_byte (const uint8_t * __p)

Read one byte from EEPROM address __p.

uint32_t eeprom_read_dword (const uint32_t * __p)

Read one 32-bit double word (little endian) from EEPROM address __p.

Read one float value (little endian) from EEPROM address __p.

uint16_t eeprom_read_word (const uint16_t * __p)

Read one 16-bit word (little endian) from EEPROM address __p.

Update a block of __n bytes to EEPROM address __dst from __src.

Note

The argument order is mismatch with common functions like strcpy().

Update a byte __value to EEPROM address __p.

Update a 32-bit double word __value to EEPROM address __p.

Update a float __value to EEPROM address __p.

Update a word __value to EEPROM address __p.

Write a block of __n bytes to EEPROM address __dst from __src.

Note

The argument order is mismatch with common functions like strcpy().

Write a byte __value to EEPROM address __p.

Write a 32-bit double word __value to EEPROM address __p.

Write a float __value to EEPROM address __p.

Write a word __value to EEPROM address __p.

Generated automatically by Doxygen for avr-libc from the source code.

Fri Nov 24 2023 23:59:10 Version 2.0.0