eugenSU пишет:1) Байты могут быть абсолютно любые. Это живая шина данных. Но переключение происходит только при этих входных данных. Переключение происходит битами, но другие биты так же должны наличиствовать.
Указанные байты принадлежат конкретным сообщениям, с конкретными ID, и находятся в них на соответствующих местах. Вопрос был как меняются эти данные (байты этих сообщений) в процессе работы устройства? Появляются однократно? Ретранслируются постоянно, пока не изменятся какие-либо условия? И т.п.
Как я понимаю, переключение должно происходить по строгому соответствию данных указанным константам.
eugenSU пишет:2) Я уже написал, что нужно не просто запретить установку, а именно сбрасывать уровни.
Сброс уровней подразумевает принудительную установку значения "0". Но можно, при определенных обстоятельствах, с помощью логических операторов, просто не давать устанавливать на выходах "1".
eugenSU пишет:3) Выключение должно происходить только по двум параметрам. Уровень ноль и наличие значения 0х000С в первом байте. Во всех остальных случаях система никак не должна реагировать на прилетающие данные.
В исходной диаграмме сброс мог происходить либо по выполнению одного условия, либо другого, либо обоих (Логическое ИЛИ), но не строго по одновременному выполнению обоих.
Во вложении один из возможных вариантов решения. Наверняка, он не учитывает каких-либо особенностей работы системы, передачи данных в шине и т.п.
Вложений в сообщении
c7_вентиляция2.cfd 5.69 кб, скачивался 167 раз, последний раз 2021-09-16