Projete um contador assíncrono de módulo 13 crescente (contagem de 0 a 12).

Passo 1

Beleza, vamos lá! Você pediu para projetar um contador assíncrono de módulo 13 que conta de 0 a 12. Isso está relacionado à eletrônica digital, especificamente ao design de contadores utilizando flip-flops. Para resolver isso, vamos entender como funciona um contador assíncrono, escolher os componentes certos e configurar as ligações para que ele reinicie a contagem após 12.

Passo 2

Primeiro, vamos entender o que é um contador assíncrono. É um tipo de contador digital onde cada flip-flop é acionado pelo flip-flop anterior, e não por um sinal de clock comum. Isso significa que o sinal de saída de um flip-flop atua como o clock para o próximo, causando um pequeno atraso conhecido como “ripple effect”.

Passo 3

Agora, precisamos decidir quantos flip-flops serão usados. Um contador de módulo 13 precisa representar 13 estados diferentes (de 0 a 12). Para determinar o número mínimo de flip-flops necessários, usamos a fórmula:
Onde é o número de flip-flops. Testando:
(não é suficiente)
(suficiente)
Então, usaremos 4 flip-flops.

Passo 4

Cada flip-flop representará um bit binário, formando um número de 4 bits capaz de contar até 15 (de 0 a 15). Mas como queremos apenas até 12, precisamos adicionar uma lógica de reset que volta o contador a 0 quando ele atinge 13 (1101 em binário).

Passo 5

Vamos escolher flip-flops JK para facilitar a configuração. Configuramos cada flip-flop para alternar de estado a cada pulso de clock (modo toggle). Para isso, conectamos tanto J quanto K a 1.

Passo 6

A próxima etapa é implementar a lógica de reset. Queremos que, quando o contador atingir 13 (1101), ele seja resetado. Para isso, usamos uma porta lógica AND que detecta quando os bits Q3, Q2 e Q0 estão em 1 (já que 1101 tem Q3=1, Q2=1 e Q0=1). Quando essa condição é verdadeira, enviamos um sinal de reset que coloca todos os flip-flops de volta a 0.

Passo 7

Por último, conectamos os flip-flops em cascata:
  • O clock do primeiro flip-flop é conectado à fonte de clock externa.
  • O clock do segundo flip-flop é conectado à saída Q do primeiro.
  • O clock do terceiro flip-flop é conectado à saída Q do segundo.
  • O clock do quarto flip-flop é conectado à saída Q do terceiro.

Resposta

Então, para projetar um contador assíncrono de módulo 13 crescente:
  1. Utilize 4 flip-flops JK configurados no modo toggle.
  2. Conecte os flip-flops em cascata, com cada um recebendo o clock da saída do anterior.
  3. Implemente uma lógica de reset usando uma porta AND que detecta quando o contador alcança 13 (Q3=1, Q2=1, Q0=1) e reseta todos os flip-flops a 0.
  4. Isso fará com que o contador cicle de 0 a 12 continuamente.

Exercícios relacionados

Suponha que, agora, todo nó da árvore AVL tem um novo campo chamado parent que nada mais é que um ponteiro para nó pai. Como a raiz não tem pai, seu campo parent aponta para nulo).
Implemente todas as funções da árvore AVL vistas em sala iterativamente (sem usar recursão) e atualize os campos parent de cada nó adequadamente.
São dadas duas árvores AVL e . Escreva uma função que faça a intercalação (merge) das duas árvores AVL fornecidas gerando, ao final, uma árvore AVL válida. Dado que a primeira árvore tem nós e a segunda árvore tem nós, sua função de intercalação deve levar tempo . Suponha que os números de nós e das árvores também sejam dados como entrada.
Projete um contador Johnson de 5 bits disparado na borda de subida de um sinal de clock. O que você deve mudar para que esse circuito vire um contador em anel? Descreva o comportamento de ambos os circuitos.
Diferencie um latch de um flip-flop. Com relação aos flip-flops, descreva o funcionamento dos 4 tipos existentes e as possíveis formas de dispará-los.