- Educatronica

Propaganda
Centro Estadual de Educação Tecnológica Paula Souza
GOVERNO DO ESTADO DE SÃO PAULO
Etec “JORGE STREET”
TRABALHO DE CONCLUSÃO DO CURSO TÉCNICO EM
ELETRÔNICA
GIGA PARA TESTE DE CI
FAMILIA TTL
Luís Marcos Dourado Santos
Josias dos Santos Costa
Rafael Vinicius da Silva
Renato de Souza Silva
Sérgio Alves Pedrosa
Cleber Ferreira
David Almeida
Professor(es) Orientador(es):
Larry
São Caetano do Sul / SP
2014
GIGA PARA TESTE DE CI
FAMILIA TTL
Trabalho de Conclusão de Curso
apresentado como pré-requisito para
obtenção do Diploma de Técnico em
Eletrônica.
São Caetano do Sul / SP
2014
Dedicamos esse Projeto a todas as pessoas que
sempre nos deram força e os professores que
participaram ativamente para o desenvolvimento
do mesmo.
AGRADECIMENTOS
Agradecemos primeiramente a Deus e a todos aqueles que juntamente ao grupo
colaboraram com a execução deste projeto, ao professor Salomão pela orientação
na programação, ao nosso orientador professor Larry, professora Alessandra Brito e
ao companheiro de sala “Jareo”.
RESUMO
A monografia apresentada tem como principal objetivo melhorar didaticamente as
aulas em laboratórios de cursos técnicos de eletrônica, através do teste de
componentes CI 7400, 7402, 7408 e 7432, ambos da família TTL. A viabilidade do
projeto está na customização de tempo para verificação do CI. A verificação se
consiste em saber se o componente está em condições de uso e se apresenta
aparentes defeitos, onde, será reduzido e simplificado o tempo de testes através da
proposta de uma placa, com um Microcontrolador 8051, que analisa e mostra o
display onde o componente é testado e se esta com defeito ou não. Atualmente em
escolas técnicas e cursos em geral são realizados testes manuais com este tipo de
componente.
Palavras-chave: Aprendizagem, Tempo e Desenvolvimento.
LISTA DE FIGURAS
Figura 1 – Primeiro Processador da História (4004)
9
Figura 2 – Desenho esquemático de um Microcontrolador
10
Figura 3 - Características especiais da família 8051
11
Figura 4 - Aspecto externo do 8051
12
Figura 5 - Faixas de tensão entrada
15
Figura 6 – Faixas de tensão Saída
16
Figura 7 – C.I dual in line (DIP)
17
Figura 8 – Símbolo gráfico e tabela verdade da porta Inversora (NOT)
18
Figura 9 – Símbolo gráfico e tabela verdade da porta AND
18
Figura 10 – Símbolo gráfico e tabela verdade da porta OR
19
Figura 11 – Símbolo gráfico e tabela verdade da porta NAND
19
Figura 12 – Símbolo gráfico e tabela verdade da porta NOR
20
Figura 13 - esquema do CI 7400
20
Figura 14 - esquema do CI 7402
21
Figura 15 - esquema do CI 7408
21
Figura 16 - esquema do CI 7432
22
Figura 17 - Teclado matricial de membrana 4X4
23
Figura 18 - Teclado Matricial - Representação das linhas e das colunas
23
Figura 19 – Display LCD 16x2
24
Figura 20 - Soquete ZIF 40 pinos
25
Figura 21 - Verificação manual das portas lógicas por dips e led’s
33
Figura 22 - Verificação manual das portas lógicas pelo microcontrolador 8051
34
Figura 23 – Componentes gerais do projeto
34
Figura 24 – Soldagem das trilhas
35
Figura 25 – Montagem completa do projeto
35
Figura 26 – Mensagem do display DIGITE O CODIGO
36
Figura 27 - Mensagem do display CODIGO INVALIDO DIGITE NOVAMENTE
36
Figura 28 - Mensagem do display CI DEFEITO
37
Figura 29 - Mensagem do display CI OK
37
Figura 30 - Projeto pronto
38
LISTA DE TABELAS
Tabela 1 - Descrição da Pinagem do 8051
13
Tabela 2 - Pinagem dos módulos LCD
24
Sumário
Introdução ................................................................................................................. 08
1 – Fundamentação Teórica...................................................................................... 09
1.1 – Microcontrolador ............................................................................................... 09
1.2 – O Microcontrolador 8051 introduzida pela Intel ................................................ 11
1.2.1 – Análise externa do Microcontrolador 8051 .......................................... 12
1.3 – Programação do Microcontrolador ................................................................... 14
1.4 – Circuito Integrado - CI ...................................................................................... 14
1.4.1 – Familias lógicas dos circuitos integrados ............................................. 14
1.4.2 – Familia Lógica TTL ............................................................................... 15
1.4.3 – Circuitos integrados TTL ...................................................................... 16
1.5 – Portas Lógicas ................................................................................................. 17
1.5.1 – Porta Lógica Inversora (NOT)............................................................... 18
1.5.2 – Porta Lógica AND ................................................................................. 18
1.5.3 – Porta Lógica OR ................................................................................... 19
1.5.4 – Porta Lógica NAND .............................................................................. 19
1.5.5 – Porta Lógica NOR ................................................................................ 20
1.6 – Circuitos Integrados TTL e suas Portas Lógicas .............................................. 20
1.6.1 – CI 7400 ............................................................................................... 20
1.6.2 – CI 7402 ............................................................................................... 21
1.6.3 – CI 7408 ............................................................................................... 21
1.6.4 – CI 7432 ............................................................................................... 22
1.7 – Dispositivos Periféricos .................................................................................... 22
1.7.1 – Teclado Matricial 4x4 ............................................................................ 23
1.7.2 – Display LCD 16x2 ................................................................................. 24
1.7.3 – Soquete ZIF .......................................................................................... 25
2 – Planejamento do Projeto ..................................................................................... 26
3 – Desenvolvimento do Projeto................................................................................ 33
4 – Resultados Obtidos ............................................................................................. 39
Conclusão ................................................................................................................. 40
Referências ............................................................................................................... 41
Apêndice A ................................................................................................................ 42
8
Introdução
Durante nosso curso de eletrônica, pudemos constatar em aulas práticas nos
laboratórios da escola, a necessidade de otimização de tempo no manuseio e
utilização de uma placa para testar circuitos integrados como o: CI 7400, CI 7402, CI
7408 e CI 7432. Assim, com o tempo otimizado dos testes destes componentes,
poderemos constatar a eficácia de tempo nas atividades desenvolvidas e agilidade
para a conclusão das tarefas.
Tema e delimitação.
Inicialmente o projeto foi desenvolvido para uso em laboratórios de escolas
técnicas, para uso didático na verificação de componentes eletrônicos, indicando em
um display de fácil visualização se o componente está funcionando ou com defeito.
Objetivos Gerais
Objetivando o desperdício de tempo testando CI´s manualmente, a partir de
testes prévios usando um testador de componentes, facilitando o manuseio e teste
prévio do CI, examinar o seu funcionamento e diagnosticar se o componente, esta
pronto para ser usando, evitando o desperdício de tempo e otimização de projetos
desenvolvidos em laboratórios.
Objetivos Específicos
Se os CI´s forem testados previamente, com um recurso que apresente a
eficácia para diagnosticar problemas de funcionamento, consequentemente haverá
customização de tempo nas aulas de laboratório e economia de recursos, como um
diagnóstico preciso da eficiência do CI.
Justificativa
A motivação para o desenvolvimento deste projeto foi de melhorar o
aproveitamento de aulas em laboratório, fazer testes prévios, como diminuir as taxas
de desperdícios de circuitos integrados, economia financeira e até atender propostas
sustentáveis de reaproveitamento ou customização de recursos físicos.
9
Metodologia
Neste projeto, usamos ferramentas que vimos decorrentes ao nosso curso
técnico de eletrônica, usando analises e maneiras mais viáveis para o
desenvolvimento do mesmo. Foi feito estudo do microcontrolador 8051 e CI’s da
família TTL, e suas especificações. Após a análise dos dispositivos necessários, foi
projetado a placa de circuito impresso, utilizando para a sua programação o software
Jfe. Após o desenvolvimento do projeto de circuito impresso, iniciou-se o processo
de fabricação e montagem da placa e consequentemente a programação em
linguagem C, pôde ser realizada e testada.
1 – Fundamentação Teórica
1.1 – Microcontrolador
Em 1969 uma equipe de engenheiros japoneses da empresa BUSICOM
chegou aos Estados Unidos com um pedido de circuitos integrados para
calculadoras que deveriam ser desenvolvidos de acordo com as necessidades de
seus produtos. O pedido foi encaminhado para a Intel que encarregou Marcian Hoff
para a execução deste projeto, que propôs a BUSICOM, uma ideia revolucionária,
um circuito integrado programável, assim poderia ser utilizado em varias aplicações
mudando-se apenas a sua programação. Dessa forma a Intel criou o primeiro
microprocessador conhecido como 4004 (ver figura 1), que era capaz de trabalhar
com 4 bits a uma velocidade de 6 mil operações por segundo ou 6khz.
Figura 1 – Primeiro processador da história (4004).
10
Com o passar do tempo e da evolução, começaram a surgir dispositivos
eletrônicos com funcionalidades especificas, além da necessidade do conforto e
praticidade. Televisores com controle remoto, máquinas de lavar roupa, microondas, celulares, vídeo games entre outros. Desse ponto, nasce a era dos sistemas
embutidos (os microcontroladores). Os microcontroladores seguem o mesmo
princípio de um microprocessador, entretanto, o microcontrolador não necessita de
memória externa e barramento externo para funcionar. Tudo isso (e mais) está
embutido dentro de um circuito integrado. Os microcontroladores são pequenos
dispositivos dotados de "inteligência", basicamente constituídos de Unidade Central
de Processamento - CPU (Central Processing Unit), memória (dados e programas) e
periféricos (portas E/S, I2C, SPI, USART etc.).
Apesar de os microcontroladores possuírem um desempenho bem inferior aos
microprocessadores, o seu custo é muito menor. Além disso, são úteis em
aplicações onde as dimensões, custo, tamanho e consumo do produto são muito
importantes. O primeiro microcontrolador produzido foi o 8048 da Intel, substituído
mais tarde pela família 8051, que se tornou muito popular junto com o 6811 da
Motorola. Atualmente no mercado, existem vários modelos e fornecedores desses
componentes, sendo usado em veículos, equipamentos domésticos, celulares,
dispositivos periféricos de
computadores,
pequenos sistemas de
brinquedos, equipamentos médicos, etc.
Figura 2 – Desenho esquemático de um Microcontrolador
controle,
11
1.2 - O Microcontrolador 8051 introduzida pela Intel
O 8051 da Intel é o pai dos microcontroladores e sem duvida o mais popular
atualmente. Este microcontrolador de 8 bits relativamente simples, porém com ampla
aplicação. É conhecido por ser de fácil programação. Diversos fabricantes produzem
microcontroladores da família 8051 (Intel, Dallas, OKI, Matar, Philips, Siemens,
SMC, SSI). A Intel lançou o 8051 em 1977, e se tornou um microcontrolador de
ampla utilização, um dispositivo de 8 bits com principal finalidade com automação de
controle.
Suas principais características:
 8 bits
 4 ports bidirecionais de 8 bits (P0, P1, P2, P3)
 128 bytes de RAM interna
 4 Kbytes de memória de programa ROM OTP
 Endereçamento de até 64 Kbytes de memória de dados externa
 Endereçamento de até 64 Kbytes de memória de programa externa
 Oscilador de clock
 2 timers/counters (T/C) de 16 bits
 Uma porta serial USART
 5 fontes de interrupção (2 externas, 2 T/C, 1 serial)
