Показать сообщение отдельно
Старый 18.09.2007, 21:02   #1
ADL
Member
 
Аватар для ADL
 
Регистрация: 26.02.2007
Адрес: Новосибирск
Возраст: 49
Сообщений: 45
Вес репутации: 100/46
ADL will become famous soon enoughADL will become famous soon enough
Question Чтение SD карты

Помогите разовбраться с процедурой чтения SD карты.
Я использую режим SPI и делаю следующим образом:

CMD0 (с лог. 0 на CS)--> R1= 0x01 -->

-->CMD55-->ACMD41-->R1= 0x00?--Да-->CMD18 c нулевым аргументом
| |
|----<----------- Нет---|

Я так понимаю, что после того, как прочитан отклик R1 на команду CMD18 и считан байт 0xFE (что означает начало блока данных с указанным в аргументе CMD18 начальным адресом) должны последовать байты данных. В моём случае ожидается чтение блока BOOT. Но я вижу только нули. Читал карту при помощи WINHEX и знаю, что BOOT сектор начинается с символа 0xEB. Ставлю в маску фильтра начала данных вместо 0xFE этот самый 0xEB и вижу начало BOOTa. Но до того, как это происходит "можно сходить покурить". Получается, что какие-то проблемы с адресом?
ADL вне форума   Ответить с цитированием