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

 
 
> USB_LP_CAN1_RX0_IRQ USB+FreeRTOS
dimon_rub
сообщение Aug 10 2017, 03:42
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 10-09-16
Пользователь №: 93 282



Здравствуйте. Подскажите пожалуйста в чем дело. ПРИ НЕ ПОДКЛЮЧЕНОМ УСТРОЙСТВЕ к PC построеном на STM32F103RC постоянно срабатывает прерывание USB_LP_CAN1_RX0_IRQn. На ногах все чисто (асцилограф). Частота очень высокая занимает почти все процессорсое время. Если использовать очередь (семафор) то обработчик неуспевает вызываться. Все это видно дебагером. Флаги ISTR_ERR и ISTR_ESOF. Если нужен код скажите
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Integro
сообщение Aug 14 2017, 11:25
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 167
Регистрация: 25-12-09
Из: Минск
Пользователь №: 54 460



Наблюдал подобное поведение на SMT32L4,

Так же бы флаги ISTR_ERR и ISTR_ESOF. Проблема проявлялась только в том случае, когда Vusb был подключен к отдельному напряжению питания USB PHY 3V0, питание VDD, было 1V8.

Решал проблему через привязку включения USB к моменту физического подключения, и соответственно выключения. В моем случае помог флаг PWR_SR2_PVMO1 и HAL_PWREx_PVM1Callback но, на сколько я помню на F103 такого еще нет(могу ошибаться), поэтому необходимо подключать пин для детекта наличия Vusb
Go to the top of the page
 
+Quote Post
dimon_rub
сообщение Aug 14 2017, 20:15
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 10-09-16
Пользователь №: 93 282



Цитата(Integro @ Aug 14 2017, 12:25) *
Наблюдал подобное поведение на SMT32L4,

Так же бы флаги ISTR_ERR и ISTR_ESOF. Проблема проявлялась только в том случае, когда Vusb был подключен к отдельному напряжению питания USB PHY 3V0, питание VDD, было 1V8.

Решал проблему через привязку включения USB к моменту физического подключения, и соответственно выключения. В моем случае помог флаг PWR_SR2_PVMO1 и HAL_PWREx_PVM1Callback но, на сколько я помню на F103 такого еще нет(могу ошибаться), поэтому необходимо подключать пин для детекта наличия Vusb


Огромное спасибо. Это действительно наверно сработает (необходимо подключать пин для детекта наличия Vusb) в данный момент как я понял необходимо отключить флаг SUSPEND что не даст возможность взводить ISTR_ESOF. Пока у меня это работает но при этом есть проблема, если хост засыпает то вешается проц. Возможно подключение даст возможность по детекту взводить отключеные флаги. ПОПРОБУЮ
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 04:24
Рейтинг@Mail.ru


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