Xmega Application Note | |||||
Non Volatile Memory controller driver. More...
#include <compiler.h>
#include <ccp.h>
Go to the source code of this file.
Data Structures | |
struct | nvm_device_id |
Structure containing the device ID. More... | |
struct | nvm_device_serial |
Structure containing the device serial. More... | |
Defines | |
#define | IAR_FLASH_PTR __farflash |
Typedefs | |
typedef uint32_t | flash_addr_t |
Size of a flash page in bytes. | |
Functions | |
void | nvm_common_spm (uint32_t addr, uint8_t nvm_cmd) |
Perform SPM write. | |
void | nvm_eeprom_atomic_write_page (uint8_t page_addr) |
Erase and write bytes from page buffer into EEPROM. | |
void | nvm_eeprom_erase_all (void) |
Erase entire EEPROM memory. | |
void | nvm_eeprom_erase_bytes_in_all_pages (void) |
Erase bytes from all EEPROM pages. | |
void | nvm_eeprom_erase_bytes_in_page (uint8_t page_addr) |
Erase bytes from EEPROM page. | |
void | nvm_eeprom_erase_page (uint8_t page_addr) |
Erase EEPROM page. | |
void | nvm_eeprom_fill_buffer_with_value (uint8_t value) |
Fill temporary EEPROM page buffer with value. | |
void | nvm_eeprom_flush_buffer (void) |
Flush temporary EEPROM page buffer. | |
void | nvm_eeprom_load_byte_to_buffer (uint8_t byte_addr, uint8_t value) |
Load single byte into temporary page buffer. | |
void | nvm_eeprom_load_page_to_buffer (const uint8_t *values) |
Load entire page into temporary EEPROM page buffer. | |
uint8_t | nvm_eeprom_read_byte (uint8_t page_addr, uint8_t byte_addr) |
Read one byte from EEPROM using IO mapping. | |
void | nvm_eeprom_split_write_page (uint8_t page_addr) |
Write (without erasing) EEPROM page. | |
void | nvm_eeprom_write_byte (uint8_t page_addr, uint8_t byte_addr, uint8_t value) |
Write one byte to EEPROM using IO mapping. | |
static void | nvm_exec (void) |
Non-Volatile Memory Execute Command. | |
static void | nvm_flash_atomic_write_app_page (flash_addr_t page_addr) |
Erase and write a page within the application section. | |
static void | nvm_flash_atomic_write_boot_page (flash_addr_t page_addr) |
Erase and write a page within the boot section. | |
static void | nvm_flash_erase_app (flash_addr_t page_addr) |
Erase entire application section. | |
static void | nvm_flash_erase_app_page (flash_addr_t page_addr) |
Erase a page within the application section. | |
static void | nvm_flash_erase_boot_page (flash_addr_t page_addr) |
Erase a page within the boot section. | |
static void | nvm_flash_erase_user_section (void) |
Erase the user calibration section page. | |
void | nvm_flash_flush_buffer (void) |
Flush flash page buffer. | |
void | nvm_flash_load_word_to_buffer (uint32_t word_addr, uint16_t data) |
Load word into flash page buffer. | |
static uint8_t | nvm_flash_read_byte (flash_addr_t addr) |
Load byte from flash memory. | |
static uint16_t | nvm_flash_read_word (flash_addr_t addr) |
Load word from flash memory. | |
static void | nvm_flash_split_write_app_page (flash_addr_t page_addr) |
Write a page within the application section. | |
static void | nvm_flash_split_write_boot_page (flash_addr_t page_addr) |
Write a page within the boot section. | |
static void | nvm_flash_write_user_page (void) |
Write the user calibration section page. | |
static void | nvm_issue_command (NVM_CMD_t nvm_command) |
Non-Volatile Memory Execute Specific Command. | |
uint8_t | nvm_read_byte_near (uint8_t nvm_cmd, uint8_t address) |
Read one byte using the LDI instruction. | |
static void | nvm_read_device_id (struct nvm_device_id *storage) |
Read the device id. | |
static uint8_t | nvm_read_device_rev (void) |
Read the device revision. | |
void | nvm_read_device_serial (struct nvm_device_serial *storage) |
Read the device serial. | |
static uint8_t | nvm_read_production_signature_row (uint8_t address) |
Get offset of calibration bytes in the production signature row. | |
static uint8_t | nvm_read_user_signature_row (uint8_t address) |
Read one byte from the user signature row. | |
static void | nvm_wait_until_ready (void) |
Wait for any NVM access to finish. |
Non Volatile Memory controller driver.
Copyright (C) 2010 Atmel Corporation. All rights reserved.
Definition in file nvm.h.
Generated on Fri Oct 22 12:15:25 2010 for AVR1300 Using the Xmega ADC by ![]() |