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

 
 
> FreeRTOS + USB
Atlantis-
сообщение Aug 5 2014, 13:24
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102



Здравствуйте!
Как правильней объединить USB (конкретно обработчик прерываний) и задачи по приему данных и обработке реквестов? надо ли всю обработку прерывания совать в задачу и потом семафором ее вызывать или можно вызывать задачу только когда пришли данные?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Atlantis-
сообщение Jun 24 2015, 05:44
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102



В STM-овских библиотеках сделано так: когда приходит USB запрос (неважно с данными или без) вызывается функция
Код
static int8_t CDC_Control_HS  (uint8_t cmd, uint16_t index, uint16_t value, uint8_t* pbuf, uint16_t length)
{

}


Если запрос с данными от хоста, то надо прочитать по адресу pbuf, а если надо отправить на хост - записать по адресу pbuf, очевидно до выхода из функции. Если я сделаю очередь, которая вызывает задачу, то задача запуститься уже после выхода из функции CDC_Control_HS
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Atlantis-   FreeRTOS + USB   Aug 5 2014, 13:24
- - den_po   Зачем семафором? Для этого очереди есть. А что в п...   Aug 5 2014, 13:49
|- - Atlantis-   Цитата(den_po @ Aug 5 2014, 17:49) Зачем ...   Aug 6 2014, 05:21
- - den_po   http://www.freertos.org/ -> download в дистрибу...   Aug 6 2014, 05:49
|- - Atlantis-   Цитата(den_po @ Aug 6 2014, 09:49) http:/...   Aug 6 2014, 06:03
- - gridinp   а что за процессор, что за USB контроллер, master ...   Aug 8 2014, 18:36
|- - Atlantis-   Цитата(gridinp @ Aug 8 2014, 22:36) а что...   Aug 13 2014, 06:07
- - Atlantis-   Еще вопрос: насколько правильно будет для обработк...   Jun 9 2015, 12:44
- - uriy   На STM32F103 я использую семафоры: Прерывание: Ко...   Jun 10 2015, 08:29
- - Atlantis-   а обработка USB-запросов аналогичным образом?   Jun 10 2015, 14:15
- - uriy   Нет. В задаче у меня обрабатывается только поступл...   Jun 11 2015, 08:12
|- - Atlantis-   Цитата(uriy @ Jun 11 2015, 11:12) Нет. В ...   Jun 11 2015, 11:21
- - uriy   Для коротких прерываний нет смысла создавать задач...   Jun 11 2015, 19:04
|- - Atlantis-   У меня много разных USB запросов и наверно было бы...   Jun 23 2015, 07:49
- - uriy   Так в примере который я приложил тоже отправляются...   Jun 23 2015, 08:39


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

 


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


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