Помогите преобразовать bool в число
Добавлено: 15 июл 2024, 20:54
В проекте сигнализации на SIM800 хочу реализовать следующий алгоритм: имеются две переменных типа bool - In1 и In2. При звонке на модуль, хочу что бы в зависимости от их состояний, происходил сброс звонка по количеству гудков.
Т.е. например:
In1==1 и In2==0, тогда сброс после первого гудка вызова;
In1==0 и In2==1, тогда сброс после второго гудка вызова;
In1==1 и In2==1, тогда сброс после третьего гудка вызова;
In1==0 и In2==0, тогда сброс после четвертого гудка вызова;
Для этого использовал блок сравнения и блок мультиплексора, но не могу придумать как реализовать преобразование логических 1 и 0 в число для входа Sel.
В текстовом виде это реализуется примерно как:
А как реализовать такое используя FBD?
Т.е. например:
In1==1 и In2==0, тогда сброс после первого гудка вызова;
In1==0 и In2==1, тогда сброс после второго гудка вызова;
In1==1 и In2==1, тогда сброс после третьего гудка вызова;
In1==0 и In2==0, тогда сброс после четвертого гудка вызова;
Для этого использовал блок сравнения и блок мультиплексора, но не могу придумать как реализовать преобразование логических 1 и 0 в число для входа Sel.
Код: Выделить всё
In1 In2 | Sel
------------------
1 0 | 1
0 1 | 2
1 1 | 3
0 0 | 4
Код: Выделить всё
bool In1, In2;
int Sel;
if (In1==true and In2==false) { Sel=1}
и т.д.