Princípios

Estudo de caso: Máquina de estado do alarme

Construindo a máquina

Valor codificado binário do estado

Porque nós temos três estados, nós precisamos aqui somente dois flip-flops - esta vontade da configuração permite até quatro estados (00, 01, 10, 11).

Nós temos que fazer um pouco mais de cálculo.

Primeiramente, nós temos que decidir como os estados serão codificados.
O estado do sono (1) não será codificado “00” como é o interruptor no valor e então lá seria nenhuma necessidade para que uma tecla de restauração force este valor.
Os dois outros estados conduzem às ações (interruptor no indicador do “braço” e interruptor no alarme e no temporizador).
Será muito mais fácil usar para estes dois estados os “01” e “10” como cada um da saída dos fliflops pode diretamente ser usada para controlar as ações respectivas sem uma lógica mais adicional

Daqui, a codificação do estado:

 

EstadoNomeCodificação AB
1Sono00
2Armado01
3Alarme10

 

O estado AB=11 não é usado e não deve ocorrer.

Assim a tabela de verdade precedente

 

EstadoCircunstância
  
1 2.Disarm + 3.Disarm + 1.Arm
2 1.Arm + 3.TimeOut + 2. (Disarm.Intrusion)
3 2.Intrusion + 3. (Disarm.TimeOut)

 

torna-se:

 

ABCircunstância
   
002.Disarm + 3.Disarm + 1.Arm
011.Arm + 3.TimeOut + 2. (Disarm.Intrusion)
102.Intrusion + 3. (Disarm.TimeOut)

 

Daqui a equação para os dois flip-flops A e B:

 

Flip-flopCircunstância
  
B1.Arm + 3.TimeOut + 2. (Disarm.Intrusion)
A2.Intrusion + 3. (Disarm.TimeOut)

 

com as seguintes equações do número do estado:

1 = A.B
2 = A.B
3 = A.B

 

Nós temos então as equações com os valores de A e de B somente:

 

Flip-flopCircunstância
  
BA.B.Arm + A.B.TimeOut + A.B. (Disarm.Intrusion)
AA.B.Intrusion + A.B. (Disarm.TimeOut)

 
 

 

Qual dá o seguinte circuito:

 

Índice alternativo

Começ a Adobe o jogador instantâneo

 

Este método de projeto pode ser uso para outras máquinas de estado.

 


 

 

 
X

http://logiflash.com/basics/13.php