Hay 3 booleanos: a, b y c.
a y b son como botones. Normalmente son falsos. Solo cuando se activan son verdaderas. Como un impulso.
Cuando activé la a, la c debería ser verdadera y debería mantener el estado hasta que se active la b. Después de activar b, la c debería pasar a falso, manteniendo el estado hasta que a se active de nuevo.
Quiero escribirlo en JavaScript. Lo necesito para que el software hmi controle los botones reales. Gracias.
Puede utilizar operadores ternarios ( ?: ) y negación ( ! ):
let A = false, B = false, C = false, a = document.getElementById('a'), b = document.getElementById('b'), c = document.getElementById('c'); function changeC(clickedBtn) { if(clickedBtn === 'a') { a.innerHTML = A === false ? true : false; A = !A; } else if(clickedBtn === 'b') { b.innerHTML = B === false ? true : false; B = !B; } c.innerHTML = C === false ? true : false; C = !C; } <button id="a" onclick="changeC('a')"> false </button> <button id="b" onclick="changeC('b')"> false </button> <button id="c"> false </button>