As características citadas acima são básicas e formam o núcleo da família 8051, que
pode ser acrescido de uma ou mais das características especiais mostradas na
figura 3.
Figura 3 - Características especiais da família 8051
12
1.2.1 - Análise externa do microcontrolador 8051
O aspectro externo do 8051 é o da figura abaixo (figura 4). Os pinos com
nomes da forma P0.0, P0.1, etc. corresponde às quatro portas de E/S (P0 a P3).
Note a dupla utilidade das portas P0 e P2, que ficam comprometidas com o uso de
memória externa, assim com os pinos P3.6 e P3.7. o sinal ALE (adress latch
Enable), permite fazer a demultiplexação de dados e endereços na porta P0. Através
do sinal PSEN (program Storage Enable), o controlador informa o mundo se a
operação em andamento é uma leitura de instrução (acesso à memória do
programa) ou um acesso à memória de dados. Este sinal permite que o processador
tenha duas regiões distintas de memória externa, uma para armazenas código e
outra para dados, ambas os endereços de 0 a FFFFH (64Kb), num total de 128Kb.
Abaixo na figura 4, o desenho de um Microcontrolador 8051 e sua pinagem:
Figura 4 - Aspecto externo do 8051
13
A Tabela a seguir mostra a descrição completa da pinagem do Microcontrolador
8051.
Número
dos Pinos
1a8
9
10 a 17
18
19
20
21 a 28
29
30
31
32 a 39
40
Nome
Descrição resumida de sua função
P1.0 a
P1.7 Port Porta de I/O número 1
1
RST/VPD “Reset” do sistema (é necessário a aplicação de um nível
alto TTL, durante 2 ou mais ciclos de máquina)
P3.0 a
Porta de I/O número 3 Possibilita também funções
P3.7
especiais relacionadas ao Canal Serial, Interrupções e
Port 3
“Timer/Counter”
XTAL
Ligação do cristal oscilador
2
XTAL
Ligação do cristal oscilador
1
GND
Terra
P2.0 a
P2.7
Port 2
Porta de I/O número 2 Saída do byte mais significativo do
ou
endereço, para memória externa.
A8 a
A15
Program Store Enable “Strobe” da memória de programa
externa. Quando o sistema lê instruções ou
PSEN’
operandos na memória externa, vai para nível zero e não
é ativado (nível 1) durante busca na memória interna de
programa.
Address Latch Enable
Saída para habilitar o “latch” de endereços. Serve para
ALE /
separar, a parte menos significativa do endereço, dos
PROG
dados, na aplicação de memória externa. Entrada do
pulso de programação durante a gravação da EPROM.
External Access Enable – Programming Supply Voltage
Entrada de seleção da memória de programa. Quando
em nível zero, a CPU trabalha apenas com a memória de
EA’ /
programa externa. Se em nível lógico 1, a CPU executa
Vpp
instruções da memória de programa interna, desde que o
PC seja menor que 4096. Este pino recebe +21 volts
durante a programação da ROM interna. Recebe +21V
durante a programação da EPROM
P0.0 a
P0.7
Porta de I/O número 0 Fornece o byte menos significativo
ou
de endereço multiplexado com os dados.
AD0 a
AD7
VCC
+ 5 volts
Tabela 1 - Descrição da Pinagem do 8051
14
1.3 - Programação do Microcontrolador
A programação do microcontrolador pode ser realizada em linguagem C. A
linguagem C, também chamada de linguagem compilada, foi criada por Dennis
Ritchie, em 1972, no centro de pesquisas da Bell Laboratories.
Inicialmente
utilizada
para
reescrever
o
sistema
operacional
UNIX,
que
anteriormente era escrito em Assembly, a linguagem C possui características como
modularidade, compilação separada, recursos de baixo nível, confiabilidade, entre
outros. Na década de 70, o UNIX foi liberado para as universidades e, a partir desse
ponto, a linguagem C tornou-se amplamente conhecida e utilizada. Trata-se de uma
linguagem de fácil manipulação ao homem. Após escrito todo o código, deve-se
utilizar um compilador.
1.4 - Circuito integrado – CI
Circuito integrado (ou simplesmente C.I.) é um circuito eletrônico que
incorpora miniaturas de diversos componentes (principalmente transistores, diodos,
resistores e capacitores), "gravados" em uma pequena lâmina (chip) de silício. O
chip é montado e selado em um bloco (de plástico ou cerâmica) com terminais que
são conectados aos seus componentes por pequenos fios condutores. Com as mais
diversas funções e aplicações na indústria, presente tanto nos produtos eletrônicos
de consumo quanto nos seus processos de produção, os circuitos integrados, assim
como outros componentes, estão disponíveis em diversos formatos e tamanhos
(encapsulamentos), que também determinam a forma como serão fixados nas
placas de circuito impresso. Podem ser montados na superfície da placa, sem
atravessá-la (Surface Mount Technology "SMT", ou Surface Mount Device "SMD"),
ou podem ser montados com seus terminais atravessando a placa (Thru Hole, ou
PTH).
1.4.1 - Famílias Lógicas dos Circuitos Integrados
O desenvolvimento da tecnologia dos circuitos integrados, possibilitando a
colocação num único invólucro de diversos componentes já interligados, veio permitir
um desenvolvimento muito rápido da Eletrônica Digital e consequentemente do
projeto de sistemas digitais. Foi criada então uma série de circuitos integrados que
continham numa única pastilha as funções lógicas digitais mais usadas e de tal
15
maneira projetadas que todas eram compatíveis entre si. Estas séries de circuitos
integrados formaram então as Famílias Lógicas, a partir das quais os projetistas
tiveram facilidade em encontrar todos os blocos para montar seus sistemas digitais.
As famílias lógicas diferem basicamente pelo componente principal utilizado
por cada uma em seus circuitos. As famílias TTL (Transistor-Transistor Logic) usa
transistor bipolar como seu principal componente, enquanto a família CMOS usam
os transistores unipolares MOSFET (transistor de efeito de campo construído
segundo a técnica MOS - Metal Oxide Semicondutor) como seu elemento principal
de circuito. Atualmente a Família TTL e a CMOS são as mais usadas, sendo
empregadas em uma grande quantidade de equipamentos digitais e também nos
computadores e periféricos. Dessa forma, essas serão as famílias abordadas.
1.4.2 - Família Lógica TTL
TTL significa Transistor-Transistor – Logic (Lógica Transistor-Transistor). Esta
família foi originalmente desenvolvida pela TEXAS Instruments, mas hoje, muitos
fabricantes de semicondutores produzem seus componentes. Esta família é
principalmente reconhecida pelo fato de ter duas séries que começam pelos
números 54 para os componentes de uso militar e 74 para os componentes de uso
comercial. A tensão de alimentação se restringe a 5V contínuos, tendo, porém, uma
faixa de tensão correspondente aos níveis lógicos 0 e 1.
A figura a seguir (figura 5), mostra as faixas de tensão correspondentes aos
níveis lógicos de entrada de um circuito integrado da família TTL. Nela observa-se,
que existe uma faixa de tensão entre 0,8V e 2V na qual o componente TTL não
reconhece os níveis lógicos 0 e 1, devendo, portanto, ser evitada em projetos de
circuitos digitais.
VIH – Tensão de entrada correspondente
ao nível lógico alto (1).
VIL– Tensão de entrada correspondente
ao nível lógico baixo (0).
Figura 5 – Faixas de tensão entrada
16
Já nesta outra figura abaixo (figura 6) a seguir mostra as faixas de tensão
correspondentes aos níveis lógicos de saída de um circuito integrado da família TTL.
V0H – Tensão de saída correspondente
ao nível lógico alto (1).
V0L – Tensão de saída correspondente
ao nível lógico baixo (0).
Figura 6 – Faixas de tensão saída
A Série 74, Identifica os dispositivos da família TTL de uso comercial.
Especificações Família TTL:
Temperatura: 0 a 70 ºC
Tensão de alimentação: 4,75 a 5,25V (5V + ou - 10%)
1.4.3 - Circuitos Integrados TTL
Esta família possui uma vasta variação de circuitos integrados padronizados
com configurações de pinagens disponíveis nos manuais dos fabricantes. São
circuitos integrados que possuem 14 pinos ou mais, conforme a complexidade do
circuito agregado, com encapsulamentos denominados DIP (Dual-In-Line Package),
cuja identificação da disposição dos terminais se faz através da vista superior, em
sentido anti-horário a partir de uma marca de referência no encapsulamento do
circuito integrado.
17
Figura 7 - CI dual in line (DIP)
No caso do circuito integrado acima, podemos verificar que a sua alimentação é feita
através do pino 14: +Vcc e do pino 7: terra ou GND (ground).
1.5 - Portas Lógicas
Portas lógicas ou circuitos lógicos são circuitos eletrônicos existentes dentro
dos microprocessadores e são responsáveis por realizar as operações lógicas,
aritméticas e de tomada de decisão. O funcionamento destes elementos foi baseado
nos princípios estabelecidos pelo matemático britânico George boole em meados do
século 19, antes mesmo da primeira lâmpada ser inventada. Em suma a ideia
principal foi de expressar funções lógicas por meio de funções algébricas. Esse
pensamento foi logo transformado em um produto prático, que muito mais tarde
evoluiu para o que hoje conhecemos como circuitos lógicos: INVERSORA (NOT), E
(AND), OU (OR), NAND, NOR. O princípio de funcionamento destes elementos ficou
conhecido como álgebra Booleana. Uma vez que algumas instruções de programas
utilizadas
por
microprocessadores
e
microcontroladores
fazem
uso
das
funcionalidades destas portas lógicas, é importante estudarmos o princípio de
funcionamento de cada uma delas.
18
Portas lógicas usadas em nosso projeto:
1.5.1 - Porta Lógica Inversora (NOT)
Como o próprio nome já sugere, o inversor irá inverter o numero entrado. Se
você entrar com o numero “0” em um circuito inversor, você obterá na saída o
numero “1”, da mesma forma que se você entrar o numero “1”, obterá o numero “0”
na sua saída. O símbolo do inversor pode ser visto na figura 8. A porta inversora
também é conhecida como NOT.
Figura 8 – símbolo gráfico e tabela verdade da porta Inversora (NOT)
1.5.2 - Porta Lógica AND
Uma porta lógica “AND” tem duas ou mais entradas e apenas uma saída. O
princípio de funcionamento desta porta diz que só aparecerá a lógica um (1), na
saída da porta quando todas as entradas forem também iguais a um (1), ou seja,
somente quando A e B forem iguais a 1 a saída será igual a 1. A figura 9 mostra o
símbolo representativo da porta lógica AND, e a tabela de dependência mutuas
entre as entradas e a saída, Tabela Verdade.
Figura 9 – símbolo gráfico e tabela verdade da porta AND
19
1.5.3 - Porta Lógica OR
Da mesma forma que o caso anterior, as portas OR também podem ter duas
ou mais entradas e uma saída. A lógica um (1) aparecerá na porta de saída se
qualquer uma das entradas (A ou B) estiver em lógica um (1). Somente se todas as
entradas estiverem em lógica zero (0), a saída será modificada para lógica zero (0).
A figura 10 mostra o símbolo representativo da porta lógica OR e a sua tabela
verdade.
Figura 10 – símbolo gráfico e tabela verdade da porta OR
1.5.4 - Porta Lógica NAND
A letra “N” em NAND significa NOT (literalmente “não”, mas representa o
circuito inversor) e esta porta nada mais é do que uma porta AND com um inversor
acoplado. Por isso sua saída é o oposto da AND. Seu símbolo é o mesmo do AND,
mas com “o” em sua saída, para dizer que o valor da sua saída é invertido. A figura
11 mostra o símbolo representativo da porta lógica NAND e a sua tabela verdade.
Figura 11 – símbolo gráfico e tabela verdade da porta NAND
20
1.5.5 - Porta Lógica NOR
A Letra “N” em NOR significa NOT (literalmente “não”, mas representa o
circuito inversor), e esta porta nada mais é do que uma porta OR com um inversor
acoplado. Por isso, sua saída é o oposto da porta OR. Seu símbolo é o mesmo do
OR, mas com um “o” em sua saída, para dizer que o valor da sua saída é invertido.
A figura 12 mostra o símbolo representativo da porta lógica NOR e a sua tabela
verdade.
Figura 12 – símbolo gráfico e tabela verdade da porta NOR
1.6 - Circuitos integrados TTL e suas portas lógicas
1.6.1 - CI 7400
O circuito TTL 7400 é um dispositivo TTL que contém quatro portas NAND de duas
entradas cada. As portas apresentam funcionamento independente. É encapsulado
em um invólucro DIP de 14 pinos. O consumo médio por circuito integrado é da
ordem de 12mA.
Figura 13 – esquema do CI 7400
21
1.6.2 – CI 7402
O circuito TTL 7402 é um dispositivo TTL que possui quatro portas lógicas NOR de
duas entradas cada porta. O consumo é de 12mA e o invólucro é DIL.
Figura 14 – esquema do CI 7402
1.6.3- CI 7408
O circuito lógico TTL 7408 é um dispositivo TTL que possui quatro portas
lógicas AND de duas entradas cada porta. Ele é usado, principalmente, em circuitos
eletrônicos lógicos. O princípio de funcionamento dele é de uma porta lógica AND,
que por sua vez, é uma operação lógica em dois operados que resulta em um valor
lógico verdadeiro se e somente se todos os operados tem um valor verdadeiro.
Figura 15 – esquema do CI 7408
22
1.6.4 – CI 7432
O circuito lógico TTL 7432 é um dispositivo TTL que possui quatro portas
lógicas OR de duas entradas cada porta. É um dispositivo encapsulado em um
invólucro de 14 pinos.
Figura 16 – Esquema do CI 7432
1.7 - Dispositivos Periféricos
Todo equipamento baseado em microprocessador, para que seja utilizável,
tem a necessidade de trocar dados com o mundo exterior. Isto é efetuado através de
portas de entrada e saída. Acopladas a estas portas normalmente encontram-se os
dispositivos periféricos, que são destinados a determinados tipos de operação. Em
nosso projeto, estaremos usando tais dispositivos, podendo citar: controladores de
teclado, controladores de display, portas de entrada e saída paralelas, controladores
de DMA, controladores de interrupção, controladores de disco, etc. Alguns desses
dispositivos são específicos para determinadas aplicações, enquanto que outros
permitem sua configuração e utilização de diversas maneiras. Os principais
fabricantes
de
circuitos
integrados
oferecem
ao
usuário,
além
dos
microprocessadores, uma grande quantidade de dispositivos periféricos, que cobrem
as
principais
compatibilidade
aplicações
com
e
suas
determinados
variações.
Tais
dispositivos
microprocessadores,
apresentam
simplificando
sua
interligação, e podem ser adaptados a cada aplicação através de programação.
Resta ao usuário, dessa forma, programá-los e configurá-los, adequando-os às
necessidades. A programação de tais dispositivos, embora nem sempre trabalhosa,
pode se tornar não trivial, em função dos muitos casos para os quais os dispositivos
são projetados para se adaptar, obrigando ao usuário a um estudo minucioso dos
seus manuais de especificação.
23
1.7.1 - Teclado matricial 4X4
Foi utilizado um teclado matricial de membrana 4X4 , quatro linhas e quatro
colunas. A Figura 17 mostra o teclado matricial utilizado no projeto.
Figura 17 - Teclado matricial de membrana 4X4
Esse teclado tem suas teclas ligadas por linhas e colunas. Quando uma tecla
é pressionada o barramento daquele botão faz ligação com o barramento da coluna
do mesmo. De acordo com a Figura 18:
Figura 18 - Teclado Matricial - Representação das linhas e das colunas
Um teclado matricial pode ser implementado com circuitos simplificados diretamente
controlados pelo microprocessador, via portas paralelas de entrada e saída e
programa.
24
1.7.2 - Display LCD 16X2
Por tratar-se de componente de fácil utilização e implementação, o display
LCD (liquid cristal display) tornou-se um dispositivo amplamente utilizado e versátil,
permite a escrita de palavras, números, símbolos, etc. o display 16x2 possui 16
colunas e 2 linhas, permitindo a escrita de 32 caracteres, 16 na linha 1 ou, superior,
e 16 na linha 2 ou, inferior.
Figura 19 - Display LCD 16x2
A Tabela a seguir mostra a descrição completa da Pinagem dos módulos LCD
Pino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Função
Alimentação
Alimentação
VO
RS
Seleção:
R/W Seleção:
E
Chip Select
B0
LSB
B1
B2
B3
B4
B5
B6
B7
MSB
A (quando existir)
K (quando existir)
Descrição
Terra ou GNV
VCC ou +5v
Tensão para ajuste de contraste
1 – dado, 0 – instrução
1 – leitura, 0 – escrita
1 ou (1 → 0) - Habilita, 0 – Desabilitado
Barramento de Dados
Barramento de Dados
Anodo p/ LED backlight
Catodo p/ LED backlight
Tabela 2 - Pinagem dos módulos LCD
25
1.7.3 - Soquete ZIF
Soquetes são componentes onde se colocam e fixam Circuitos integrados,
com possibilidade de remoção. E ZIF é um componente de fixação de Circuitos
integrados ou FLAT Cables, normalmente utilizado em Programadores de Circuitos
ou eletrônica embarcada. Tem um bastonete que fecha os contatos nas pernas do
Circuito Integrado ou uma fixação para prender o cabo e Flat.
Figura 20 – Soquete ZIF 40 pinos
26
2 – Planejamento do Projeto
 Parte Elétrica / Eletrônica
