He estado leyendo en la memoria flash STM32F429 (versión de 2MB). En el manual de referencia del STM32F4 me di cuenta que tenía dos bancos de memoria y admite lectura mientras escribe (RWW), lo que significa que puede leer desde un banco de memoria mientras escribe en el otro.
Mi aplicación tiene restricciones de tiempo real y quiero saber cuál es la peor situación posible.
Digamos que la aplicación del microcontrolador se está ejecutando desde el banco de memoria 1 y quiero escribir / borrar datos en el banco de memoria 2. Tengo algunas preguntas después de leer las secciones 3.4 a 3.6 en el manual de referencia.
-
¿Existe alguna situación en la que la aplicación del microcontrolador en el banco de memoria 1 deba escribir en flash durante la ejecución normal del código?
-
En caso afirmativo a la pregunta 1. ¿Significa esto que la ejecución del código de la aplicación tiene que esperar hasta, por ejemplo? ¿Se realiza un borrado de sector en el banco de memoria 2 ya que no es compatible con la escritura mientras se escribe? ¿O es de alguna manera darle prioridad al banco de memoria 1 si es necesario el acceso de escritura / borrado?