He estado tratando de hacer que mi adaptador de tarjeta SD funcione con SPI, y he avanzado bastante desde que comencé.
He estado siguiendo allong con esta respuesta muy útil . Sin embargo, al enviar CMD8, obtengo 0x01 seguido de 32 bits de 0x00.
Por lo que puedo decir, debería recuperar algunos datos, de acuerdo con la respuesta vinculada, debería recibir
respuesta: 0x01, seguido de echo de arg, en este caso 0x000001AA
Sin embargo, me parece que:
0x010000000000
Empiezo enviando CMD0, que devuelve 0x010000000000
y me dice que la tarjeta está en estado IDLE, pero no hay errores.
Luego envío CMD8:
0x48000001AA87
donde 87
es el CRC7 del comando + el argumento seguido de 1 bit (que es el bit de "parada" requerido) y donde 48
es el número de comando con el líder 01
para iniciar un comando ( los bits de inicio requeridos)
He adjuntado capturas de pantalla de los comandos que estoy enviando, y los datos que estoy recibiendo en formato binario y hexadecimal.
Cualquier ayuda es muy apreciada!