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

 
 
10 страниц V  « < 8 9 10  
Reply to this topicStart new topic
> STM32 USB FS OTG
Шаманъ
сообщение Mar 30 2017, 10:45
Сообщение #136


Знающий
****

Группа: Участник
Сообщений: 677
Регистрация: 27-08-08
Пользователь №: 39 839



Интересно ли кому, что в итоге была за проблема?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 30 2017, 11:13
Сообщение #137


Профессионал
*****

Группа: Участник
Сообщений: 1 504
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата
У меня только одна мысль

А что, в конце все оказалось не в кварце? Мне - интересно.
ps: глянь на STM32F723 (STM32F723zetg6) - со встроенной HS физикой для USB HS

Сообщение отредактировал Genadi Zawidowski - Mar 30 2017, 11:16
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Mar 30 2017, 12:16
Сообщение #138


Знающий
****

Группа: Участник
Сообщений: 677
Регистрация: 27-08-08
Пользователь №: 39 839



Цитата(Genadi Zawidowski @ Mar 30 2017, 14:13) *
А что, в конце все оказалось не в кварце? Мне - интересно.

Поменял я кварц на 12МГц (на 8 закончились), и ... ничего - по прежнему отваливается через 10..20сек. Ну думаю может что-то не то и с этим, поставил 24.576МГц - стало лучше, но всеравно - минут 5..10 и хост на старом компе (под WinXP) отказывается принимать данные. Начал рассматривать разводку платы (речь про модуль Core7XXI от Waveshare), ну это просто жесть - вся земля порезана, переходных отверстий мало, вдобавок они маленького диаметра (0.3 что-ли), а самое главное земля к которой подключаются конденсаторы опорного генератора делает такую большую загогулину в пол платы, прежде чем доберется до процессора. Сигнал сброса тоже блуждает по плате, пока не дойдет до кнопки, причем кондер стоит со стороны кнопки (правда с этой цепью проблем нет). Далее, по питанию стоит кучка керамики 0.1мкФ и один тантал аж в 1мкФ. Резистор ООС опорного генератора зачем-то 10МОм. Ну и ноги к которым подключен кварц вытянуты на разъем платы.

Взял я ножик, паяльник и:
1. Заменил танталовый к-р 1.0мкФ на 10мкФ керамику.
2. Заменил резистор в ООС на 200кОм (как рекомендуют в датащите).
3. Добавил еще один 10мкФ керамический конденсатор по питанию в том месте где подключается питание USB у процессора.
4. Отрезал проводники от кварца на разъем платы.
Это сделало работу немного стабильнее. Но самое сильное влияние оказали перемычки - соединил ими землю около кварца с землей около процессора и с другой стороны два разрезанных полигона земли. С этими перемычками проработало 5часов (думал уже вот оно), потом правда всеравно отвалилось, но похоже это и есть проблемное место. Да, чем выше частота кварца, тем стабильнее работа, что объяснимо - коэффициент умножения ФАПЧ меньше и всякой срани тоже меньше на выходе ФАПЧ в итоге.

В общем причина в кривой разводке модуля. Кстати судя по плате следующие грабли ждут с АЦП, но там точность особая мне не нужна, метод лечения я уже продумал. Но в итоге думаю придется этот модуль переделать на свой, и наверное в 4х слоях - как всегда, хочешь сделать хорошо, сделай сам... Но для экспериментов и этот сойдет.

Да, с внутренним генератором проработало сутки без проблем, т.е. с ним таких проблем нет совсем.

Цитата
ps: глянь на STM32F723 (STM32F723zetg6) - со встроенной HS физикой для USB HS

О! USB2.0 это хорошо. Я так понимаю это проба, прежде чем это дело появится в high-end камнях.

Сообщение отредактировал Шаманъ - Mar 30 2017, 12:21
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 30 2017, 12:20
Сообщение #139


Профессионал
*****

Группа: Участник
Сообщений: 1 504
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Проконтролируй конденсаторы на внутреннем источнике процессора (те что 2.2 uF должны быть)
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 30 2017, 13:49
Сообщение #140


Профессионал
*****

Группа: Участник
Сообщений: 1 504
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Да, и конденсаторы на кварце.
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Mar 30 2017, 14:23
Сообщение #141


Знающий
****

Группа: Участник
Сообщений: 677
Регистрация: 27-08-08
Пользователь №: 39 839



Цитата(Genadi Zawidowski @ Mar 30 2017, 15:20) *
Проконтролируй конденсаторы на внутреннем источнике процессора (те что 2.2 uF должны быть)

Это было первое, что я сделал - показывали по 2.5мкФ. Да и если бы здесь была проблема, то наверное сбоила бы программа на МК, а она не сбоит - просто проходят ошибки после чего хост перестает опрашивать девайс.

На кварце не мерял, но с нормальной платой соединение двух полигонов земли проводом влиять на поведение программы не должно.
Go to the top of the page
 
+Quote Post
Шаманъ
сообщение Mar 31 2017, 11:32
Сообщение #142


Знающий
****

Группа: Участник
Сообщений: 677
Регистрация: 27-08-08
Пользователь №: 39 839



Ну и так сказать happy end истории.

Решил вчера поглядеть, а что же делается на выходе PLL. Прямого выхода понятно у меня нет, но PCLK на TFT идет с одной из двух PLL. Подключил частотомер, смотрю:
1. Без перемычек частота скачет около +-1кГц (усреднение за 1сек)
2. С перемычками частота скачет в пределах +-10Гц (усреднение за 1сек)

Тут я провел эксперимент - отключил TFT, частота стоит как влитая, подключил - опять скачет. И вспомнилась мне неприметная фраза из раздела 7.1 мануала про I/O compensation cell и power supply noise reduction. Активировал эту фичу и, о чудо, PLL стала стабильно работать вне зависимости от нагрузки на I/O линии. USB тоже на старой машине теперь не отваливается (по крайней мере восемь часов сегодня и пять вчера отработало все без сбоев).

Короче мораль истории, если у Вас задействовано много I/O линий, которые переключаются с достаточно высокой частотой, включайте I/O compensation cell.

На этом похоже моя история с USB заканчивается, да модуль (два СОМ порта и дуплексная аудиокарта) получился 4.7кБ во флеше (из них примерно 0.5кБ дескрипторы) и 124байта ОЗУ. Можно было еще чуть флеша сэкономить, но я в угоду удобству программирования и красоте кода сделал обработку запросов через "карты обработчиков" и макросы, что немного раздуло код (думаю где-то на 300..500байт).
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 31 2017, 11:39
Сообщение #143


Профессионал
*****

Группа: Участник
Сообщений: 1 504
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Спасибо! буду обращать внимание.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2017 - 20:31
Рейтинг@Mail.ru


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