Инициализация карты памяти microSD с помощью интерфейса SPI

Вы можете использовать проект, который я создал, чтобы преобразовать лямбду в javascript: lambda2js

При использовании только свойств и индексаторов результат должен быть именно тем, что вам нужно.

Пример 1: путь с одним свойством

Expression> expr = x => x.Phone;
var js = expr.CompileToJavascript();
// returns: Phone

Пример 2: путь, содержащий индексатор строкового словаря

Expression> expr = x => x.PhonesByName["Miguel"];
var js = expr.CompileToJavascript();
// returns: PhonesByName["Miguel"]

Пример 3: сложный путь, содержащий индексаторы и несколько уровней

Expression> expr = x => x.SomeProp["Miguel"].Subprop[0].A.B;
var js = expr.CompileToJavascript();
// returns: SomeProp["Miguel"].Subprop[0].A.B

17
задан Peter Mortensen 29 September 2012 в 02:50
поделиться

2 ответа

Кажется, я нашел проблему. Когда я вычисляю правильный CRC для CMD55 и отправляю его вместо фиктивного CRC, команда принимается (результат 0x01). Если вы посмотрите спецификацию физического уровня в разделе 7.2.2, там явно сказано, что:

Интерфейс SPI инициализируется в режиме CRC OFF по умолчанию. (кроме команд CMD0 и CMD8).

Похоже, это не относится к этой серии карт Transcend, что нарушает спецификацию. Также в случае ошибки CRC ответ должен быть 0x09 вместо 0x05. Я пытался явно отключить проверку CRC с помощью CMD59, но это не так. Кажется, это помогает.

=> Вычисление правильного CRC для (всех?) команд заставляет карту работать.

Я обращаюсь в службу поддержки Transcend по этому поводу. Если я узнаю что-нибудь полезное, то вы узнаете здесь.

Обратите внимание, что раньше я использовал другие карты Transcend на 2 ГБ, но они были сделаны на Тайване, а новая - в Корее (и, похоже, это карта Samsung ( MMAGR02GUDCA)).

16
ответ дан 30 November 2019 в 13:34
поделиться

Это нормально, вероятно, внутренний зарядный насос, используемый для создания напряжения стирания, требует больше времени, чем обычно, чтобы быть готовым ... вы должны настаивать на комбинации CMD55 + ACMD41, пока не завершится инициализация.

CMD58 также может помочь вам проверить, правильно ли вы подаете напряжение (иногда в розетках возникают проблемы с контактами).

1
ответ дан 30 November 2019 в 13:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: