
Passo 1 de 9
Defina o comportamento da sequência
Defina os elementos e o comportamento de uma sequência de sinalização com três estados.
Trilha de aprendizado · Nível 8 · Tutorial 10
Ao concluir, o aluno será capaz de transformar uma sequência simples de sinalização em uma máquina de estados de hardware, representá-la por diagrama e tabela e verificar suas transições sem usar programação.
Defina o comportamento da sequência
Defina os elementos e o comportamento de uma sequência de sinalização com três estados. 2 min
Separe memória, decisão e saídas
Separe armazenamento, decisão de transição e decodificação das saídas em uma máquina de Moore. 2 min
Desenhe transições e permanências
3 min
Transforme o diagrama em tabela
Converta o diagrama funcional em uma tabela de transição completa e mantenha as saídas de Moore vinculadas ao estado atual. 3 min
Codifique os estados em bits
Converta os três estados simbólicos da sequência em códigos de dois bits, preservando a tabela de transição. 3 min
Defina inicialização e recuperação
Complete a máquina com reset síncrono prioritário e recuperação explícita do código 11. 3 min
Represente a lógica de próximo estado e saída
Converta a tabela binária completa em funções para as entradas D e para as saídas da máquina de Moore. 4 min
Verifique a sequência no tempo
Acompanhe a máquina por bordas de clock e reconheça as condições necessárias para que essa previsão seja fisicamente válida. 3 min
Conclua e valide o sequenciador
Consolide as representações do sequenciador e valide os casos de operação, reset e recuperação. 3 min

Passo 1 de 9
Defina os elementos e o comportamento de uma sequência de sinalização com três estados.
Uma máquina de estados descreve um sequenciamento no qual cada etapa tem significado e a mudança pode depender de uma condição. Diferentemente de um contador, que apenas percorre valores, ela associa cada situação armazenada a um comportamento observável.
Neste caso, o circuito controla duas sinalizações, A e B, usando um comando lógico C. As mudanças de etapa ocorrem nas bordas ativas do clock; o clock organiza quando o estado pode mudar, mas não é o comando de solicitação.

O estado armazenado identifica a etapa atual; C é uma entrada externa, e as saídas A e B mostram a etapa ao ambiente.
Vamos especificar três estados simbólicos:
Um estado é a informação armazenada que, junto com as entradas, basta para decidir a continuação do comportamento. Aqui, saber somente que C está em 1 não basta: é preciso saber em qual etapa a máquina está.
Exemplo
Considere C mantido em nível ativo:
Assim, manter C ativo não reinicia A repetidamente: depois de iniciar, a máquina sabe que já passou pela etapa A porque armazena seu estado.
Associe cada elemento à sua função no caso descrito.
Faça as associações corretas.
Toque em um item e depois no par correspondente.
C permanece ativo depois que a máquina iniciou a sequência e já chegou a SINAL_B. O que deve acontecer na próxima borda ativa?
Escolha o comportamento correto.
Nesta etapa, você definiu o comportamento antes de representar a implementação.
A seguir, esses papéis serão organizados nos blocos de hardware da máquina.

Passo 2 de 9
Separe armazenamento, decisão de transição e decodificação das saídas em uma máquina de Moore.
Uma máquina de estados separa o que está guardado, a decisão do próximo passo e o que é mostrado nas saídas. Essa divisão torna a sequência mais clara do que apenas acompanhar uma contagem.
No nosso caso, o registrador guarda um entre três estados: REPOUSO, SINAL_A ou SINAL_B. O comando C entra na lógica de decisão; as saídas A e B indicam o estado que está ativo.

