-
- Не очень получается "облегчение труда без операционной системы". Сплошь и рядом: подача команды датчику на измерение и он ответит ...когда-нибудь. Тут сразу с "неблокирующим" получается казус и необходимо добавлять промежуточные состояния. Эта же задача с RTOS пишется просто до примитивности что положительно сказывается как на скорости реализации проекта так и на количестве багов. Впрочем с RTOS в полный рост встает задача IPC и синхронизации потоков. - 3m(Сегодня, 11:32)
- На это тратится один таймер и вешается супервизор? Или "потоки"
элементарно являются функциями, которые поочередно вызываются? Eddy_Em(44 знак., Вчера, 22:35)
- Со слов "Разберемся теперь, как работают макросы." Несколько
примеров исходников объяснят суть реализации pt. Nikolaj(1 знак., Сегодня, 08:10, ссылка)
- Ну, теперь я еще больше запутался: по ссылке - реализация обычных
конечных автоматов, но "спрятанная под ковер". Зачем? Наглядней же
делать все "в лоб". - Eddy_Em(Сегодня, 09:19)
- Ссылка - описание "в двух словах с картинками" того что реализовано в "protothread Adam Dunkels", про них речь выше шла. И в КА переходы между "ветками" кода в зависимости от условий/состояний. В pt в общем случае код функции-треда выполняется линейно с возможностью не блокированного ожидания выполнения условия (таймаут, ожидание смены состояния флага). - Nikolaj(Сегодня, 12:29)
- Затем, что расстановка и добавление кейсов делается препроцессором автоматически! Nikolay_Po(346 знак., Сегодня, 12:21)
- Ну, теперь я еще больше запутался: по ссылке - реализация обычных
конечных автоматов, но "спрятанная под ковер". Зачем? Наглядней же
делать все "в лоб". - Eddy_Em(Сегодня, 09:19)
- В двух словах не объяснить. А я хотел бы. Но сейчас готовлюсь к
сдаче проекта, нет возможности. Nikolay_Po(642 знак., Вчера, 23:14)
- Ну, у меня подобные задачи просто "вложенными" конечными автоматами
решаются. - Eddy_Em(Сегодня, 09:17)
- Именно. Просто ты ещё не задолбался писать конечные автоматы под простые, линейные, но блокирующие задачи. - Nikolay_Po(Сегодня, 12:15)
- Конечные автоматы пишутся легко и просто. Вот кусок реального кода,
где в главном цикле вызываются пять конечных автоматов
последовательно каждую миллисекунду. Некоторые автоматы в свою
очередь, вызывают другие автоматы. Главное, чтобы нигде и ничто не
могло блокировать поток выполнения. Бoмж(250 знак., Сегодня, 09:07)
- Так это вы мой мэйн луп показываете. Там примерно так же, условно 5 строчек. Nikolay_Po(79 знак., Сегодня, 12:14)
- Вот-вот. У меня примерно так же: Eddy_Em(1511 знак., Сегодня, 09:28)
- Ну, у меня подобные задачи просто "вложенными" конечными автоматами
решаются. - Eddy_Em(Сегодня, 09:17)
- Со слов "Разберемся теперь, как работают макросы." Несколько
примеров исходников объяснят суть реализации pt. Nikolaj(1 знак., Сегодня, 08:10, ссылка)