Например TDA7294

Форум РадиоКот • Просмотр темы - Помогите разобраться с SDIO на физическом уровне.
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 14:27:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Помогите разобраться с SDIO на физическом уровне.
СообщениеДобавлено: Сб мар 25, 2017 16:42:52 
Встал на лапы

Зарегистрирован: Пн июн 13, 2016 10:41:52
Сообщений: 129
Рейтинг сообщения: 0
Здравствуйте. Помогите разобраться с SDIO. Ни для кого не секрет, что сейчас полно информации о том, как прикрутить SD карту к аппаратному SDIO на старших линейках STM32. Но.. То-то и оно, что поработав с аппаратным SDIO столкнулся с кучей багов и ошибок. Во первых, определяет не все карточки, во вторых - не со всеми карточками работает корректно. А если с FatFS, то бывают такие ошибки и тормоза, что и в страшном сне не приснится. Короче, что касается аппаратного SDIO - нафиг.!
Ну тут решил разобраться на более низком уровне, как же всё там организовано. В общем, решил с SDIO разобраться на уровне "ногодрыга". С SPI всё понятно, а вот по родному режиму SD карты в плане тайминга и т.д. информации маловато. Нашел организацию тактирования.
Тут вроде всё понятно. Тоже самое что и в SPI mode 0:
Изображение
Известно, что частота на этапе инициализации низкая и составляет порядка 400кГц. Также и то, что команда и ответ в режиме SD передаются по одной линии (CMD)
Изображение

Для того чтобы разобраться, решил посмотреть, что же происходит на линиях SCLK и CMD при работе аппаратного SDIO с заведомо рабочей картой.
И вот что интересно. Карточка хорошо определяется. Но я не могу никак понять, почему на осциллографе я не вижу ответов на команды (конкретно на CMD8). Ведь используется одна и та же линия - CMD. Клоки команд я хорошо наблюдаю. А вот ответов не вижу. Ну а аппаратный SDIO говорит что ответ получен и определяет карту. :shock:
Посылаю CMD0. Ответа на неё быть не должно. Затем CMD8.. Вот как идет команда - хорошо на экране видно. А ответа (должен прийти R7) - нет (после команды линия CMD в чистом нуле)!!! Ну а МК мне говорит в это время - что всё ОК, и ответ пришел. Но я его НЕ ВИЖУ и не видел! А он должен быть. И две "1"-цы в ответе точно есть.
Изображение
Может ответы приходят по какой-то другой линии?? Я не понимаю. Почему я не вижу ответ на CMD8 на экране осциллографа, а только команду. :dont_know: Причем команды корректные. Наблюдаю стартовый бит, сам аргумент, контрольную сумму, стоповый бит.. А вот после этого линия CMD на экране пуста... Но ответ каким-то образом приходит. :dont_know:

Просьба.Давайте только по теме, без советов - "А чем вас SPI не устраивает?" и т.д. Спасибо.

Добавлено after 1 minute 20 seconds:
Просто хохма.. Ещё выяснилось вот что. При вставленной карте при получении ответа на команду CMD8 зажигается светодиод (сделал для контроля). Если карты нет, индикация соответственно не работает, т.к. контроллер ответа от карты не получает. Карта то отсутствует.

Но вот.. Прикол.. Если карточку вынуть, и коснуться щупом осциллографа к линии CMD, и запустить программу.. То.. Вуаля, светодиод загорается, мол карта (а её там нет) прислала ответ. Я просто в ШОКе!!! :shock:

Так позвольте выяснить, это как так работает аппаратный SDIO в STM??
Не знаю как, но в очередной раз убедился - однозначно в печь. :kill:


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y