O estado atual alimenta tanto a decisão do próximo estado quanto a geração das saídas.
1. Lógica de próximo estado: recebe o estado atual e o comando C. Ela calcula qual estado deverá ser carregado na próxima borda ativa do clock.
2. Registrador de estado: armazena o estado atual. Na borda ativa, captura o próximo estado calculado. Entre bordas, mantém seu conteúdo.
3. Lógica de saída: observa o estado atual armazenado e produz A e B. Como as saídas vêm do estado atual, este é um modelo de Moore.
Dica
A realimentação não é um erro: o valor armazenado sai do registrador e volta para a lógica de próximo estado. Assim, a máquina pode decidir o passo seguinte a partir do ponto em que está.
O clock não escolhe a sequência e não equivale ao comando C. Ele apenas determina quando o registrador troca para o próximo estado já calculado.
Se o estado atual é SINAL_A, quais saídas o modelo de Moore produz?
A = 1 e B = 0. As saídas são definidas pelo estado atual armazenado, não diretamente por C.
A associação de saídas é fixa para cada estado atual. C pode influenciar a decisão sobre o futuro, mas não muda diretamente A ou B enquanto o estado armazenado não mudar.
| Estado atual | A | B |
|---|---|---|
| REPOUSO | 0 | 0 |
| SINAL_A | 1 | 0 |
| SINAL_B | 0 | 1 |
Exemplo
Exemplo: estando em SINAL_B, se C passar a 0, a lógica de próximo estado calcula REPOUSO. Porém, até a próxima borda ativa, o registrador ainda contém SINAL_B; portanto, A = 0 e B = 1 nesse intervalo. Depois da borda, o registrador passa a REPOUSO e ambas as saídas ficam em 0.
Associe cada elemento à sua função principal na arquitetura da máquina.
Faça as correspondências.
Toque em um item e depois no par correspondente.
Em SINAL_B, C torna-se 0 entre duas bordas. Antes da próxima borda ativa, o registrador já está em REPOUSO e as saídas são A = 0, B = 0.

Passo 3 de 9
Um diagrama de estados mostra o comportamento da máquina sem ainda escolher bits nem portas lógicas. Cada nó representa o estado armazenado; como o modelo é de Moore, as saídas pertencem ao nó:
As setas mostram para qual estado a máquina irá na próxima borda ativa do clock. O rótulo da seta informa a condição de entrada C que seleciona aquele caminho.

Os nós informam as saídas; os arcos informam a condição para o próximo estado.
Complete os arcos a partir dos requisitos da sequência:
Assim, manter C=1 não reinicia a sequência: depois de SINAL_A, a máquina chega a SINAL_B e permanece ali enquanto C continuar ativo.
Exemplo
A passagem de SINAL_A para SINAL_B não ocorre imediatamente ao entrar em SINAL_A. A máquina permanece em SINAL_A durante o ciclo iniciado naquela borda, mantendo A=1. Somente na borda ativa seguinte ela armazena SINAL_B e passa a apresentar B=1.
Dica
Um laço é um arco que sai de um estado e volta ao próprio estado. Ele é essencial: mostra que, sob determinada condição, o estado armazenado não muda na próxima borda.
Neste caso, desenhe um laço em REPOUSO rotulado C=0 e outro em SINAL_B rotulado C=1.
Um diagrama possui o arco SINAL_B → REPOUSO rotulado C=0, mas não mostra nenhum outro arco saindo de SINAL_B. O que falta?
Descreva os arcos que devem sair de REPOUSO, incluindo uma condição para C=0 e outra para C=1. Indique o estado de destino em cada caso.
Escreva pelo menos 35 caracteres (0/35).

Passo 4 de 9
Converta o diagrama funcional em uma tabela de transição completa e mantenha as saídas de Moore vinculadas ao estado atual.
Uma tabela de transição transforma cada seta — inclusive os laços de permanência — em uma linha. Para montá-la, combine o estado atual com cada valor possível de C e registre o próximo estado.
Como há três estados e C pode ser 0 ou 1, existem 3 × 2 = 6 linhas funcionais. Leia uma linha assim: “se este é o estado armazenado antes da borda ativa e C tem este valor, este será o estado armazenado depois da borda”.
Ainda não use códigos binários: nesta tabela, os nomes REPOUSO, SINAL_A e SINAL_B tornam o comportamento mais fácil de conferir.

