Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ложное срабатывание USB Resume, suspend
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
asergey
Добрый день.
Помогите пожалуйста разобраться в проблеме. ARM lpc2378 с рабочим кодом на конфигурирование USB HID, активирован USB_LED, при поднесении руки лампочка не срабатывает от наводок. При первом конфигурировании и отключении USB лампочка загорается от наводок рукой. Добавил в код вывод информации на UART, оказывается от наводок постоянно срабатывают USB Resume и USB Suspend, даже когда USB еще не пронумерована хостом. Пересмотрел все примеры от Keila - у меня все тоже самое. Причем при активизации битов DEV_CON_CH (коннект change) соответствующее событие почему то не возникает... Может где еще бит вставить или обнулить что...
Очень странно что ARM генерирует эти события....
спасибо.
Flexz
похоже что какие-то порты в воздухе висят, например, обнаружение подключения USB кабеля. Из описание толком непонятно что и как работает
asergey
Цитата(Flexz @ Oct 19 2009, 16:35) *
похоже что какие-то порты в воздухе висят, например, обнаружение подключения USB кабеля. Из описание толком непонятно что и как работает

по умолчанию все выводы включая VBUS подтянуты к питанию, подтянул принудительно к нулю регистром PINMODE стало вроде получше, стал генерироваться Connect Change, но все равно все зависит от наводок на кабель... схема стандартная почти как у MCB2300 (часть выводов не связанных с USB идет на другую схему), прошивку вообще взял тестовую от Keil на эту плату...но вопрос в том почему ядро генерит эти прерывания, неужели только из-за того появилось ли питание на VBUS в результате наводок???.... laughing.gif
посмотрю тогда фильтры на схеме..
спасибо за подсказку
Axel
Традиционно для повышения помехоустойчивости неиспользуемые пины программируются на выход (или "как выходы") и на них выводятся нули. Но даже и без этого я ничего подобного не припомню (в т.ч. и с конкретно этими чипами). Похоже Ваши проблемы в железе...
Седой
Цитата(asergey @ Oct 19 2009, 18:27) *
по умолчанию все выводы включая VBUS подтянуты к питанию, подтянул принудительно к нулю регистром PINMODE стало вроде получше, стал генерироваться Connect Change, но все равно все зависит от наводок на кабель... схема стандартная почти как у MCB2300 (часть выводов не связанных с USB идет на другую схему), прошивку вообще взял тестовую от Keil на эту плату...но вопрос в том почему ядро генерит эти прерывания, неужели только из-за того появилось ли питание на VBUS в результате наводок???.... laughing.gif
посмотрю тогда фильтры на схеме..
спасибо за подсказку


Похоже ведут себя хабы от ТI по downstream ports (но только не от проведения руки над платой). Посмотрите спецификацию USB2.0, может быть ничего страшного и не происходит.
asergey
Цитата(Axel @ Oct 19 2009, 18:22) *
Традиционно для повышения помехоустойчивости неиспользуемые пины программируются на выход (или "как выходы") и на них выводятся нули. Но даже и без этого я ничего подобного не припомню (в т.ч. и с конкретно этими чипами). Похоже Ваши проблемы в железе...

Взял отладочный комплект от StarterKit SK-LPC2378, реализовал то же самое с отладочным примером, те же генерации...ну уж там то я думаю проблем в железе не должно быть...В принципе ладно с этими генерациями, все равно функции пустые, просто не нравится что GoodLink так себя ведет, нет однозначности. Реализую устройство на рентгеноструктурный аппарат, приходится тестировать на такие вещи, когда чуть в сторонке несколько киловольт скачет smile.gif , придется GoodLink завязывать с анализом на VBUS или D+.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.