27

Previsão de Custos
Quantidade
Componentes
Valores
1
Placa padrão
R$ 32,00
1
Display LCD
R$ 35,00
1
Microcontrolador 8051
R$ 26,00
4
CI’s 7400,7402,7408,7432
R$ 6,80
1
Teclado
R$ 20,00
1
Soquete Zif
R$ 22,00
1
Soquete
R$ 2,00
1
Trimpot
R$ 2,00
1
Diodo
R$ 1,00
3
Resistor
R$ 1,50
1
Led
R$ 1,00
1
Cristal
R$ 1,50
4
Capacitor
R$ 6,00
2
Fonte Resistiva
R$ 2,50
1
Chave botão
R$ 0,50
Valor total
R$ 159,80
28

Parte Lógica:
FLUXOGRAMA DO PROCESSO
INICIO
LCD INI
DIGITAR CÓDIGO
NO L.C.D.
AGUARDANDO
N
CÓDIGO
CÓDIGO
S
CI 7400
00
CÓDIGO
S
C.I. 7402
02
CÓDIGO
S
C.I. 7408
08
CÓDIGO
32
CÓDIGO INVÁLIDO
S
C.I. 7432
29
FLUXOGRAMA CI NAND 7400
INICIO
COLOCAR 0 E 0
NAS ENTRADAS
SAÍDA
=1
COLOCAR 0 E 1
NAS ENTRADAS
SAÍDA
=1
COLOCAR 1 E 0
NAS ENTRADAS
SAÍDA
=1
COLOCAR 1 E 1
NAS ENTRADAS
SAÍDA
=0
C.I. OK
C.I. DEFEITO
30
FLUXOGRAMA CI NOR 7402
INICIO
COLOCAR 0 E 0
NAS ENTRADAS
SAÍDA
=1
COLOCAR 0 E 1
NAS ENTRADAS
SAÍDA
=0
COLOCAR 1 E 0
NAS ENTRADAS
SAÍDA
=0
COLOCAR 1 E 1
NAS ENTRADAS
SAÍDA
=0
C.I. OK
C.I. DEFEITO
31
FLUXOGRAMA CI AND 7408
INICIO
COLOCAR Ø E Ø
NAS ENTRADAS
COLOCAR 0 E 1
SAÍDA
S
NAS ENTRADAS
=Ø
IN
SAÍDA
S
=Ø
N
COLOCAR 1 E Ø
NAS ENTRADAS
SAÍDA
=Ø
S
N
COLOCAR 1 E 1
NAS ENTRADAS
SAÍDA
=1
N
C.I. DEFEITO
C.I. OK
32
FLUXOGRAMA CI OR 7432
INICIO
COLOCAR Ø E Ø
NAS ENTRADAS
COLOCAR 0 E 1
SAÍDA
NAS ENTRADAS
=Ø
SAÍDA
=1
COLOCAR 1 E 0
NAS ENTRADAS
SAÍDA
=1
COLOCAR 1 E 1
NAS ENTRADAS
SAÍDA
=1
C.I. OK
C.I. DEFEITO
33
 Croqui