Cada combinação de estado atual e valor de C deve ter um único destino.
Use o diagrama para completar as três linhas abaixo. Elas verificam uma transição incondicional e os dois laços de permanência. Escreva somente o nome do próximo estado.
Estado atual REPOUSO, C=0 → próximo estado: ____
Estado atual SINAL_A, C=0 → próximo estado: ____
Estado atual SINAL_B, C=1 → próximo estado: ____
Depois de conferir as condições, a tabela funcional completa fica assim. As seis linhas cobrem todos os valores possíveis de C em cada estado; portanto, não há condição sem destino nem condição com dois destinos.
| Estado atual | C | Próximo estado |
|---|---|---|
| REPOUSO | 0 | REPOUSO |
| REPOUSO | 1 | SINAL_A |
| SINAL_A | 0 | SINAL_B |
| SINAL_A | 1 | SINAL_B |
| SINAL_B | 0 | REPOUSO |
| SINAL_B | 1 | SINAL_B |
Exemplo
Observe como cada tipo de arco aparece na tabela:
Isso permite conferir o diagrama de modo sistemático: para cada estado atual, devem existir exatamente duas linhas, uma para cada valor de C.
A tabela de transição responde “qual será o estado depois da próxima borda?”. Já as saídas de Moore respondem “o que está ativo no estado armazenado agora?”. Por isso, associe A e B ao estado atual, não ao próximo estado.
Por exemplo, na linha “estado atual SINAL_A, C=1, próximo estado SINAL_B”, A ainda vale 1 e B vale 0 até a borda que armazenará SINAL_B. O destino futuro não altera as saídas antes dessa borda.
O estado atual é SINAL_A e C=1; a tabela prevê SINAL_B como próximo estado. Quais são as saídas antes da próxima borda ativa?
As saídas podem ser registradas em uma tabela separada para evitar confundir presente e futuro.
| Estado atual | A | B |
|---|---|---|
| REPOUSO | 0 | 0 |
| SINAL_A | 1 | 0 |
| SINAL_B | 0 | 1 |

Passo 5 de 9
Converta os três estados simbólicos da sequência em códigos de dois bits, preservando a tabela de transição.
Até aqui, a tabela usa nomes: REPOUSO, SINAL_A e SINAL_B. Para armazenar o estado em hardware, esses nomes precisam ser associados a bits no registrador.
Com n bits, um registrador representa 2ⁿ combinações. Como esta máquina tem 3 estados, 1 bit não basta: ele representa apenas 0 e 1. Com 2 bits, há quatro combinações possíveis. Portanto, use dois flip-flops D, cujas saídas formam o estado atual Q1Q0.
Os flip-flops guardam o código; eles não sabem, por si só, o significado de REPOUSO ou SINAL_A. Esse significado vem da codificação escolhida.

Dois flip-flops armazenam quatro códigos possíveis; apenas três representam etapas funcionais da sequência.
Dica
A quantidade de estados determina a largura mínima do registrador: para 3 estados, são necessários 2 bits.
Vamos adotar esta codificação de referência. Ela é uma escolha de projeto consistente com a tabela funcional já construída.
Codificação simbólica e binária da máquina
| Estado simbólico | Código Q1Q0 | Saídas A, B |
|---|---|---|
| REPOUSO | 00 | 0, 0 |
| SINAL_A | 01 | 1, 0 |
| SINAL_B | 10 | 0, 1 |
| Código não utilizado | 11 | ainda não definido neste step |
Atenção
O código 11 não cria um quarto estado funcional. Ele apenas é a combinação que sobra ao usar dois bits para representar três estados.
Por enquanto, registre-o como código não utilizado. A regra para tratar esse código será definida no próximo step; não o considere uma condição indiferente na implementação final.
Substitua os nomes da tabela funcional pelos códigos adotados. As transições continuam exatamente as mesmas; muda somente a forma de escrever o estado.
Exemplo: em REPOUSO, C = 1 iniciava a sequência indo para SINAL_A. Com os códigos, isso vira 00 → 01 na próxima borda ativa.
Veja algumas linhas já convertidas. Compare estado atual, entrada e próximo estado — não confunda o próximo código com as saídas do estado atual.
| Estado atual Q1Q0 | C | Próximo estado Q1⁺Q0⁺ | Leitura simbólica |
|---|---|---|---|
| 00 | 0 | 00 | REPOUSO permanece |
| 00 | 1 | 01 | REPOUSO vai para SINAL_A |
| 01 | 0 ou 1 | 10 | SINAL_A vai para SINAL_B |
| 10 | 1 | 10 | SINAL_B permanece |
| 10 | 0 | 00 | SINAL_B vai para REPOUSO |
Dica
O sobrescrito + identifica o valor que será armazenado depois da próxima borda ativa. Assim, Q1⁺Q0⁺ é calculado a partir do estado atual e de C; Q1Q0 só muda na borda do clock.
Complete a conversão da transição: com estado atual 01 e qualquer valor de C, o próximo estado é {{1}}.
Digite os dois bits do próximo estado.
Escreva pelo menos 2 caracteres (0/2).
Qual combinação ficou sem estado funcional associado nesta codificação?
Escreva pelo menos 2 caracteres (0/2).

