Не могу придумать логику решения задачи

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Открыл глаза
Аватара пользователя
Сообщения: 48
Зарегистрирован: Пн июл 31, 2017 10:53:04

Сообщение Cheeseman »

Всем привет. Возник вопрос. Есть 3 задачи, Задача А, Задача B, Задача С. Используется freeRTOS. Задача А отправляет по протоколу свое имя (NameA), задача B - Name B, Задача С - Name C. Прилетает config в котором указано, какие именно задачи будут работать. Варианты: ААА, ААВ, ACA, CCC, BBC.... все возможные комбинации могут быть. Как это можно норм реализовать? Был вариант создать девять задач и в зависимости от конфига их включать/выключать.
AAA - каждая задача высылает имя (name A1, name A2, Name A3)
BBC - (name B1, name B2, Name C1)
...

Пример: Хочу сделать девайсину. С тремя различными протоколами обмена. и в зависимости от конфига их менять. Каждый протокол реализуется в виде задачи.
Реклама
Держит паяльник хвостом
Аватара пользователя
Сообщения: 955
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда

Сообщение GARMIN »

Я бы просто использовал очереди и в зависимости от конфигурации отправлял из пользовательских задач данные твоим задачам протоколов
Контактная информация:
Реклама
Мудрый кот
Сообщения: 1755
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="Cheeseman",url="/forum/viewtopic.php?p=4459136#p4459136"]Есть 3 задачи, Задача А, Задача B, Задача С. Используется freeRTOS. Задача А отправляет по протоколу свое имя[/uquote]Какой "протокол"? О чём вообще речь? :facepalm:

[uquote="Cheeseman",url="/forum/viewtopic.php?p=4459136#p4459136"]Хочу сделать девайсину. С тремя различными протоколами обмена. и в зависимости от конфига их менять. Каждый протокол реализуется в виде задачи.[/uquote]Это зачем? Чтобы как можно больше ОЗУ потратить? :)))
Что мешает все протколы обрабатывать в одной задаче?
И что за протоколы? Где они ходят? Об интерфейсе по которому они ходят - ни слова. Он один, два, ... их десять?
Открыл глаза
Аватара пользователя
Сообщения: 48
Зарегистрирован: Пн июл 31, 2017 10:53:04

Сообщение Cheeseman »

GARMIN спасибо) jcxz, протоколы самописные для обмена данными с другим устройством. Интерфейс по которому они ходят не имеет значения. I2C пусть будет, без разницы. Не в этом проблема была.
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

это точно. не в этом. но была ли?
Контактная информация:
Реклама
Мудрый кот
Сообщения: 1755
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="Cheeseman",url="/forum/viewtopic.php?p=4459297#p4459297"]протоколы самописные для обмена данными с другим устройством. Интерфейс по которому они ходят не имеет значения. I2C пусть будет, без разницы. Не в этом проблема была.[/uquote]именно в этом: Если интерфейс один, то и задачи (для его обслуживания) достаточно одной.
Реклама
Ответить

Вернуться в «Разные вопросы по МК»