SDHC SPI проблемы с записью - PullRequest
       65

SDHC SPI проблемы с записью

4 голосов
/ 15 января 2012

Я пытался создать интерфейс SD-карты с периферийным устройством LPC1766 SPI , и сейчас я застрял в проблеме, которую не смог найтиответ где угодно.

Проблема в том, что SDHC-карты не отвечают на команды записи и чтения, как ожидалось.

Все отлично работает при инициализации, которая была основана на потоковой диаграмме Чана и в приложении NXPнота.Я могу различать версии карт, читать OCR, CID, CSD и определять их размеры.

После этого шага я начинаю записывать отдельные блоки каждую секунду и считывать их обратно, чтобы проверить целостность данных.На карте Kingston SDHC 4 ГБ класса 4 я могу отправить первую команду записи, но на второй карта даже не отвечает (0x00 или 0x01) на CMD24.С картой памяти SanDisk 4 ГБ класса 4 результаты разные, карта отвечает на каждую команду, но при чтении данных я получаю только нули (я уверен, что я не пишу нули).Если я использую карты SDSC, все работает нормально.

Я знаю, что SDHC - это адреса с блоками, а не байты, и что мне нужно отправить ACMD41 с CCS для SDHC.Я также знаю, что тактовая частота не является проблемой (использование 400 кГц для запуска и затем 20 МГц для записи / чтения), потому что я просто включил проверку CRC, и все карты принимают команды и данные.Если я перестаю вычислять CRC, все карты отклоняют команды и данные.

1 Ответ

0 голосов
/ 21 марта 2013

Как вы подключаете свою SD-карту?В зависимости от режима / состояния для карты SD (HC) требуется внешний подтягивающий резистор.Без этого вы читаете ноль, так что это может быть вашей проблемой.

...