Passo 6 de 9
Complete a máquina com reset síncrono prioritário e recuperação explícita do código 11.
Até aqui, os três estados funcionais usam 00 (REPOUSO), 01 (SINAL_A) e 10 (SINAL_B). Como dois bits também podem formar 11, a especificação precisa dizer o que acontece tanto na inicialização quanto nesse código não utilizado.
Vamos acrescentar a entrada R, um reset síncrono ativo em nível alto. Quando R=1 na borda ativa do clock, o registrador deve assumir REPOUSO (00), com prioridade sobre o comando C.

R e C são avaliados para definir o valor que será armazenado na próxima borda; R tem prioridade.
Reset síncrono não muda o estado no instante em que R sobe. Ele só é aplicado na próxima borda ativa do clock. Assim, se a máquina está em SINAL_B e R passa a 1 entre duas bordas, ela permanece em SINAL_B até a borda seguinte; então vai para 00.
No diagrama, represente isso como uma regra global: “em qualquer estado, se R=1 na borda, próximo estado = REPOUSO”. Não é uma seta combinacional instantânea nem um novo estado da sequência.
Atenção
Com R=0, trate 11 de modo explícito: se o registrador estiver em 11, o próximo estado será 00 na próxima borda válida, qualquer que seja C. Isso é recuperação.
Enquanto o estado atual for 11, A=0 e B=0 após a estabilização da lógica de saída. Portanto, 11 não aciona nenhum dos dois sinais. Não o trate como condição indiferente na implementação.
Regras adicionais à tabela funcional já construída.
| Condição na borda ativa | Próximo estado | A e B após estabilização |
|---|---|---|
| R = 1, qualquer estado e C | 00 (REPOUSO) | A=0, B=0 |
| R = 0 e estado atual = 11, qualquer C | 00 (REPOUSO) | No estado 11: A=0, B=0 |
| R = 0 e estado funcional | Conforme tabela anterior | Conforme o estado atual |
Exemplo
Considere que, pouco antes de uma borda ativa, o estado atual é 10 (SINAL_B), C=1 e R=1.
A prioridade de R faz o próximo estado ser 00. Depois que o registrador atualiza e a lógica se estabiliza, A=0 e B=0. O valor de C não altera essa decisão nessa borda.
Exemplo
Agora considere R=0, estado atual 11 e C=1. A máquina não deve iniciar SINAL_A nem permanecer em 11: na próxima borda, ela vai para 00. Se quiser iniciar a sequência, C deverá ser considerado novamente pela regra normal a partir de REPOUSO em uma borda posterior.
Dica
O reset fornece um ponto inicial conhecido quando aplicado. A recuperação de 11 apenas define como voltar ao comportamento previsto se esse código aparecer. Uma regra não substitui a outra.
Verdadeiro ou falso: se R passa a 1 entre duas bordas de clock, o estado do registrador muda imediatamente para 00.
Complete com os próximos estados, nesta ordem: (1) estado atual 10, C=1, R=1; (2) estado atual 11, C=0, R=0. Em ambos os casos, o próximo estado é ___.

Passo 7 de 9
Converta a tabela binária completa em funções para as entradas D e para as saídas da máquina de Moore.
Com R = 0, cada bit do próximo estado vira diretamente a entrada D do flip-flop correspondente:
D1 recebe o próximo valor de Q1.D0 recebe o próximo valor de Q0.Vamos chamar as funções calculadas sem reset de F1 e F0. Assim, F1 = Q1⁺ e F0 = Q0⁺. Pouco antes da borda ativa, a lógica combinacional calcula essas funções usando o estado atual Q1Q0 e o comando C. Na borda, os dois flip-flops capturam simultaneamente D1D0.
Há oito combinações a conferir: quatro códigos atuais multiplicados pelos dois valores de C. As duas linhas do código não utilizado 11 também entram na tabela: ambas devem produzir próximo estado 00.

