Curso Básico de Eletrônica Digital – para Leigos

Estas imagens e dicas abaixo são auxiliares para o curso de Eletrônica Digital, gratuito, publicado no Youtube no canal de Eilor de Almeida Marigo.

Voltado ao público leigo ou interessado em ter uma noção básica, mas prática e não só teórica, de como funciona a logica digital e como construir pequenos circuitos de automação, ou ainda entender exatamente como funciona o seu computador, mas “lá dentro” ou seja como o hardware e o software se combinam para formar a máquina.

O curso foi desenvolvido em um ambiente de Jogo, usando a técnica conhecida como ensino via Gamificação, no jogo No Man’s Sky.

No entanto você não precisa ter o jogo nem conhecimento prévio de eletrônica, basta assistir as aulas e acompanhar a execução os projetos no Youtube.

Voce pode acessar usando:

http://bit.ly/eletronicadigital

Caso voce tenha o jogo é possível executar circuitos na prática usando o Jogo.
Pode até mesmo comprar os componentes e testar em casa. Os CIs da linha 74xxx ou 40xxx trabalham com 5V e não oferecem quase nenhum risco porém é importante, neste caso, aprender as técnicas de montagem de circuitos eletrônicos antes de fazer isto.

Devido a usar um jogo como plataforma, o curso passa todos os conceitos, usando os materiais existentes no jogo, o que nos obriga a construir componentes que representam os que já existem prontos no mercado. Sempre que possível damos a equivalência com os componentes reais porém, o entendimento conceitual do funcionamento de cada um é bem fácil. Apenas “aqui fora” voce já compra muita coisa pronta, sem ter que construir cada componente como fazemos lá.

IMPORTANTE:

A Aula “0” (zero) apresenta a escola e a dinâmica do curso.

A aula 1 refere-se apenas ao jogo (como gerar energia)
Mas dá uma idéia do princípio básico de Painéis Solares em corrente contínua.
O jogo assume apenas a existência ou não de eletricidade o que não é problema para nós (até ajuda) já que a logica digital usa exatamente presença de eletricidade (nivel 1) ou sua ausência (nivel 0) para tudo.

Todas as outras aulas, da 2 até a 25 compõem o curso usando os recursos do jogo, inclusive explicando como as portas logicas são construídas.

No fim do curso construimos um computador completo rodando linguagem de maquina (mais conhecida pelos seus apelidos: Assembly ou Assembler)

Acesse o Curso Aqui:

Curso de Eletronica Digital no YouTube

Para quem Joga o No Man’s Sky no PS4

Para quem joga no PS4, é possível chegar até a base onde fica a escola.
Ela fica na Galaxia de Euclides, a primeira do jogo, bem no centro da Galaxia, nestas coordenadas:

0807:0080:0801:0003

Planeta: Digital School Sigma ou Himoniushee Waza (nome orignal)
Sistema: Digital Electronics School BR ou Eeigwo (nome original)

Coordenadas Terrestres:
Saída do Portal: +12,21 +57,38
Prédio 1: +12,18 +57,41
Campus 2: +11,93 +57,03
Local do Computador: +11,95 +57,02

Para localizar com mais facilidade o portal, saindo da estação espacial aponte para o planeta mais próximo e voe diretamente para o leste (direita) até que um outro planeta comece a surgir no horizonte. Neste momento voce estará quase em cima da base. Pouse e procure pelas coordenadas.

Coordenadas do portal da Base 1 (Escola) – O computador está no Campus 2 ao lado, use o teletransporte de curto alcance na base 1 após assistir as aulas de digital ou vá à pé mesmo.

Atenção:

É importante notar que, se você simplesmente for lá, não vai encontrar nada porque precisa entrar pelo menos uma vez no meu jogo para que a base carregue para você.
O jeito mais fácil é entrar no meu jogo e se encontrar comigo no transporte da Anomalia. Lá voce vê todas as minhas bases e pode ir para G1 Digital School Sigma. Ou combinar comigo para que eu espere você na base antes de voce entrar no meu jogo.

meu ID na PSN: Eilor_A_Marigo

Imagens Auxiliares

Portas lógicas básicas, repare que neste desenho você não precisa se preocupar com as alimentações, basta desenhar as portas. No entanto se comprar os CIs verá que eles tem 2 pinos extras para ligar VCC (+5 volts) e VDD ou GND (zero) que voce pode obter de um carregador de celular por exemplo.

DICAS: Linha de raciocínio para construir os circuitos lógicos:

  • Cada Saída de um circuito lógico aciona algo. Abre uma porta, acende uma lampada, liga um motor, etc.
  • Cada sensor, chave ou botão será sempre uma entrada de circuito lógico.
  • Circuitos lógicos anteriores podem ser usados como entrada dos circuitos seguintes.
  • Tendo suas entradas e saídas voce vai criar um circuito separado para cada Saída, usando portas lógicas e inversores.
  • Raciocine: como devo combinar os sinais de entrada usando portas lógicas e inversores para que a minha saída seja ligada ou desligada na condição correta?
  • Aí use os próprios nomes das portas para criar o raciocínio: A chave tal E o sinal do compressor devem estar ligados OU o botão tal, para acender a lampada tal.
  • Você pode interligar livremente saídas de portas lógicas com entradas de outras portas, inclusive entradas com outras entradas mas não pode ligar uma saída com outra saída. Use uma porta lógica de 2 entradas se quiser combinar os sinais de 2 saídas em um só.
  • Existe uma técnica específica chamada Algebra de Boole, composta de Tabelas da Verdade (Truth Tables) e formas de simplificação, Diagramas de Karnaugh, porém o nosso curso vai seguir o máximo possível pelo caminho intuitivo pois seu objetivo é que vocêentenda o funcionamento.

