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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Проблема со слотом SD карты.
Иванов Сергей
сообщение Feb 14 2016, 13:38
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



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

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

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

Если прижать слот чутка пальцем, то флешка отлично читается и проблемы никакой нет. В свободном состоянии, вообще ничего не происходит. Как была ошибка, так и есть.
Я подумал, что будет, если уголок зафиксирую капелькой термоклея. Зафиксировал...ничего не поменялось. В смысле не работало.
Клей оторвал и опять придал пальцем - работает.
Решил прижать не пальцем, а диэлектриком (пластиковым стержнем) - тоже не работает.
Потом прижал отвёрткой, держать за ручку (пластиковую) - тоже не работает.
Прижал отвёрткой, ухватившись за жало отвёртки - работает.

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

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

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


Прикрепленное изображение

Прикрепленное изображение


Всем спасибо за советы.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 14 2016, 14:37
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Иванов Сергей @ Feb 14 2016, 16:38) *
Из-за чего такое может происходить ? Как можно решить проблему ?

Например, из-за нарушения целостности сигналов. Попробуйте взяться рукой за шлейф, а не разъем - эффект будет?
Go to the top of the page
 
+Quote Post
Иванов Сергей
сообщение Feb 14 2016, 14:45
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



Цитата(aaarrr @ Feb 14 2016, 18:37) *
Например, из-за нарушения целостности сигналов. Попробуйте взяться рукой за шлейф, а не разъем - эффект будет?



попробовал. эффекта никакого
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 14 2016, 15:18
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Хорошо, а какой длины шлейф, и как распределены по нему сигналы?
Go to the top of the page
 
+Quote Post
Иванов Сергей
сообщение Feb 14 2016, 16:47
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



Цитата(aaarrr @ Feb 14 2016, 19:18) *
Хорошо, а какой длины шлейф, и как распределены по нему сигналы?



Длина шлейфа 180 мм. Сигналы идут в таком же порядке, как и пины со слота.
Пробовали запускать на частоте 1 МГц и 24 МГц, разницы никакой.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 14 2016, 17:36
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Иванов Сергей @ Feb 14 2016, 19:47) *
Длина шлейфа 180 мм. Сигналы идут в таком же порядке, как и пины со слота.

Попробуйте укоротить в качестве эксперимента.
Осциллографом тактовый сигнал непосредственно на разъеме не смотрели, в каком виде он доходит до карты?
Go to the top of the page
 
+Quote Post
Иванов Сергей
сообщение Feb 14 2016, 17:41
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



Цитата(aaarrr @ Feb 14 2016, 21:36) *
Попробуйте укоротить в качестве эксперимента.
Осциллографом тактовый сигнал непосредственно на разъеме не смотрели, в каком виде он доходит до карты?


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


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

Цитата
Если включить как есть (без надавливания), обмен с картой просто виснет (DMA чтение даже не стартует, и бесконечный цикл ожидания завершения обмена).
При заземлении слота картина меняется - обмен данными проходит, но считанные с карты данные неверные.
Причем это не зависит от частоты (от 24 до 1 МГц).
При этом обмен командами идёт без проблем.



Все сигналы, включая клок, до слота SD доходят без искажений,
завалов фронтов и уровней нет, нормальные прямоугольные сигналы.
Это если "землю" осциллографа прицепить прямо на слоте.
Если "землю" прицепить на самой плате, и мерять сигналы на слоте,
искажения, безусловно, есть, что и должно быть на длинных проводах.


Сообщение отредактировал Иванов Сергей - Feb 14 2016, 17:59
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Feb 14 2016, 19:33
Сообщение #8


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(Иванов Сергей @ Feb 14 2016, 20:41) *
Пробовали укорачивать, ничего вообще не поменялось.

Укорачивали до какой длины ? И приняты ли хоть какие-то меры к согласованию (особенно это касается тактировки).
Очевидно, что проблема вовсе не в механическом контакте. Вероятнее всего - результат "звона".
Go to the top of the page
 
+Quote Post
Иванов Сергей
сообщение Feb 14 2016, 20:09
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



Цитата(rx3apf @ Feb 14 2016, 23:33) *
Укорачивали до какой длины ? И приняты ли хоть какие-то меры к согласованию (особенно это касается тактировки).
Очевидно, что проблема вовсе не в механическом контакте. Вероятнее всего - результат "звона".



До 30 мм.
Про меры уточню.
А что такое "звон" ?
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Feb 14 2016, 20:14
Сообщение #10


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Ну, 30 mm должно бы работать.. "Звон" - это переотражения в несогласованной линии передачи. Самое простое - со стороны передатчика поставить резисторы 60..100 Ohm (зависит от кабеля и выходного сопротивления буферов, но не особенно критично). Между выходом и кабелем.
Go to the top of the page
 
+Quote Post
Herz
сообщение Feb 14 2016, 22:10
Сообщение #11


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Тема переехала.
Go to the top of the page
 
+Quote Post
Иванов Сергей
сообщение Feb 15 2016, 05:06
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



Цитата(rx3apf @ Feb 14 2016, 23:14) *
Ну, 30 mm должно бы работать.. .


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

Сообщение отредактировал Иванов Сергей - Feb 15 2016, 05:08
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 15 2016, 06:30
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Иванов Сергей @ Feb 15 2016, 08:06) *
Тоже так думали, а оно не работает. Вот и голову ломаем.

По какому интерфейсу подключена карта (SPI, SDIO)?
В статусном регистре должна быть указана ошибка, из-за которой нормальная работа не возможна.
Смотрели?
Go to the top of the page
 
+Quote Post
Иванов Сергей
сообщение Feb 15 2016, 08:14
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 15-04-11
Пользователь №: 64 402



Цитата(adnega @ Feb 15 2016, 09:30) *
По какому интерфейсу подключена карта (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

Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 15 2016, 08:42
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата
Интерфейс SDIO 4-битный.
Последняя команда, которая проходит - CMD17 (Read single block),
на неё приходит ответ 0x900. После чего мы заряжаем DMA, стартуем передачу в
контроллере SDIO, и ждём окончания транзакции.
Но не можем дождаться, так как в статустном регистре
мы видим ошибку STBITERR (Start bit not detected on all data signals in wide bus mode)
Процессор STM32F407

Ага. А схему показать можете? Подтяжка на линии данных присутствует?
Питание на карте в этот момент не проседает? Или уровень земли не подлетает?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 17th June 2025 - 23:04
Рейтинг@Mail.ru


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