F1 e F0 descrevem o próximo estado funcional; o reset seleciona 00 antes das entradas D. As saídas A e B são decodificadas do estado atual.
A tabela abaixo é a base das funções. Leia Q1⁺Q0⁺ como o valor calculado para ser armazenado na próxima borda, com reset inativo.
| Q1Q0 atual | C | Q1⁺Q0⁺ | F1 | F0 |
|---|---|---|---|---|
| 00 | 0 | 00 | 0 | 0 |
| 00 | 1 | 01 | 0 | 1 |
| 01 | 0 | 10 | 1 | 0 |
| 01 | 1 | 10 | 1 | 0 |
| 10 | 0 | 00 | 0 | 0 |
| 10 | 1 | 10 | 1 | 0 |
| 11 | 0 | 00 | 0 | 0 |
| 11 | 1 | 00 | 0 | 0 |
Para obter uma função pela soma de produtos, selecione as linhas em que o bit de saída vale 1. Cada linha gera um produto com as variáveis em seu valor observado; depois, some logicamente esses produtos.
Para F1, há três linhas com valor 1:
Q1Q0 = 01, com C = 0;Q1Q0 = 01, com C = 1;Q1Q0 = 10, com C = 1.As duas primeiras diferem somente em C. Como ambas devem ativar F1, podem ser reunidas no termo ¬Q1 · Q0: esse termo vale 1 para 01, independentemente de C. A terceira linha fornece Q1 · ¬Q0 · C.
Portanto, sem buscar uma minimização mais avançada: F1 = ¬Q1 · Q0 + Q1 · ¬Q0 · C.
Para F0, somente uma linha tem valor 1: estado atual 00 e C = 1. O produto dessa linha é ¬Q1 · ¬Q0 · C.
Logo, a função funcional do bit menos significativo é:
F0 = ¬Q1 · ¬Q0 · C
Note o efeito da recuperação: em 11, tanto F1 quanto F0 devem valer 0, para que a próxima borda leve o registrador a 00. Por isso, esse código não pode ser omitido como condição indiferente.
Exemplo
Exemplo: para Q1Q0 = 10, C = 1 e R = 0:
F1 = ¬1 · 0 + 1 · ¬0 · 1 = 1F0 = ¬1 · ¬0 · 1 = 0Assim, D1D0 = 10 e a máquina permanece em SINAL_B na próxima borda. Para o mesmo estado com C = 0, as duas funções valem 0, produzindo o retorno a 00.
Complete os produtos que formam as funções funcionais F1 e F0. Use · para AND e ¬ para NOT.
F1 = +
F0 = Agora inclua o reset síncrono prioritário. Quando R = 1, o próximo estado deve ser 00, qualquer que seja o valor de F1 e F0. Selecione entre o próximo estado funcional e zero para cada entrada D:
D1 = ¬R · F1
D0 = ¬R · F0
Com R = 0, as entradas D preservam as funções funcionais. Com R = 1, ambas são forçadas a 0 antes da borda, sem bloquear, alterar ou criar lógica no clock.
As saídas de Moore usam somente o estado atual:
A = ¬Q1 · Q0
B = Q1 · ¬Q0
Assim, 01 ativa A, 10 ativa B e os códigos 00 e 11 mantêm as duas saídas inativas.
Complete a expressão da entrada que alimenta o flip-flop de Q1:
D1 = ____ · F1
Associe cada expressão ao seu papel na máquina.
Toque em um item e depois no par correspondente.

Passo 8 de 9
Acompanhe a máquina por bordas de clock e reconheça as condições necessárias para que essa previsão seja fisicamente válida.
Em cada borda ativa, faça o rastreamento em duas etapas:
Com R = 0: REPOUSO vai para SINAL_A quando C = 1; SINAL_A sempre vai para SINAL_B; e SINAL_B permanece enquanto C = 1, retornando a REPOUSO quando C = 0. Com R = 1, o reset prioritário leva o estado a REPOUSO na borda.
As saídas são de Moore: A e B são definidas pelo estado que está armazenado, não diretamente por C.

O valor de C antes da borda escolhe o estado seguinte; A e B acompanham o estado armazenado após os atrasos físicos.
Considere R = 0 em todas as linhas e o estado inicial REPOUSO. A tabela mostra uma solicitação mantida ativa: ela inicia a sequência, mas não reinicia SINAL_A nem SINAL_B.
| Borda | Estado antes | C | Estado após | A após | B após |
|---|---|---|---|---|---|
| 1 | REPOUSO | 1 | SINAL_A | 1 | 0 |
| 2 | SINAL_A | 1 | SINAL_B | 0 | 1 |
| 3 | SINAL_B | 1 | SINAL_B | 0 | 1 |
| 4 | SINAL_B | 0 | REPOUSO | 0 | 0 |
| 5 | REPOUSO | 1 | SINAL_A | 1 | 0 |
Exemplo
Na borda 2, C continua em 1, mas o estado antes da borda é SINAL_A. Portanto, a regra aplicável é a transição incondicional de SINAL_A para SINAL_B. Não se volta a SINAL_A enquanto C permanece ativo.
A liberação de C só é observada quando a máquina já está em SINAL_B: na borda 4, C = 0 produz o retorno a REPOUSO. Uma nova solicitação em uma borda posterior reinicia a sequência.
No rastreamento anterior, imediatamente antes da borda 3 o estado é SINAL_B e C = 1. Qual estado fica armazenado logo após essa borda?
Estado após a borda 3: ____
Qual afirmação descreve corretamente o instante da borda ativa?
A tabela anterior é uma verificação funcional: ela supõe que C e R obedecem às condições de temporização. Para que a borda tenha resultado garantido, essas entradas precisam chegar com antecedência suficiente para que as entradas D respeitem setup e hold.
Assim, uma mudança de C muito próxima da borda não permite escolher com segurança a linha da tabela. O estado lógico muda na borda; fisicamente, a saída Q muda após o atraso clock-para-Q e A/B se estabilizam após os atrasos da lógica de saída.