3 – Desenvolvimento do Projeto
Começamos a desenvolver o projeto com a ideia de testar CI’s de modo que,
usando um protoboard e dips, para simular as funções das portas lógicas e
utilizando led’s nas saídas de cada porta, verificando o funcionamento como mostra
a figura 21.
Figura 21 – Verificação manual das portas lógicas por dips e led’s
34
Nesta próxima fase, acrescentamos mais um protoboard, para inserir um
microcontrolador, que foi ligado as entradas e saídas do CI da família TTL nos portes
P0.0 á P0.7 e P1.4 á P1.7 do microcontrolador, foi feita uma programação com
separação de 4 bits para verificação da lógica, como mostra a figura 22.
Figura 22 – Verificação manual das portas lógicas pelo microcontrolador 8051.
Nesta Próxima etapa juntamos todos os componentes á serem utilizados na
montagem do projeto, como mostra a figura 23.
Figura 23 – Componentes gerais do projeto.
35
Iniciamos a soldagem das trilhas usando fio de cobre por ser placa padrão,
assim no momento não foi preciso ser feito o circuito impresso, como mostra a figura
24.
Figura 24 – Soldagem das trilhas.
Com o microcontrolador 8051 para programação, um teclado para digitar o
código, um display para visualização do teste e um conector zif para encaixe do CI
para inicio dos testes, como mostra a figura 25.
Figura 25 – Montagem completa do projeto.
36
Na programação inicial do microcontrolador 8051, foi escrito as informações
necessárias para leitura do CI, como mostra a figura 26.
Figura 26 – Mensagem do display DIGITE O CODIGO.
Se for digitado o código errado deverá aparecer a mensagem no display,
como mostra a figura 27.
Figura 27 – Mensagem do display CODIGO INVALIDO DIGITE NOVAMENTE
37
Se o CI estiver danificado ou incorreto deverá aparecer a mensagem
no display, como mostra a figura 28.
Figura 28 – Mensagem do display CI DEFEITO
Se o CI estiver funcionando corretamente deverá aparecer a mensagem no
display, como mostra a figura 29.
Figura 29 – Mensagem do display CI OK
38
Projeto concluído
Figura 30 – Projeto pronto
39
4 – Resultados Obtidos
Ao longo de muito trabalho o projeto foi realizado com sucesso atendendo
nossas expectativas e objetivos. Para o funcionamento da nossa Giga de teste de
CI’s, foi utilizado um teclado para digitar o código do CI desejado, e um display que
indicará com uma mensagem se ele está CI OK ou CI DEFEITO. Isto ocorre devido
a escrita de uma programação em linguagem C, gravado no microcontrolador 8051.
40
Conclusão
Esse projeto foi desenvolvido para estudantes de escolas técnicas com a
finalidade de fazer o teste de componentes eletrônicos podendo ser ampliado e
melhorado para o aperfeiçoamento dos alunos do uso didático
O desenvolvimento da Giga para teste de CI’s, transmitiu ao grupo o fato de que
nem todas as pessoas possuem a iniciativa de auxiliar aqueles que desejam
construir algo, porém, há aquelas que desejam compartilhar com elas seus sonhos,
ajudando a construí-los. É necessário saber lidar com as primeiras e agradecer as
segundas.
Durante o desenvolvimento do projeto tivemos dificuldade com a programação do
microcontrolador 8051 e a falta de um componente (rede resistiva).
Essas
dificuldades foram superadas com pesquisas, dedicação do grupo e da orientação
do professor de programação.
O projeto mostrou a importância do gerenciamento do tempo, e como se planejar
cada atividade, mas o maior ensinamento foi que imprevistos vão ocorrer sempre.
Os resultados do desenvolvimento do projeto foram positivos atendendo as nossas
expectativas e objetivos estabelecidos pelo grupo de trabalho diante de todas as
dificuldades encontradas no decorrer do projeto. É esperado que a utilização da
Giga para teste de CI’s seja feita em laboratórios de escolas técnicas, permitindo
assim, que os alunos tenham suas atividades mais eficientes, aumentando seus
conhecimentos técnicos.
41
Referências
BARBACENA,Ilton L e FLEURY, Afonso. Display LCD. Disponível em <
ftp://ftp.dca.fee.unicamp.br/pub/docs/ea079/complementos/Lcd.pdf> Acesso em 03
de Out.2014
BORBA,
GUSTAVO.
Família
80521.
Disponível
em<http://paginapessoal.utfpr.edu.br/gustavobborba/material/files/introFamilia8051.p
df> Acesso em 04 de Out.2014
GOUVEIRA,
RICARDO.
Família
de
Circuitos
Lógicos.
Disponível
em<www.arvm.org/exames/digital/workfamilyactual.doc> Acesso em 10 de out.2014
NEW TECK, Exportadora e importadora. Disponível em< http://www.newteckci.com.br/circuitos-integrados.php/>. Acesso em 10 de out.2014
NUNES,
FELIPE.
Controle
e
Automação.
Disponível
em<
http://www.em.ufop.br/cecau/monografias/2013/Felipe%20Vilela%20Nunes.pdf>.
Acesso em 10 de out.2014
SEVERINO, Antonio Joaquim. Metodologia do Trabalho Científico. São Paulo: Ed.
Cortez, 2000.
TORRES, E. Fernando e Martins, R. Henrique. Apostila didática PICMINAS.
Disponível
em<
http://www.decom.ufop.br/alex/arquivos/sof_b
as_EC/Apostila_PICMInas.pdf> Acesso em 15 de Ago.2014
42
APÊNDICE A
Programação do 8051 utilizando a linguagem C.
/*
GIGA DE TESTE 4º DN
*/
// BIBLIOTECA DO MICROCONTROLADOR 8051, ATRASO, LCD, TECLADO
#include <at89x52.h>
#include <atraso.h>
#include <lcd4.h>
#include <TEC4x4M.H>
// MENSAGENS NO LCD
code unsigned char OK [17]={" CI OK ",0x00};
code unsigned char DEFEITO [17]={" CI DEFEITO ",0x00};
code unsigned char BRANCO [17]={" ",0x00};
code unsigned char DIGITE [17]={"DIGITE O CODIGO ",0x00};
code unsigned char CODIGO [9]={" 74",0x00};
code unsigned char INVALIDO[17]={"CODIGO INVALIDO ",0x00};
code unsigned char NOVAMENTE [17]={"DIGITE NOVAMENTE ",0x00};
char codigo, tecla1,tecla2;
void lcd_hex (unsigned HEXA)
{
unsigned char rasc;
rasc = (HEXA >> 4) & 0X0F;
if (rasc <= 0x09) rasc = rasc + 0X30;
else rasc = rasc + 0x37;
lcd_char (rasc);
rasc = HEXA & 0X0F;
if (rasc <= 0x09) rasc = rasc + 0X30;
else rasc = rasc + 0x37;
lcd_char (rasc);
}
// DECLARAÇÃO DAS FUNÇÕES DO CI
void CI7432();
void CI7408();
void CI7400();
void CI7402();
43
// FUNÇÃO PRINCIPAL
void main()
{
LEDS=0X00;
BZ=1;
lcd_ini();
// AGUARDE DIGITAÇÃO DO CÓDIGO
while(1)
{
lcd_cmd(0x80);
lcd_str(DIGITE);
lcd_cmd(0xC0);
lcd_str(CODIGO);
tecla1=teclado();
while (tecla1==0xff) tecla1=teclado();
lcd_char (tecla1+0x30);
tecla2=teclado();
while (tecla2==0xff) tecla2=teclado();
lcd_char (tecla2+0x30);
codigo = ((tecla1<<4)|tecla2);
// EXECUTA A FUNÇÃO DO CODIGO DIGITADO
switch (codigo)
{
case 0x08:
CI7408();
break;
case 0x32:
CI7432();
break;
case 0x00:
CI7400();
break;
case 0x02:
CI7402();
break;
default:
lcd_cmd(0x80);
lcd_str(INVALIDO);
lcd_cmd(0xC0);
lcd_str(NOVAMENTE);
atraso_ms(2000);
44
lcd_clear();
break;
}
lcd_clear();
}
}
// FUNÇÃO PARA O CI 7432
void CI7432()
{
tecla1=teclado();
while (tecla1==0xff)
{
P0=0x64;
P1=0x20;
if((P0==0x00) & ((P1 & 0XF0)==0x00))
{
P0=0xED;
P1=0x60;
if((P0==0xED) & ((P1 & 0XF0)==0x60))
{
P0=0x76;
P1=0xB0;
if((P0==0x76) & ((P1 & 0XF0)==0xB0))
{
P0=0xff;
P1=0xf0;
if((P0==0xff) & ((P1 & 0XF0)==0xf0))
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(OK); // escreve mensagem na linha 1
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
45
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
tecla1=teclado();
}
}
// FUNÇÃO PARA O CI 7408
void CI7408()
{
tecla1=teclado();
while (tecla1==0xff)
{
P0=0x64;
P1=0x20;
if((P0==0x00) & ((P1 & 0XF0)==0x00))
{
P0=0xED;
P1=0x60;
if((P0==0x89) & ((P1 & 0XF0)==0x40))
{
P0=0x76;
P1=0xB0;
if((P0==0x12) & ((P1 & 0XF0)==0x90))
{
P0=0xff;
P1=0xf0;
if((P0==0xff) & ((P1 & 0XF0)==0xf0))
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(OK); // escreve mensagem na linha 1
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
46
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
tecla1=teclado();
}
}
// FUNÇÃO PARA O CI 7400
void CI7400()
{
tecla1=teclado();
while (tecla1==0xff)
{
P0=0x64;
P1=0x20;
if((P0==0x64) & ((P1 & 0XF0)==0x20))
{
P0=0xED;
P1=0x60;
if((P0==0xED) & ((P1 & 0XF0)==0x60))
{
P0=0x76;
P1=0xB0;
if((P0==0x76) & ((P1 & 0XF0)==0xB0))
{
P0=0x9B;
P1=0xD0;
if((P0==0x9B) & ((P1 & 0XF0)==0xD0))
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(OK); // escreve mensagem na linha 1
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
47
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
tecla1=teclado();
}
}
// FUNÇÃO PARA O CI 7402
void CI7402()
{
tecla1=teclado();
while (tecla1==0xff)
{
P0=0x09;
P1=0x90;
if((P0==0x09) & ((P1 & 0XF0)==0x90))
{
P0=0x5B;
P1=0xB0;
if((P0==0x52) & ((P1 & 0XF0)==0x20))
{
P0=0xAD;
P1=0xD0;
if((P0==0xA4) & ((P1 & 0XF0)==0x40))
{
P0=0xFF;
P1=0xF0;
if((P0==0xF6) & ((P1 & 0XF0)==0x60))
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(OK); // escreve mensagem na linha 1
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str (DEFEITO); // escreve mensagem na linha 1
}
}
else
{
48
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
}
else
{
lcd_cmd(0x80); // posiciona o cursor primeira linha
lcd_str(DEFEITO); // escreve mensagem na linha 1
}
tecla1=teclado();
}
}
Download