nvm.h File Reference
Non-Volatile Memory Wear-Leveling driver API.
- Version
- 5.5.0
License
(C) Copyright 2014 Silicon Labs, www.silabs.com
This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
Definition in file
nvm.h
.
#include <stdint.h>
#include <stdbool.h>
#include "
em_device.h
"
#include "
nvm_hal.h
"
#include "nvm_config.h"
#include "
ecode.h
"
Macros |
|
#define | ECODE_EMDRV_NVM_ADDR_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000001) |
Invalid address.
|
|
#define | ECODE_EMDRV_NVM_ALIGNMENT_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000002) |
Invalid data alignment.
|
|
#define | ECODE_EMDRV_NVM_DATA_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000003) |
Invalid input data or format.
|
|
#define | ECODE_EMDRV_NVM_ERROR ( ECODE_EMDRV_NVM_BASE | 0x00000007) |
General error.
|
|
#define | ECODE_EMDRV_NVM_NO_PAGES_AVAILABLE ( ECODE_EMDRV_NVM_BASE | 0x00000005) |
Initialization didn't find any pages available to allocate.
|
|
#define | ECODE_EMDRV_NVM_OK ( ECODE_OK ) |
Success return value.
|
|
#define | ECODE_EMDRV_NVM_PAGE_INVALID ( ECODE_EMDRV_NVM_BASE | 0x00000006) |
Could not find the page specified.
|
|
#define | ECODE_EMDRV_NVM_WRITE_LOCK ( ECODE_EMDRV_NVM_BASE | 0x00000004) |
A write is currently in progress.
|
|
#define | NVM_ERASE_RETAINCOUNT 0xffffffffUL |
#define | NVM_PAGE_TERMINATION { NULL, 0, (NVM_Object_Ids) 0 } |
#define | NVM_READ_ALL_CMD 0xff |
#define | NVM_WRITE_ALL_CMD 0xff |
#define | NVM_WRITE_NONE_CMD 0xfe |
Functions |
|
Ecode_t | NVM_Erase (uint32_t eraseCount) |
Erase the entire allocated NVM area.
|
|
Ecode_t | NVM_Init (NVM_Config_t const *nvmConfig) |
Initialize the NVM manager.
|
|
Ecode_t | NVM_Read (uint16_t pageId, uint8_t objectId) |
Read an object or an entire page.
|
|
Ecode_t | NVM_Write (uint16_t pageId, uint8_t objectId) |
Write an object or a page.
|
|