Se C ou R variar dentro da janela de setup ou hold, o resultado capturado não é garantido.
Atenção
Mesmo com entradas válidas, saídas Moore implementadas por lógica combinacional não são automaticamente livres de pulsos espúrios durante mudanças de estado. Além disso, a recuperação prevista de 11 para 00 define o comportamento funcional na próxima borda, mas não elimina risco de metastabilidade por violação de temporização.
Esses limites exigem atenção ao circuito físico; não devem ser ignorados por uma simulação lógica ideal.
C muda dentro da janela de setup imediatamente antes de uma borda ativa, com R = 0. O que se pode afirmar?

Passo 9 de 9
Consolide as representações do sequenciador e valide os casos de operação, reset e recuperação.
Revise o sequenciador como uma cadeia de representações equivalentes: requisitos → diagrama → tabela funcional → códigos de estado → funções das entradas D e das saídas → rastreamento por bordas.
A validação está correta quando todas contam a mesma história. Para este caso, essa história é:
As saídas A e B são de Moore: dependem do estado armazenado atual, não diretamente de C.

Use esta visão como conferência: a sequência, os bits, o reset e as saídas precisam permanecer coerentes entre si.
Rastreie cada linha pela borda ativa. A coluna “saídas após a borda” vem do estado que acabou de ser armazenado.
| Antes da borda | Entradas na borda | Após a borda | Saídas após a borda |
|---|---|---|---|
| 00 (REPOUSO) | R=0, C=1 | 01 (SINAL_A) | A=1, B=0 |
| 01 (SINAL_A) | R=0, C=1 | 10 (SINAL_B) | A=0, B=1 |
| 10 (SINAL_B) | R=0, C=1 | 10 (SINAL_B) | A=0, B=1 |
| 10 (SINAL_B) | R=0, C=0 | 00 (REPOUSO) | A=0, B=0 |
| 01 (SINAL_A) | R=1, C=1 | 00 (REPOUSO) | A=0, B=0 |
| 11 (não utilizado) | R=0, C=1 | 00 (REPOUSO) | A=0, B=0 |
Complete a regra funcional: se o estado atual é 11 e R=0, o próximo estado deve ser {{blank}} em qualquer valor de C.
Complete: se o estado atual é 10, C=1 e R=1 na borda ativa, o estado armazenado após essa borda será {{blank}}.
Uma tabela proposta contém a linha: estado atual 01, R=0, C=1 → próximo estado 01. Essa linha está correta?
Explique a correção com suas palavras: por que a linha 01, R=0, C=1 → 01 é incompatível com a sequência? Mencione o próximo estado correto e o efeito que o erro teria na saída A.
Escreva pelo menos 80 caracteres (0/80).
Resumo
Parabéns! Você concluiu: Máquinas de estados para sequenciamento digital
Você concluiu este nível!
Agora você vai iniciar: Programação básica de microcontroladores
Primeiro programa no Arduino Uno R3Prepare as ferramentas no próprio computador e compile e grave um programa mínimo em um Uno R3 próprio, identificando os blocos do microcontrolador e o ciclo básico de execução.Milhares de cursos online em vídeo, ebooks e áudiobooks.
Para testar seus conhecimentos no decorrer dos cursos online
Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail
Baixe nosso aplicativo pelo QR Code ou pelos links abaixo:.
+ de 10 milhões
de alunos
Certificado grátis e
válido em todo o Brasil
60 mil exercícios
gratuitos
4,8/5 classificação
nas lojas de apps
Cursos gratuitos em
vídeo, ebooks e audiobooks