quarta-feira, 7 de fevereiro de 2007

Leitor de SD/MMC: Testado com sucesso!!!

Fiz mais alguns testes, e os resultados foram positivos e animadores.

Eis abaixo os últimos bytes lidos do setor 1, onde fica a MBR. Detalhe nos dois últimos bytes, que são a assinatura da MBR.




Abaixo, a captura de imagem com os bytes recebidos pelo cartão.



Os byte são a resposta aos comandos, e significam:
INIT OK, mensagem escrita pelo programa, assim que o cartão aceitou o comando de entrar no modo SPI
00 Resposta (tipo R1) ao comando de leitura. Nenhum bit setado significa tudo ok.
FF FF FF Bytes enviados pelo cartão enquanto processave o comando de ler o setor (busy)
FE "data token" emitido pelo cartão assim que está pronto para enviar dados. Os 512 dados subsequentes são os bytes de dados.

Apenas como comparação, a tela abaixo é de um comando que foi enviado com endereço de leitura ilegal. O bit 5 significa "illegal address".




A escrita ainda não foi não foi testada, como ela se baseia simplesmente na comunicação com o cartão, que já se provou plenamente funcional, não vejo problemas para que esta funcione. Além disso, até este ponto, os testes principais são de "hardware".

Mas, já dá pra afirmar que o hardware está 100% funcional, e que o leitor rápido de MMC/SD já é uma realidade para o MSX.


Próximos passos:
- Terminar o guia de montagem e instalação;
- Reescrever as rotinas de leitura/escrita, utilizando as instruções automáticas do Z80;
- Personalizar os drivers I2C para ler o módulo de relógio;
- Atualizar o cumprimento dos requisitos do projeto.

Nenhum comentário: