|
Взаимодействие между задачами, Как правильнее ? |
|
|
|
Aug 24 2015, 23:53
|

Гуру
     
Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702

|
Коллеги, добрый день. Наболел вопрос:
Есть задача А , которая управляет всей системой в целом. Есть задача Б, которая управляет соединением USB , в ней крутится цикл с приёмом данных из очереди. USB надо "включать" и "выключать" при отключении/подключении устройства к USB шине. Просто удалить задачу Б неправильно. Если это делать путём передачи в задачу Б команды через очередь или симафор, то эту очередь/симафор надо поллить в цикле, который там крутится. Если это делать путём сознания задачи В, которая закрывает задачу Б сделав нужные действия с USB, то получается слишком громоздкий код. Как быть ? Возможно придуман какой-то стандартный путь ? Или я вообще чего-то не понимаю, и неправильно рассуждаю изначально ?
МП
--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
|
|
|
|
|
 |
Ответов
|
Aug 26 2015, 11:03
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(ViKo @ Aug 26 2015, 13:28)  Кейловская CMSIS-RTOS RTX попроще будет, а Сигналы есть. Например, можно ждать сигналы от нескольких задач. Просто, красиво, удобно. Код for (;; ) { osSignalWait(0x0003, osWaitForever); // Ждать сигналы от ПЛИС и Main ... Есть и во FreeRTOS механизм передачи сигналов от нескольких задач. Но только это уже занос, уклон в сторону автоматов. Тогда от RTOS мало смысла остается.
|
|
|
|
Сообщений в этой теме
MiklPolikov Взаимодействие между задачами Aug 24 2015, 23:53 zltigo QUOTE (MiklPolikov @ Aug 25 2015, 02:53) ... Aug 25 2015, 04:30 MiklPolikov Цитата(zltigo @ Aug 25 2015, 07:30) ... Aug 25 2015, 17:20  zltigo QUOTE (MiklPolikov @ Aug 25 2015, 20:20) ... Aug 25 2015, 17:24   MiklPolikov Цитата(zltigo @ Aug 25 2015, 20:24) Ничег... Aug 25 2015, 17:37    zltigo QUOTE (MiklPolikov @ Aug 25 2015, 20:37) ... Aug 25 2015, 17:56 ViKo Цитата(MiklPolikov @ Aug 25 2015, 02:53) ... Aug 25 2015, 18:17 aaarrr Цитата(MiklPolikov @ Aug 25 2015, 02:53) ... Aug 25 2015, 18:45 AlexandrY Цитата(MiklPolikov @ Aug 25 2015, 02:53) ... Aug 25 2015, 19:16    AlexandrY Цитата(ViKo @ Aug 26 2015, 14:12) Не могу... Aug 26 2015, 12:08     zltigo QUOTE (AlexandrY @ Aug 26 2015, 15:08) Я ... Aug 26 2015, 12:16 ViKo У меня мьютекс один, ограничивает доступ к буферу ... Aug 26 2015, 12:46 zltigo QUOTE (ViKo @ Aug 26 2015, 15:46) У меня ... Aug 26 2015, 17:11
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|