Paso 1: el controlador SDIO controla la tarjeta SD: la tarjeta SD está encendida (6)

Este artículo explica los pasos para encender la tarjeta SD:

 

El host debe alimentar la tarjeta para que el voltaje alcance Vdd_min dentro de los 250 ms, y comenzar a proporcionar al menos 74 relojes SD a la tarjeta SD mientras se mantiene alta la línea CMD. Si está en modo SPI, CS debería permanecer alto durante 74 ciclos de reloj.

• Después del encendido (incluida la inserción en caliente, es decir, la inserción de la tarjeta mientras el bus está en funcionamiento), la tarjeta SD pasa al estado inactivo. Para el host SD, no se requiere CMD0. Si es un maestro SPI, CMD0 es el primer comando para enviar la tarjeta al modo SPI.

• En la versión 2.00 de la especificación de capa física, CMD8 se agregó recientemente para admitir múltiples rangos de voltaje para verificar si la tarjeta admite el voltaje de la fuente de alimentación. El host de la versión 2.00 debería emitir CMD8 y verificar el voltaje antes de que se inicialice la tarjeta. Los hosts que no admiten CMD8 deberían

Proporciona un rango de alto voltaje.

• ACMD41 es un comando síncrono que se usa para negociar el rango de voltaje de operación y sondear hasta que excedan la secuencia de arranque. Si hay varias tarjetas conectadas al sistema host, el host debe verificar si todas las tarjetas cumplen con el voltaje de la fuente de alimentación. De lo contrario, el anfitrión debe elegir uno

Cardar e inicializar.

 

Proceso de descripción de encendido:

  1. Después del encendido, retrase 74 relojes para asegurarse de que el voltaje alcance el voltaje de suministro maestro del bus y luego envíe el comando CMD0 de restablecimiento parcial para ingresar al estado inactivo .
  2. Enviar el comando CMD8 . Este comando es nuevo, que se utiliza para distinguir SD tarjeta de 0 , sólo el 0 y después de la tarjeta está soportada CMD8 comando, MMC tarjetas y V1.x tarjeta no está soportada por el comando. Configure el bit VHS para indicar a la tarjeta SD la fuente de alimentación del host y deje que la tarjeta SD conozca el rango de la fuente de alimentación del host.

Se recomienda usar "10101010b" en "comprobar patrón"

Aquí usamos el parámetro 0X1AA, que le dice a la tarjeta SD que la fuente de alimentación del host está entre 2.7 ~ 3.6V. Si la tarjeta SD admite CMD8 y admite este rango de voltaje, la parte del parámetro se devolverá al host a través de la respuesta CMD8 (R7) Si CMD8 no es compatible, o este rango de voltaje no es compatible, no hay respuesta.

 

El formato del comando Cmd8 es el siguiente:

 

 

 

CMD8

[31:12] Bits reservados
[11: 8] tensión de alimentación (VHS)
[7: 0] patrón de verificación

R7

SEND_IF_COND

Bits reservados , establecido en 0 .

Este comando se utiliza para distinguir la SD tarjeta 2.0 , sólo el 2.0 y más tarde sólo admiten tarjetas CMD8 comando, MMC tarjetas y V1.x tarjeta no es compatible con el comando.

Configure el bit VHS para indicar a la tarjeta SD la fuente de alimentación del host y deje que la tarjeta SD conozca el rango de la fuente de alimentación del host.

 

El formato del comando R7 es el siguiente:

 

  1. Envíe el comando ACMD41 para confirmar aún más el rango de voltaje de la tarjeta SD y confirmar si es una tarjeta SDHC .

ACMD41

 

bcr

 

[31] bit reservado
[30] HCS (OCR [30])
[29:24] bits reservados
[23: 0] Ventana de voltaje V DD (OCR [23: 0])

 

R1

 

SD_SEND_OP_COND

 

Envíe información de soporte de capacidad de host (hcs) y solicite a la tarjeta de acceso que envíe su contenido de registro de estado de operación (ocr) en la respuesta de la línea cmd.

El bit reservado debe establecerse en "0".

 

 

 

El contenido del registro OCR es una respuesta a ACMD41.

 

 

 

 

 

 

 

 

 

 

 

La primera imagen es un paso simple, la segunda imagen se detalla.

 

 

105 artículos originales publicados · Me gusta 30 · Visitas 160,000+

Supongo que te gusta

Origin blog.csdn.net/happygrilclh/article/details/102606840
Recomendado
Clasificación