Vejamos um exemplo em que um circuito que controla o funcionamento de um semáforo num cruzamento. Conforme a Figura 2.5, uma rodovia expressa é intersectada por uma estradinha pouco movimentada. Um semáforo SemRod controla a rodovia e um semáforo SemEst controla a estradinha.
Sensores C são colocados na estradinha, em posições
indicadas na figura, para detectar a presença de
carros. Na ausência de carros detectados por C, o semáforo
SemRod deve permanecer verde. Quando o sensor C for igual a 1
(indicando a presença de carros na estradinha), SemRod vai
passar par amarelo, permanece amarelo por um tempo de duração
Tcurto, e então passa para vermelho. É claro que nesse instante
SemEst deve mudar para verde, abrindo o sinal para os carros
da estradinha. SemEst deve permanecer verde apenas se C continua
detectando passagem de carros na estradinha, mas nunca por um
tempo superior a Tlongo. Passado este período Tlongo,
ou C não detecta mais carros, SemEst deve mudar para amarelo
(por uma duração Tcurto), depois para vermelho, quando
então SemRod passa novamente para verde. SemRod não deve
ser interrompido pelo tráfego na estradinha antes de ter
decorrido um período de tempo igual a Tlongo.
No diagrama da Figura 2.6 temos 4 estados.
O sinal TL = 1 após a passagem de um tempo Tlongo; o sinal
TC = 1 após a passagem de um tempo Tcurto. Um temporizador
ou ``timer'' é usado para cronometrar o tempo decorrido.
O ``timer'' é disparado pelo sinal DISPARA, començando
a contar o tempo a partir de zero. O circuito a ser projetado
tem as entradas C, TL e TC, e produz as saídas
DISPARA, SemRod e SemEst. Naturalmente, o estado
presente e o estado próximo também participam
no circuito.
A Figura 2.7 mostra a tabela de transição.
A Figura 2.8 mostra a mesma coisa, porém com os estados, entradas e saídas devidamente codificadas. As codificações usadas são: