Перейти к содержанию
    

Проблема со слотом SD карты.

Всем привет.

Подскажите, может у кого такое было. В общем, есть устройство которое принимает данные с SD карты.

Карта вставляется в слот.

 

И вот какая беда.

 

В приложении две фотографии, 1 и 2.

1 - нажал пальцем

2 - в совободном состоянии.

Если сравнить фотки, то видно, немного, ход слота. Т.е. при нажатии на слот имеется небольшой ход, порядка 0.2 мм.

 

Если прижать слот чутка пальцем, то флешка отлично читается и проблемы никакой нет. В свободном состоянии, вообще ничего не происходит. Как была ошибка, так и есть.

Я подумал, что будет, если уголок зафиксирую капелькой термоклея. Зафиксировал...ничего не поменялось. В смысле не работало.

Клей оторвал и опять придал пальцем - работает.

Решил прижать не пальцем, а диэлектриком (пластиковым стержнем) - тоже не работает.

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

Прижал отвёрткой, ухватившись за жало отвёртки - работает.

 

Во время проведения экспериментов, касался рукой только панель, на которой крепятся дисплей, слот sd и клавиатура. Корпуса принтера не касался.

 

Хочу попробовать припаять проводок от слота карты и примотать его к панели

 

Вот такие вот наблюдения. Из-за чего такое может происходить ? Как можно решить проблему ?

 

 

post-64402-1455456837_thumb.jpg

post-64402-1455456843_thumb.jpg

 

Всем спасибо за советы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из-за чего такое может происходить ? Как можно решить проблему ?

Например, из-за нарушения целостности сигналов. Попробуйте взяться рукой за шлейф, а не разъем - эффект будет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Например, из-за нарушения целостности сигналов. Попробуйте взяться рукой за шлейф, а не разъем - эффект будет?

 

 

попробовал. эффекта никакого

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошо, а какой длины шлейф, и как распределены по нему сигналы?

 

 

Длина шлейфа 180 мм. Сигналы идут в таком же порядке, как и пины со слота.

Пробовали запускать на частоте 1 МГц и 24 МГц, разницы никакой.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Длина шлейфа 180 мм. Сигналы идут в таком же порядке, как и пины со слота.

Попробуйте укоротить в качестве эксперимента.

Осциллографом тактовый сигнал непосредственно на разъеме не смотрели, в каком виде он доходит до карты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попробуйте укоротить в качестве эксперимента.

Осциллографом тактовый сигнал непосредственно на разъеме не смотрели, в каком виде он доходит до карты?

 

Пробовали укорачивать, ничего вообще не поменялось.

 

 

Сообщение от разработчика:

 

Если включить как есть (без надавливания), обмен с картой просто виснет (DMA чтение даже не стартует, и бесконечный цикл ожидания завершения обмена).

При заземлении слота картина меняется - обмен данными проходит, но считанные с карты данные неверные.

Причем это не зависит от частоты (от 24 до 1 МГц).

При этом обмен командами идёт без проблем.

 

 

 

Все сигналы, включая клок, до слота SD доходят без искажений,

завалов фронтов и уровней нет, нормальные прямоугольные сигналы.

Это если "землю" осциллографа прицепить прямо на слоте.

Если "землю" прицепить на самой плате, и мерять сигналы на слоте,

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

Изменено пользователем Иванов Сергей

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пробовали укорачивать, ничего вообще не поменялось.

Укорачивали до какой длины ? И приняты ли хоть какие-то меры к согласованию (особенно это касается тактировки).

Очевидно, что проблема вовсе не в механическом контакте. Вероятнее всего - результат "звона".

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Укорачивали до какой длины ? И приняты ли хоть какие-то меры к согласованию (особенно это касается тактировки).

Очевидно, что проблема вовсе не в механическом контакте. Вероятнее всего - результат "звона".

 

 

До 30 мм.

Про меры уточню.

А что такое "звон" ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, 30 mm должно бы работать.. "Звон" - это переотражения в несогласованной линии передачи. Самое простое - со стороны передатчика поставить резисторы 60..100 Ohm (зависит от кабеля и выходного сопротивления буферов, но не особенно критично). Между выходом и кабелем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, 30 mm должно бы работать.. .

 

Тоже так думали, а оно не работает. Вот и голову ломаем.

Изменено пользователем Иванов Сергей

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тоже так думали, а оно не работает. Вот и голову ломаем.

По какому интерфейсу подключена карта (SPI, SDIO)?

В статусном регистре должна быть указана ошибка, из-за которой нормальная работа не возможна.

Смотрели?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По какому интерфейсу подключена карта (SPI, SDIO)?

В статусном регистре должна быть указана ошибка, из-за которой нормальная работа не возможна.

Смотрели?

 

Интерфейс SDIO 4-битный.

Последняя команда, которая проходит - CMD17 (Read single block),

на неё приходит ответ 0x900. После чего мы заряжаем DMA, стартуем передачу в

контроллере SDIO, и ждём окончания транзакции.

Но не можем дождаться, так как в статустном регистре

мы видим ошибку STBITERR (Start bit not detected on all data signals in wide bus mode)

Процессор STM32F407

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интерфейс SDIO 4-битный.

Последняя команда, которая проходит - CMD17 (Read single block),

на неё приходит ответ 0x900. После чего мы заряжаем DMA, стартуем передачу в

контроллере SDIO, и ждём окончания транзакции.

Но не можем дождаться, так как в статустном регистре

мы видим ошибку STBITERR (Start bit not detected on all data signals in wide bus mode)

Процессор STM32F407

Ага. А схему показать можете? Подтяжка на линии данных присутствует?

Питание на карте в этот момент не проседает? Или уровень земли не подлетает?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...