Tengo un PSRAM manejado por un STM32. Una de las opciones de temporización para el STM32 es el giro del bus FSMC_BusTurnAroundDuration
. El ARM manual de referencia (consulte la página 1250) dice:
Estos bits están escritos por software para insertar el retardo de respuesta del bus después de un acceso de lectura solo desde la memoria flash NOR multiplexada para evitar contención del bus si el controlador necesita para conducir direcciones en el databus para la próxima transacción en paralelo.
Ahora mi PSRAM no es NOR Flash
y no multiplexa las líneas de datos y direcciones, por lo que asumí que FSMC_BusTurnAroundDuration
es un "no importa" en mi caso. Sin embargo, cuando configuro
FSMC_BusTurnAroundDuration = 0;
entonces el ARM se bloquea. Cualquier valor entre 1 y 15 no bloquea el BRAZO.
¿Por qué la duración de la vuelta del autobús es relevante para mi PSRAM?