Os Circuitos Lógicos são componentes que apresentam a forma lógica mais simples e de baixo nível na eletrônica, onde o seu entendimento se faz necessário para o aprendizado de diversas áreas, como programação, eletrônica, comandos elétricos e até mesmo em programações de CLP’s.
Um circuito lógico se faz importante quando, por exemplo, é necessário controlar uma ou mais saídas através da sequência de acionamento das entradas.
Materiais necessários
Para fazermos as montagens de todos os itens precisaremos dos componente:
- 1 x Porta NOT (74HC04n)
- 1 x Porta AND (74HC08n)
- 3 x Porta OR (74HC32n)
- 2 x Chave DIP Switch 4 Vias
- Jumpers Macho/Macho
- Resistores 1 kΩ
- Resistores 220 Ω
- Fonte 5 V
Não é obrigatório, mas a leitura prévia do post Introdução às portas lógicas para microcontroladores é recomendada.
O que são os circuitos lógicos e portas lógicas?
Os circuitos lógicos são componentes que trabalham com operações booleanas ou binárias (0 e 1, Verdadeiro e Falso ou High e Low), sendo elas : E (AND), OU (OR), NOT (NÃO). Os CI’s (Circuitos Integrados) lógicos são componentes que possuem um agrupamento de portas lógicas em seu componente, capazes de identificar e executar a lógica de Boole (Lógica Booleana), através da tensão nos pinos de entrada, identificando os valores altos ou baixos nos pinos e enviando a resposta correspondente ao pino de saída.
OBS: Nós iremos utilizar os CI’s da família 74HC para representar fisicamente o circuito.
Porta AND
Se e, somente se, todas as entradas estiverem em estado lógico alto, ou seja, uma tensão positiva e diferente de 0 V for aplicada nos pinos de entrada do CI, a saída do circuito será energizada. Esta lógica é conhecida como lógica multiplicativa, pois, no mundo da eletrônica, temos que o pino energizado equivale ao número 1 e o pino desenergizado temos como 0. Deste modo temos que a multiplicação das entradas no circuito AND é equivalente ao estado do pino de saída.
(Imagem A – Porta AND)
(Imagem B – CI 74HC08n Circuito Lógico AND)
Lógica AND – Tabela Verdade | |||
Entrada A | Entrada B | Saída | Lógica Multiplicativa |
Baixo – 0 | Baixo – 0 | Baixo | 0 x 0 = 0 |
Baixo – 0 | Alto – 1 | Baixo | 0 x 1 = 0 |
Alto – 1 | Baixo – 0 | Baixo | 1 x 0 = 0 |
Alto – 1 | Alto – 1 | Alto | 1 x 1 = 1 |
Matematicamente, temos que a multiplicação de qualquer numero por 0 é 0, logo basta uma única entrada ser 0 para termos a saída 0 nas portas AND.
Porta OR
Se qualquer um dos pinos de entrada forem energizados, temos uma saída energizada. Conhecida como lógica aditiva, pois a soma das entradas equivale ao estado da saída.
(Imagem A – Porta OR)
(Imagem B – CI 74HC32n Circuito Lógico OR)
Lógica OR – Tabela Verdade |
|||
Entrada A | Entrada B | Saída | Lógica Aditiva |
Baixo – 0 | Baixo – 0 | Baixo | 0 + 0 = 0 |
Baixo – 0 | Alto – 1 | Alto | 0 + 1 = 1 |
Alto – 1 | Baixo – 0 | Alto | 1 + 0 = 1 |
Alto – 1 | Alto – 1 | Alto |
1 + 1 = 1 |
Diferente da lógica multiplicativa, temos na lógica aditiva que a soma de qualquer número mais 1 é alguma coisa maior que 0, então teremos a saída do sistema diferente de 0, logo basta somente uma das entradas estarem em um nível lógico alto para termos a saída em nível lógico alto.
Porta NOT
A porta lógica NOT é conhecida como porta inversora. Esta porta possui apenas uma entrada e uma saída em seu circuito. Esta porta inverte o estado lógico de entrada em sua saída, logo temos que:
(Imagem A – Porta NOT)
(Imagem B – CI 74HC04n Circuito Lógico NOT)
Lógica NOT – Tabela Verdade | ||
Entrada A | Saída | Lógica Inversora |
Baixo – 0 | Alto -1 | 0=1 |
Alto – 1 | Baixo – 0 | 1=0 |
Em Circuitos Digitais, temos como uma entrada invertida a simbologia dela “barrada” em cima.
Como funciona os circuitos lógicos na prática?
Na prática, temos um circuito integrado com uma saída que depende da sua lógica (AND, OR ou NOT) e do nível de sinal nas entradas, que podem ser de 5 V ou 0 V (GND).
Abaixo temos a montagem de um circuito genérico da família 74HC (74HC08n e 74HC32n no nosso caso) que trabalham com duas entradas e uma saída. Em caso de circuitos lógicos de outros fabricantes, devemos sempre nos atentar ao datasheet do CI em questão. A alimentação do circuito será feita com 5 V para o nosso caso. No circuito temos, também, um LED para indicar a saída e estamos usando duas chaves do DIP switch para testar as entradas. No DIP switch utilizado, temos a chave ativada quando abaixamos a alavanca, e desativada quando levantamos.
Ao testarmos os circuitos com a tabela verdade correspondente, substituindo os CI’s, teremos para o CI AND 74HC08n o seguinte comportamento:
Para o CI OR 74HC32n teremos a mesma montagem, mas resultados diferentes, como observado abaixo:
No caso do circuito NOT 74HC04n, temos a seguinte montagem para testarmos :
Diferente das portas AND e OR, temos apenas uma entrada e uma saída. Ao testarmos o circuito, teremos resultado esperado pela tabela verdade.
Ainda temos algumas portas lógicas básicas, tais como : NOR, NAND, XOR e XNOR.
NOR
A porta Lógica NOR é a inversão da porta OR, onde teremos a saída da porta OR ligada em uma porta NOT. Para simplificar sua representação, temos uma porta OR com uma bolinha inversora em sua ponta, representando a NOR.
Nesta porta, temos a seguinte lógica:
Lógica NOR – Tabela Verdade | ||
Entrada A | Entrada B | Saída |
Baixo – 0 | Baixo – 0 | Alto |
Baixo – 0 | Alto – 1 | Baixo |
Alto – 1 | Baixo – 0 | Baixo |
Alto – 1 | Alto – 1 |
Baixo |
NAND
Na porta NAND, seguindo a lógica da NOR, é uma porta AND com inversão. A NAND é representada por uma AND com a bola inversora na sua porta lógica. Na sua lógica temos:
Lógica NAND- Tabela Verdade | ||
Entrada A | Entrada B | Saída |
Baixo – 0 | Baixo – 0 | Alto |
Baixo – 0 | Alto – 1 | Alto |
Alto – 1 | Baixo – 0 | Alto |
Alto – 1 | Alto – 1 |
Baixo |
XOR e XNOR
Estas portas possuem uma lógica mais complexa, visto que elas são a junção de outras portas lógicas. No caso da XOR, temos a lógica de que a saída será 5 V se, e somente se, uma única entrada for 5 V. No caso de duas entradas forem 5 V ou as duas forem 0 V, temos a saída em nível lógico baixo, ou seja , 0. Na porta XNOR, temos a inversão da saída da XOR.
Associação de portas lógicas
Agora nós iremos nos aprofundar um pouco mais nas portas lógicas e nas associações entre elas.
Se colocarmos a saída de uma porta lógica na entrada de outra, podemos gerar novas lógicas e novas expressões booleanas, através da criação de um circuito lógico.
Todo circuito lógico executa uma expressão booleana, da qual é formada pela interligação das portas lógicas básicas. Um exemplo disto é a própria porta lógica XOR, onde podemos simplificar sua lógica para A.B + A.B . No circuito teremos esta porta, onde teremos a associação de mais de uma porta lógica para gerar uma expressão booleana.
Agora a lógica aditiva, multiplicativa e inversora irá fazer um pouco mais de sentido, visto que poderemos criar expressões com ela.
Ao colocarmos uma entrada em um circuito lógico, teremos uma saída correspondente a sua lógica, que irá gerar uma expressão booleana. No caso da porta lógica AND, teremos a saída igual a entrada A vezes a entrada B (A.B), na OR teremos A + B, e na NOT teremos a inversão, representada por A . Agora, e se colocarmos a entrada A na porta NOT e a saída da NOT na entrada de uma AND e na outra entrada AND colocarmos a entrada B? Nós teremos a expressão onde a entrada A foi invertida vezes a entrada B não invertida : A.B
A junção de portas lógicas é muito útil para criar lógicas especificas para situações específicas. Em uma situação real, nós temos as entradas e saídas pré definidas e através destes teremos que encontrar o circuito lógico. Para tal, deveremos utilizar da Tabela Verdade e a associação das saídas para chegar em um circuito lógico.
Aplicações práticas dos circuitos lógicos
Um exemplo básico seria a seguinte situação: Temos 7 entradas feitas por alavancas, das quais irão representar, cada uma, um número de 1 a 7. As alavancas serão numeradas de 1 a 7 e teremos que fazer a lógica para converter o número pressionado para um número binário, representado por LED’s. Se o LED estiver acesso, representará o número 1 e se tiver apagado o numero 0, em binário.
A tabela de conversão de números decimais para binário que vamos utilizar é esta:
Se tiver alguma dúvida, na calculadora do seu sistema operacional terá a opção de converter entre os sistemas binário, hexadecimal, decimal e octal.
Seguindo esta lógica, vamos colocar cada número decimal representado por uma alavanca, tendo então 7 entradas. Iremos colocar cada bit do número binário como uma saída, tendo 3 saídas . Os bits são a composição do número em binário, visto que o bit menos significativo é o da direita e o mais significativo é o da esquerda.
Então, para esta lógica, somente uma entrada poderá ser acionada por vez, acionando uma ou mais saídas. Quando acionarmos a alavanca 1, teremos que acender o primeiro Bit da saída, no caso o Bit 0, pois na conversão vimos que 1 em decimal é igual a 0 0 1 em binário. Quando acionarmos a alavanca 2, teremos o Bit 1 acesso, pois 2 em decimal é dado por 0 1 0 em binário. Ao acionarmos a alavanca 3, os Bits 1 e 0 serão acionados, e assim por diante, seguindo a tabela.
Vamos analisar a tabela olhando as saídas separadamente. Temos 3 saídas, uma pra cada bit, e iremos começar pelo bit 0. Se analisarmos com cuidado, perceberemos que o bit 0 é acionado quando qualquer número ímpar for acionado, no caso temos que se acionarmos a alavanca 1 OU 3 OU 5 OU 7 o bit 0 será acionado .
Este, pela síntese, teremos 3 portas OU conectadas uma atrás da outra, visto que, matematicamente temos que a ordem dos fatores em uma soma simples não altera o resultado. Logo se somarmos a entrada 1 e 3 e a saída desta soma nos somarmos com a entrada 5, teremos (1+3) + 5 que é igual a 1 + 3 + 5.
A montagem deste circuito, usando apenas um CI OR, será a seguinte:
Agora vamos analisar outro bit, o Bit 1. Se olharmos , veremos que o acionamento da saída é feito em 4 casos específicos : nos números 2, 3 , 6 e 7. Para esta lógica, teremos então que se pressionarmos a alavanca 2 OU 3 OU 6 OU 7 a saída Bit 1 será ativada.
A lógica é bem parecida com a anterior, mudando apenas 2 das entradas. A montagem ainda é bem parecida, ficando desta forma:
A diferença entre o circuito anterior e atual estão atualizadas com o fio verde, que são os únicos que mudam suas ligações. Agora vamos analisar o último bit, o Bit 2 :
Agora, teremos a lógica de que, quando acionarmos as alavancas 4 OU 5 OU 6 OU 7 . O circuito para o Bit 2 seguido da montagem, então, será :
Agora, se juntarmos todos os 3 circuitos interligando as entradas, teremos o seguinte resultado :
Uma outra aplicação, bastante comum, seria a de conversão de uma entrada decimal ou binária para ser mostrada em um display de 7 segmentos, onde teremos uma saída para cada segmento e 9 entradas ou 4 (em caso de binário), uma para cada bit/alavanca.
Conclusão
Os CI’s Lógicos são circuitos bastante versáteis e com uma vasta gama de aplicações e com um custo reduzido, do qual pode substituir, muitas vezes, microcontroladores em projetos com uma lógica de funcionamento simples. Não só substituir, mas podemos complementar projetos com microcontroladores adicionando estes componentes.
Gostou? Ajude-nos a melhorar o Blog comentando abaixo sobre este tutorial.
Adorei o artigo. Eu acredito que se eu não estiver entendido errado, onde tem escrito (acionado quando qualquer número negativo for acionado) o negativo seria trocado por ímpar. No mais parabéns! 🙂
Olá Igor!
Já corrigimos, obrigado pelo aviso!
Abraços!
Vinícius – Equipe MakerHero
Ótima explicação!! me deu consciência do que se trata um CÍ sou muito grato
Muito bom. Parabéns é isto que precisa ser visto todos os dias.