реклама на сайте
подробности

 
 
> Не могу прочесть ММС
b-volkov
сообщение Jan 23 2008, 16:57
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 137
Регистрация: 10-04-07
Из: г. Троицк
Пользователь №: 26 907



Карта ММС+ Transcend 1гиг и LPC2148. Инициализация проходит, содержимое CSD и CID читается, а вот прочитать блок данных не могу. На команду чтения блока (17) приходит нормальный ответ (0), а данные так и не идут, т.е. постоянно принимается 0хFF сколько не читай. Пробовал читать статус (ком 13), ошибок нет (r2=0). Пробовал задавать разную длину блока и читать по разным адресам – бесполезно. Писать пока не пробовал.
Может быть, у этих карт есть какие-то хитрости с обменом? К сожалению, маленькой карты под рукой нет.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Sawik
сообщение Jan 24 2008, 11:52
Сообщение #2





Группа: Новичок
Сообщений: 1
Регистрация: 24-01-08
Пользователь №: 34 382



Маялся недавно с такой же проблемой. Вроде все хорошо а в ответ только $FF. Оказалось все просто:
1 - Перестал пользоваться командой 17 до лучших времен, начал использовать команду 18
2 - Послал команду 18 с адресом $00000000, читаю карту пока не придет в ответе $FE.
3 - Только после этого ответа карта начинает передавать данные
4 - Важно! Адрес $00000000 - это физический 0, как правило здесь начинаются скрытые сектора.
5 - Чтобы найти логический 0 - с которого и начинают располагаться Boot Sector, FAT1-FAT...n, Root Directory и т.д. Я считываю по одному байту с каждого сектора, пока не получу $EB. Это и есть Boot Sector. Далее используешь это смещение для вычисления всех адресов


Не уточнил - это все при условии нормального сброса и инициализации, но я думаю это и так понятно
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 07:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01341 секунд с 7
ELECTRONIX ©2004-2016