spi flash (N25Q) bloquea el comando de lectura

0

Estoy usando CC2640 y N25Q128A (Memoria Flash NOR Serial de Micron). SPI está funcionando bien, los comandos de borrado y escritura están cambiando el registro de estado, por lo que la bandera de ocupado se eleva y espero hasta que esté claro.

El único problema al que me estoy enfrentando es el comando de lectura, cuando envío el comando de lectura con 3 bytes de dirección, la memoria aumenta el pin de miso y no se libera hasta que c # pin vuelva a subir.

Borré el registro de ReadLock y configuré el registro de WriteEnable, y ahora aquí estoy ... ¿preguntando por qué sucedió y cómo solucionar el problema?

    
pregunta Nati Unger

1 respuesta

2

El chip flash es un esclavo SPI, lo que significa que depende de usted, el maestro, proporcionar TODOS los pulsos de reloj, incluso cuando se lee desde el chip. Parece que ha detenido su reloj SPI después de enviar el comando de lectura y la dirección. Ese gran retraso antes de los 10 bytes de la sincronización (supongo que usted quería leer 10 bytes) no debería importar, porque no liberó la línea de habilitación, pero realmente no quiere tener esa gran brecha allí. .

La otra cosa es que el flash recién borrado contiene todos los 0xFF (bits altos). Si borras parte del chip y luego intentas leerlo, el pin MISO se mantendrá alto porque te está enviando muchos bytes de 0xFF.

Intente borrar un sector, escriba una cadena de prueba y luego intente leerlo nuevamente.

    
respondido por el William Brodie-Tyrrell

Lea otras preguntas en las etiquetas