Добрый день! На всякий случай поясню, что я нигде не говорю, что существующим набором блоков что-то нельзя реализовать. Например, в SMLogix есть NAND и любую другую логическую функцию (хоть NOT, хоть OR, хоть AND и т.д.) можно синтезировать набором лишь одних NAND. Я говорю лишь про логичность и удобство.
Цитата:
Сообщение от Arsie
Потому что XOR - это сложение с переносом. Выход этого блока - флаг переноса разряда.
|
Не, это не флаг переноса.
XOR(1,1) = 0 // а флаг переноса был бы 1
XOR(1,0) = 1 // а флаг переноса был бы 0
Цитата:
Честно говоря, мне сложно представить, зачем этому блоку несколько входов в задачах PLC. Не расскажете мне сценарии такого использования?
|
Как минимум, я бы использовал в следующем случае. Нормализация дискретного входа с двумя настройками: пользовательской и по-умолчанию.
Ниже пример, где инверсия входа делается в настройках пользователя и программистом, который выбирает, какой физический уровень сигнала соответствует логическому сигналу:
Цитата:
Вообще не вижу никаких проблем. Сохраните как макрос и используйте
|
Так и делаем (см. ниже). Но почему бы не сделать это готовым блоком? Это же не какая-то редкая функция.