Здравствуйте уважаемые Господа!
Помогите пожалуйста решить проблему!
Существует проблема с картой microSD 1G. Старый хозяин карточки, забыл установленный пароль на карту. Хозяина нет (в России), карта с проблемой осталась.
Из документации следует, что снять пароль возможно используя CMD42, используя функцию Force Erase, поднимая 4-й бит вбайте данных, но получаются грабли.
Работаю я в SPI режиме. Пишу на Ase, для mega162. Пароль был установлен на мобильном (4-х битный режим очевидно).
Последовательность разблокировки следующая:
1:CMD0 ..CMD1..R1=0, все команды класса 0 и 7 работают. 2:CMD16-устанавливаю размер блока 1байт. 3: Выполняю функцию принудительное стирание CMD42(6A,00,00,00,00,FF) R=0, затем пакет из одного байта с выставленным битом (ERASE) FE,08 ответ 5, и busy причем беспробудный.
Последовательность CMD0 ..CMD1 не выводит из состояния busy. Только power off. После включения читаю статус=1 (карта блокирована). Команды другого класса не проходят ответ 4(неизвестная команда). Думал может WP как то влияет на пароль, в CSD нет ни одного поднятого бита. Может у кого есть практика с подобной проблемой.
Но я нашел одну сноску в доке: Application Note: After power on (in 1-bit mode), if the card is locked, the SD mode host shall issue CMD42 in 1-bit mode. If the card is locked in 4-bit mode, the SD mode host shall issue CMD42 in 4-bit mode.
Так ли это? Неужели только в 4-х битном режиме можно разблокировать? Может укого был положительный опыт? Помогите люди добрые.
|