O livro: Elementos de Eletrônica Digital de Ivan Idoeta e Francisco Gabriel Capuano é o melhor que existe.

Tem a explicação completa do funcionamento desta área da Eletrônica.

Os aplicativos de resolução de Mapas de Karnaugh podem ser encontrados na Play Store e na Apple Store, mas não são objetivo do curso na fase inicial.

Procure por Karnaugh

O Karnaugh Kmap Solver (FULL) de Adriano Moutinho é muito bom.
O FLXKarnaugh de Félix Galindo Allué também.

Aula 12 – Software

=========================================

Nossa instrução tem 6 bits:

TTCCCC

TT = TOKEN: 2 primeiros bits, diz o que faz a instrução.
CC = COMPLEMENTO: Últimos 4 bits complementam a informação do Token.

Os Tokens:
10 = Gravar uma Saída
11 = Ler uma entrada para o acumulador A
01 = Comparar e Decidir (Desvios Condicionais)
00 = Desviar para um endereço. (GoTo ou Jump)

Set de Instruções completo:

Instrução “00” : JMP

Codigo de maquina: 00eeee (zero, zero, eeee)

Função: Carrega o endereço eeee (4 bits) no Contador de programa.
O programa continuará a ser executado a partir da instrução contida no endereço eeee.
Nosso computador tem 4 bits de endereçamento portanto consegue endereçar 16 instruções sendo a 0000 (zero) o ponto de reset.

A instrução 000000 ou RST (restart)

A instrução RST ou Restart em linguagem de máquina equivale ao GoTo 0, JMP 0, e sua função é reiniciar o programa.
Este processo chama-se Warm Start ou partida a quente quando um programa que já está funcionando precisa retornar à sua posição inicial. Nos computadores pode ser usada quando voce aciona:
Menu -> Ligar/Desligar -> Reiniciar, após uma série de providências iniciais ou ainda por um software de atualização do sistema.

Instrução “10” : OUT

Codigo de maquina: 10 dddd

Coloca os 4 bits “dddd” na saída da placa permitindo que acionem coisas no exterior.

Descrição: A instrução OUT na nossa linguagem de máquina é definida apenas pelos 2 bits mais significativos (bit 5 bit 4) na sequencia “10”.

Os outros 4 bits levam as informações 1 ou zero que devem ser disponibilizadas no exterior da placa para o uso que voce quiser ou tiver definido.

Nos computadores é usada em qualquer interação de escrita no “mundo exterior” da placa eletrônica (placa mãe) como escrever no vídeo, gravar um Pen drive, tocar uma música, acender um LED, etc.

No seu carro é a instrução que dispara as velas do motor na ignição eletrônica, injeta combustivel, aciona a pastilha de freio do ABS, trava suas portas e sobe os vidros.

No seu prédio é a instrução que abre e fecha a porta do seu elevador, faz com que ele suba, desça. É o que gira o prato do microondas, Lava sua roupa, Aciona o compressor da geladeira, etc…

Instrução “11” : IN

Codigo de maquina: 1 1 cccc

Lê os 4 bits “dddd” da entrada da placa e coloca em um registrador interno.

Descrição: A instrução IN na nossa linguagem de máquina é definida apenas pelos 2 bits mais significativos (bit 5 bit 4) na sequencia “11”.

Ela lê os 4 bits da entrada do computador e coloca em um registrador de 4 bits interno.

Porém, quando voce faz uma leitura, normalmente quer saber como está um dos 4 bits apenas. Então usamos os outros 4 bits da instrução IN (cccc) como comparador. Ou seja define o bit que voce realmente está interessado em ler.

Exemplo:
IN bit2 = 110100 = 11 0100
Onde 11 = Leia e 0100 identifica o terceiro bit (bit2) que é o que voce realmente quer saber como está lá fora.

Nos computadores reais é usada em qualquer interação de leitura no “mundo exterior” da placa eletrônica (placa mãe) como ler seu teclado, seu mouse, um arquivo que está no PenDrive, sensor de um alarme, etc.

No seu carro é a instrução que le o pedal do freio para acender a luz de freio, le o botão de levantar o vidro, lê a posição do pedal do acelerador para ajustar quanto combustivel manda para o motor (se o seu carro for bem moderno)

No seu prédio é a instrução que le o botão dos andares, vê se tem alguém perto da porta do elevador para impedir que ela feche, mede a temperatura interna da geladeira para ver se aciona ou não o compressor , etc…

Instrução “01” : JNZ

Codigo de maquina: 01 eeee

Na instrução IN voce pediu para ler os 4 bits de entrada e comparar com um valor de 4 bits que voce forneceu.
Esta comparação logicamente resulta em 2 possibilidades:

Verdadeiro ou SIM, o bit lá fora estava em 1.
Falso ou NÃO, o bit que voce quis testar estava em zero.

A instrução JNZ ou Jump se não zero, desvia o programa para o endereço eeee que voce fornece nela mesma caso o resultado da comparação seja SIM.
Se a comparação der NÃO como resultado a instrução JNZ ignora o endereço que voce forneceu e prossegue normalmente na instrução seguinte.

Esta instrução equivale ao losango de decisão “sim / não” em fluxogramas e é a base da inteligência do computador, juntamente com a capacidade de comparar valores.