|
cursada_mc2
Base de control de temperatura para EDU-CIAA-NXP
|
Driver de acceso a la EEPROM interna del LPC4337. More...
#include <stdbool.h>#include <stdint.h>
Include dependency graph for eeprom_driver.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Macros | |
| #define | DRIVER_EEPROM_REGION_SIZE 256U |
| Tamano reservado para datos persistentes de la aplicacion. | |
Functions | |
| bool | driver_eeprom_init (void) |
| Inicializa el periferico EEPROM. | |
| bool | driver_eeprom_read (void *destino, uint32_t cantidad) |
| Lee un bloque desde la region reservada de EEPROM. | |
| bool | driver_eeprom_write (const void *origen, uint32_t cantidad) |
| Escribe un bloque dentro de la region reservada de EEPROM. | |
| #define DRIVER_EEPROM_REGION_SIZE 256U |
Definition at line 13 of file eeprom_driver.h.
| bool driver_eeprom_init | ( | void | ) |
| true | Si la EEPROM quedo lista para usarse. |
| false | Si no pudo inicializarse. |
Definition at line 39 of file eeprom_driver.c.
References eeprom_driver_inicializado_.
Referenced by app_init().
| bool driver_eeprom_read | ( | void * | destino, |
| uint32_t | cantidad | ||
| ) |
| destino | Buffer de destino. |
| cantidad | Cantidad de bytes a leer. |
| true | Si la lectura fue valida. |
| false | Si el rango o los punteros son invalidos. |
Definition at line 47 of file eeprom_driver.c.
References DRIVER_EEPROM_REGION_SIZE, and eeprom_driver_inicializado_.
Referenced by parametros_init().
| bool driver_eeprom_write | ( | const void * | origen, |
| uint32_t | cantidad | ||
| ) |
| origen | Buffer de origen. |
| cantidad | Cantidad de bytes a escribir. |
| true | Si la escritura fue valida. |
| false | Si el rango o los punteros son invalidos. |
Cada pagina se trata con una estrategia read-modify-write.
Primero se copia la pagina actual desde EEPROM, luego se parchea en RAM solo el rango solicitado y finalmente se reprograma la pagina completa solo si hubo cambios reales. Esto evita escrituras innecesarias aunque la API publica siempre escriba el bloque completo reservado para la app.
Definition at line 65 of file eeprom_driver.c.
References driver_eeprom_programar_pagina(), DRIVER_EEPROM_REGION_SIZE, and eeprom_driver_inicializado_.
Referenced by parametros_guardar().