Faça um contador síncrono com FF-JK de forma a fazer uma contagem em loop, impar de 1 a 15 . Caso aconteça alguma perturbação de maneira que a contagem não esteja com um valor impar, a mesma deve prosseguir na sequência impar mais próxima. Uma tecla deve existir para zerar a contagem a qualquer tempo;
Passo 1
Beleza, vamos lá! O enunciado pede para a gente criar um contador síncrono usando flip-flops JK que conte números ímpares de 1 a 15 em loop, ou seja, 1 → 3 → 5 → 7 → 9 → 11 → 13 → 15 → 1. Além disso, se rolar alguma falha e o contador não estiver em um número ímpar, ele deve ir para o próximo número ímpar mais próximo. Também precisa ter um botão para zerar a contagem a qualquer momento.
Para resolver isso, vamos precisar entender de:
Flip-Flops JK: componentes básicos para criar contadores.
Contadores Síncronos: contadores onde todos os flip-flops mudam de estado ao mesmo tempo.
Lógica de Reset: para zerar o contador quando necessário.
Sequência de Contagem: garantir que só conte números ímpares e faça o looping corretamente.
Passo 2
Primeiro, vamos determinar quantos flip-flops JK precisamos. Como queremos contar até 15, que é , precisamos de 4 flip-flops (já que ) para representar os números de 0 a 15 em binário.
Passo 3
Agora, vamos listar os estados de contagem ímpares que queremos:
1 (0001), 3 (0011), 5 (0101), 7 (0111), 9 (1001), 11 (1011), 13 (1101), 15 (1111).
E depois retorna para 1 novamente. Isso forma um ciclo de 8 estados.
Passo 4
Vamos criar uma tabela de transição de estados para ver como vamos passar de um número ímpar para o próximo:
Estado Atual (Q3 Q2 Q1 Q0)
Próximo Estado (Q3’ Q2’ Q1’ Q0’)
0001 (1)
0011 (3)
0011 (3)
0101 (5)
0101 (5)
0111 (7)
0111 (7)
1001 (9)
1001 (9)
1011 (11)
1011 (11)
1101 (13)
1101 (13)
1111 (15)
1111 (15)
0001 (1)
Passo 5
Com a tabela de transição pronta, vamos usar a tabela de excitação para flip-flops JK. A fórmula para determinar as entradas do JK é:
Onde é o estado atual e é o próximo estado.
Vamos calcular os valores de J e K para cada flip-flop (Q3, Q2, Q1, Q0).
Passo 6
Vamos focar em cada flip-flop separadamente:
Para Q0:
Observamos que Q0 sempre alterna entre 1 e 1 (no nosso caso, sempre 1, já que estamos contando apenas ímpares). Então, não precisa mudar. Portanto:
Para Q1, Q2 e Q3:
Calculamos J e K usando a tabela de excitação baseada nos estados atuais e próximos.
Vamos preencher as tabelas:
Estado Atual
Próximo Estado
Q3
Q2
Q1
Q0
Q3’
Q2’
Q1’
Q0’
J3
K3
J2
K2
J1
K1
0001
0011
0
0
0
1
0
0
1
1
0
X
0
X
1
1
X
0011
0101
0
0
1
1
0
1
0
1
0
X
1
X
X
X
1
0101
0111
0
1
0
1
0
1
1
1
0
X
X
0
1
1
X
0111
1001
0
1
1
1
1
0
0
1
1
X
X
0
X
X
1
1001
1011
1
0
0
1
1
0
1
1
X
0
1
X
0
1
X
1011
1101
1
0
1
1
1
1
0
1
X
0
X
1
1
1
0
1101
1111
1
1
0
1
1
1
1
1
X
0
1
X
X
1
X
1111
0001
1
1
1
1
0
0
0
1
1
X
X
X
1
X
1
Nota: “X” significa que o valor pode ser 0 ou 1, dependendo da necessidade.
Passo 7
Com os valores de J e K definidos, precisamos derivar as equações lógicas para cada flip-flop. Vamos simplificar as expressões usando Mapas de Karnaugh (K-Map) para minimizar a lógica.
Por exemplo, para J3 e K3 baseados nas transições:
Fazendo isso para todos os flip-flops, obtemos as seguintes expressões simplificadas:
Passo 8
Agora, vamos montar o circuito usando os flip-flops JK e as equações lógicas que encontramos. Cada flip-flop terá suas entradas J e K conectadas conforme as equações acima. Além disso, incluímos um botão de reset que, quando pressionado, força todos os flip-flops a zerar, retornando a contagem para 0.
Para garantir que o contador sempre esteja em um estado ímpar, podemos adicionar uma lógica de verificação que, se detectar um estado par, força o próximo estado para o ímpar mais próximo. Isso pode ser feito usando portas lógicas adicionais que monitoram os estados e corrigem conforme necessário.
Passo 9
Por último, vamos testar o contador para garantir que ele funcione como esperado:
Começa em 1 e segue para 3, 5, 7, 9, 11, 13, 15 e de volta para 1.
Se houver uma perturbação que leve o contador a um número par, ele ajusta para o próximo número ímpar.
O botão de reset zera a contagem a qualquer momento.
Resposta
Seguindo esses passos, construímos um contador síncrono com flip-flops JK que conta apenas números ímpares de 1 a 15 em loop, ajusta automaticamente para números ímpares se ocorrer alguma falha e inclui um botão para zerar a contagem a qualquer momento.