Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE FEDERAL DO CEARÁ CAMPUS SOBRAL ENGENHARIA DE COMPUTAÇÃO VICTÓRIA TOMÉ OLIVEIRA DISCIPLINA DE ELETRÔNICA DIGITAL PROJETO I DISPLAY 7 SEGMENTOS - NÚMEROS HEXADECIMAIS SOBRAL 2019 LISTA DE ILUSTRAÇÕES Figura 1 – Números Hexadecimais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Figura 2 – Exemplo de Display 7 Segmentos. . . . . . . . . . . . . . . . . . . . . . . 6 Figura 3 – Cátodo comum e Ânodo comum. . . . . . . . . . . . . . . . . . . . . . . . 6 Figura 4 – FPGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Figura 5 – Display de 7 segmentos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Figura 6 – Display 7 segmentos - Números. . . . . . . . . . . . . . . . . . . . . . . . 11 Figura 7 – Pinagem display 7 segmentos. . . . . . . . . . . . . . . . . . . . . . . . . . 12 Figura 8 – Pinos do FPGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Figura 9 – Entradas e Saídas e suas pinagens. . . . . . . . . . . . . . . . . . . . . . . 13 Figura 10 – Projeto - Proteus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Figura 11 – Projeto - FPGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Figura 12 – Número 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Figura 13 – Número 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Figura 14 – Número 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Figura 15 – Número 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Figura 16 – Número 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Figura 17 – Número 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Figura 18 – Número 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Figura 19 – Número 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Figura 20 – Número 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Figura 21 – Número A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Figura 22 – Número B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Figura 23 – Número C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Figura 24 – Número D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Figura 25 – Número E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Figura 26 – Número F . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Figura 27 – Primeira linha da tabela verdade - Número zero. . . . . . . . . . . . . . . . 24 Figura 28 – Segunda linha da tabela verdade - Número um. . . . . . . . . . . . . . . . . 24 Figura 29 – Terceira linha da tabela verdade - Número dois. . . . . . . . . . . . . . . . 25 Figura 30 – Quarta linha da tabela verdade - Número três. . . . . . . . . . . . . . . . . 25 Figura 31 – Quinta linha da tabela verdade - Número quatro. . . . . . . . . . . . . . . . 26 Figura 32 – Sexta linha da tabela verdade - Número cinco. . . . . . . . . . . . . . . . . 26 Figura 33 – Sétima linha da tabela verdade - Número seis. . . . . . . . . . . . . . . . . 27 Figura 34 – Oitava linha da tabela verdade - Número sete. . . . . . . . . . . . . . . . . 27 Figura 35 – Nona linha da tabela verdade - Número oito. . . . . . . . . . . . . . . . . . 28 Figura 36 – Decima linha da tabela verdade - Número nove. . . . . . . . . . . . . . . . 28 Figura 37 – Decima primeira linha da tabela verdade - Número A. . . . . . . . . . . . . 29 Figura 38 – Decima segunda linha da tabela verdade - Número B. . . . . . . . . . . . . 29 Figura 39 – Decima terceira linha da tabela verdade - Número C. . . . . . . . . . . . . . 30 Figura 40 – Decima quarta linha da tabela verdade - Número D. . . . . . . . . . . . . . 30 Figura 41 – Decima quinta linha da tabela verdade - Número E. . . . . . . . . . . . . . 31 Figura 42 – Decima sexta linha da tabela verdade - Número F. . . . . . . . . . . . . . . 31 LISTA DE TABELAS Tabela 1 – Tabela Verdade de 0 a F. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 SUMÁRIO 1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.1 Números Hexadecimais . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 Display 7 Segmentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Field-Programmable Gate Array - FPGA . . . . . . . . . . . . . . . . . 6 1.4 Mapa de Karnaugh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.5 Mintermo e Maxtermo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.5.1 Mintermos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.5.2 Maxtermos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3 MATERIAIS UTILIZADOS . . . . . . . . . . . . . . . . . . . . . . . . . 10 4 PROCEDIMENTO PRÁTICO . . . . . . . . . . . . . . . . . . . . . . . 11 5 RESULTADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.1 Primeira etapa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 6 SIMULAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 7 CONCLUSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 5 1 INTRODUÇÃO 1.1 Números Hexadecimais O sistema hexadecimal é um sistema de numeração posicional que representa os números em base 16, portanto empregando 16 símbolos. Está vinculado a informática, pois os computadores costumam utilizar o byte ou octeto como unidade básica da memória. Devido ao sistema decimal geralmente usado para a numeração apenas dispor de dez símbolos, deve- se incluir seis letras adicionais para completar o sistema. O conjunto de símbolos pode ser observado na Figura 1. Figura 1 – Números Hexadecimais Fonte: Internet O desenvolvimento dos computadores levou naturalmente à uma situação em que as quantidades de bits das sequencias binárias eram múltiplas de 4; Com isso, o sistema hexade- cimal se mostrou particularmente interessante, pois permitia que sequencias de 16 bits fossem representadas com 4 dígitos hexadecimais (CAPUANO, 2018). 1.2 Display 7 Segmentos O display de sete segmentos é formado com sete leds, posicionados de modo a possibilitar a formação de números decimais. Com os sete segmentos de LED é possível representar números de 0 a 9 e algumas letras rudimentares (ELETRONICA, ). 6 Figura 2 – Exemplo de Display 7 Segmentos. Fonte: Intenet O display pode ser do tipo ânodo comum, ou seja os terminais ânodo de todos os segmentos estão interligados internamente e para o display funcionar, este terminal comum deverá ser ligado em Vcc, enquanto que o segmento para ligar precisa de estar ligados no GND. Já o display cátodo comum, é o contrário, ou seja, o terminal comum, deverá ser ligado ao GND e para ligar o segmento é necessário aplicar Vcc ao terminal. Figura 3 – Cátodo comum e Ânodo comum. Fonte: Internet 1.3 Field-Programmable Gate Array - FPGA Um FPGA ( field-programmable gate array ) é um circuito integrado projetado para ser configurado por um cliente ou designer após a fabricação, ou seja, "programável em campo ". A configuração do FPGA é geralmente especificada usando uma linguagem de descrição de hardware (HDL), similar àquela usada para um ASIC ( Application-Specific Integrated Circuit ). 7 Diagramas de circuitos foram usados anteriormente para especificar a configuração, mas isso é cada vez mais raro devido ao advento das ferramentas de automação de design eletrônico (FILIPEFLOP, ). Os FPGAs contêm uma matriz de blocos lógicos programáveis e uma hierarquia de "interconexões reconfiguráveis"que permitem que os blocossejam "interligados", como muitas portas lógicas que podem ser interconectadas em diferentes configurações. Blocos lógicos podem ser configurados para executar funções combinacionais complexas, ou simplesmente portas lógicas simples como AND e XOR. Na maioria dos FPGAs, os blocos lógicos também incluem elementos de memória, que podem ser simples flip-flops ou blocos mais completos de memória. Muitos FPGAs podem ser reprogramados para implementar diferentes funções lógicas, permitindo uma computação reconfigurável flexível como a executada em software de computador. Na Figura 4, podemos observar uma placa de FPGA. Figura 4 – FPGA. Fonte: Internet. 1.4 Mapa de Karnaugh Mapa de Karnaugh é um método de simplificação gráfico criado por Edward Veitch (1952) e aperfeiçoado pelo engenheiro de telecomunicações Maurice Karnaugh. Chamamos esse diagrama de mapa, visto este ser um mapeamento biunívoco a partir de uma tabela verdade da função que está a ser analisada. Ele é utilizado para simplificar uma equação lógica ou para converter uma tabela verdade no seu circuito lógico correspondente. 8 1.5 Mintermo e Maxtermo 1.5.1 Mintermos Os mintermos podem ser definidos como o produto de n variáveis, onde cada uma aparece uma única vez, negada ou não. A quantidade máxima de mintermos de uma função com n variáveis é 2n. Em sua expressão, se a variável é 0 ela deve aparecer negada, porém se vale 1 deve aparecer não negada. É a soma de mintermos, porém os mintermos somados são apenas aqueles onde o valor lógico de saída da tabela verdade é igual a 1 (WINKIPEDIA, ). 1.5.2 Maxtermos A função maxtermo é o oposto da função mintermo. Ela apresenta a soma de todas as n variáveis, que aparecem uma única vez. Assim como nos mintermos a quantidade de termos é dada pela função 2n, sendo que n é o numero de variáveis envolvidas. Nos maxtermos acontece ao contrário do que acontece nos mintermos, as variáveis de valor 0 são representado como variáveis não negadas e as de valor 1 são representadas por uma variável negada. Considere a tabela verdade para a demonstração da função maxtermo (WINKIPEDIA, ). 9 2 OBJETIVOS Utilizar 0 FPGA em problemas práticos, fazendo uso dos conceitos de álgebra booleana adquiridos em sala de aula. 10 3 MATERIAIS UTILIZADOS • Placa FPGA; • Computador com o software Quartus II. 11 4 PROCEDIMENTO PRÁTICO Inicialmente foi proposto a projeção de um circuito combinacional para o padrão hexadecimal, utilizando o display do FPGA para representar os números. Foi proposto um circuito que mostrasse no display de 7 segmentos os caracteres decimais de 0 (zero) à F (quinze). Figura 5 – Display de 7 segmentos. Fonte: Internet A Tabela 1 mostra as entradas da tabela verdade que foram definidas a partir dos números de 0 (zero) à F (quinze) em binário e as saídas que foram definidas verificando quais segmentos de led acendiam para formar os números no display 7 segmentos, ou seja, quando o segmento acendia e quando ele permanecia apagado para cada número de 0 (zero) à F (quinze), como podemos observar na Figura 6. A partir da tabela verdade foi montado um circuito combinacional. Figura 6 – Display 7 segmentos - Números. Fonte: Intenet Primeiramente foi criado um novo projeto no Quartus II e foi selecionado a fa- mília Cyclone III. Na opção dispositivo alvo (Available device) foi selecionado o dispositivo EP3C16F484C6. Depois do projeto criado, foi criado um arquivo no modo de edição gráfica, na janela principal do software Quartus II, o circuito do display de segmentos foi projetado no modo de edição gráfica. Os terminais de entrada (input) e saída (output) inseridos no circuito devem ser identificados para posterior utilização, para isso os terminais devem ter nomes. Com o cursor foi selecionado o terminal a ser identificado e com o botão esquerdo do mouse dê um duplo clique 12 Tabela 1 – Tabela Verdade de 0 a F. A B C D a b c d e f g 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1 1 1 1 2 0 0 1 0 0 0 1 0 0 1 0 3 0 0 1 1 0 0 0 0 1 1 0 4 0 1 0 0 1 0 0 1 1 0 0 5 0 1 0 1 0 1 0 0 1 0 0 6 0 1 1 0 0 1 0 0 0 0 0 7 0 1 1 1 0 0 0 1 1 1 1 8 1 0 0 0 0 0 0 0 0 0 0 9 1 0 0 1 0 0 0 1 1 0 0 A 1 0 1 0 0 0 0 1 0 0 0 B 1 0 1 1 1 1 0 0 0 0 0 C 1 1 0 0 0 1 1 0 0 0 0 D 1 1 0 1 1 0 0 0 0 1 0 E 1 1 1 0 0 1 1 0 0 0 0 F 1 1 1 1 0 1 1 1 0 0 0 Fonte: Autora no terminal (Pin name). Surge uma janela, chamada propriedades do terminal (Pin properties). Uma vez que o projeto foi inserido, foi necessário compilá-lo para verificar a existên- cia de erros. Após isto, foi necessário fazer a simulação funcional, a simulação funcional verifica os resultados de saída de um circuito digital combinacional de acordo com as suas entradas. Para descobrir como funcionava para configurar o display de 7 segmentos do FPGA foi consultado o datasheet, desta forma os pinos para a configuração do display se dá por: Figura 7 – Pinagem display 7 segmentos. Fonte: Datasheet. 13 Ao final, foi feito a configuração dos pinos no FPGA associando eles as entradas e saídas, como podemos observar nas Figuras 8 e 9. Figura 8 – Pinos do FPGA. Fonte: Autora. Figura 9 – Entradas e Saídas e suas pinagens. Fonte: Autora. 14 5 RESULTADOS 5.1 Primeira etapa A partir da Tabela 1, que foi gerada através da análise do display 7 segmentos, podemos definir as equações booleanas referentes a cada segmento do display, para isso, faremos a utilização de duas técnicas, sendo elas o mapa K e os mintermos. Utilizamos o Mapa K e os mintermos para gerar equações booleanas, a fim de fazer a montagem do circuito da forma mais simplificada possível. A seguir podemos observar as equações para cada segmento do display. Led A - Ā ·C̄ · (B̄ ·D+B · D̄)+A ·D · (B̄ ·C+B ·C̄) Led B - A ·B · D̄+ Ā ·B ·C̄ ·D+B ·C · D̄+A ·C ·D Led C - Ā · B̄ ·C · D̄+A ·B ·C+A ·B ·C̄ Led D - B ·C ·D+ B̄ ·C̄ ·D+ Ā ·B ·C̄ · D̄+A · B̄ ·C · D̄ Led E - Ā ·D+ Ā ·B ·C̄+ B̄ ·C̄ ·D Led F - Ā ·B ·C̄ ·D+ Ā ·C ·D+ Ā · B̄ ·C+ Ā · B̄ ·D Led G - Ā · B̄ ·C̄+ Ā ·B ·C ·D+A ·B ·C̄ · D̄ Após a simplificação das expressões booleanas foi feito uma simulação do circuito no Proteus, como podemos observar na Figura 10. Figura 10 – Projeto - Proteus. Fonte: Autora 15 A partir do projeto o circuito foi montado no FPGA, como podemos observar na Figura 11. Figura 11 – Projeto - FPGA. Fonte: Autora 16 Na Figura 12, podemos observar a formação do número 1 (um), pois estamos representando a segunda linha da Tabela 1. Figura 12 – Número 1 Fonte: Autora Na Figura 13, podemos observar a formação do número 2 (dois), pois estamos representando a terceira linha da Tabela 1. Figura 13 – Número 2 Fonte: Autora 17 Na Figura 14, podemos observar a formação do número 3 (três), pois estamos representando a quarta linha da Tabela 1. Figura 14 – Número 3 Fonte: Autora Na Figura 15, podemos observar a formação do número 4 (quatro), pois estamos representando a quinta linha da Tabela 1. Figura 15 – Número 4 Fonte: Autora 18 Na Figura 16, podemos observar a formação do número 5 (cinco), pois estamos representando a sexta linha da Tabela 1. Figura 16 – Número 5 Fonte: Autora Na Figura 17, podemos observar a formação do número 6 (seis), pois estamos representando a sétima linha da Tabela 1. Figura 17 – Número 6 Fonte: Autora 19 Na Figura 18, podemos observar a formação do número 7 (sete), pois estamos representando a oitava linha da Tabela 1. Figura 18 – Número 7 Fonte: Autora Na Figura 19, podemos observar a formação do número 8 (oito), pois estamos representando a nona linha da Tabela 1. Figura 19 – Número 8 Fonte: Autora 20 Na Figura 20, podemos observar a formação do número 9 (nove), pois estamos representando a decima linha da Tabela 1. Figura 20 – Número 9 Fonte: Autora Na Figura 21, podemos observar a formação do número A (dez), pois estamos representando a decima primeira linha da Tabela 1. Figura 21 – Número A Fonte: Autora 21 Na Figura 22, podemos observar a formação do número B (onze), poisestamos representando a decima segunda linha da Tabela 1. Figura 22 – Número B Fonte: Autora Na Figura 23, podemos observar a formação do número C (doze), pois estamos representando a decima terceira linha da Tabela 1. Figura 23 – Número C Fonte: Autora 22 Na Figura 24, podemos observar a formação do número D (treze), pois estamos representando a decima quarta linha da Tabela 1. Figura 24 – Número D Fonte: Autora Na Figura 25, podemos observar a formação do número E (quatorze), pois estamos representando a decima quinta linha da Tabela 1. Figura 25 – Número E Fonte: Autora 23 Na Figura 26, podemos observar a formação do número F (quinze), pois estamos representando a decima sexta linha da Tabela 1. Figura 26 – Número F Fonte: Autora 24 6 SIMULAÇÃO A simulação feita no Proteus foi testada para cada entrada da tabela verdade, como podemos observar nas Figuras 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41 e 42, respectivamente. Figura 27 – Primeira linha da tabela verdade - Número zero. Fonte: Autora Figura 28 – Segunda linha da tabela verdade - Número um. Fonte: Autora 25 Figura 29 – Terceira linha da tabela verdade - Número dois. Fonte: Autora Figura 30 – Quarta linha da tabela verdade - Número três. Fonte: Autora 26 Figura 31 – Quinta linha da tabela verdade - Número quatro. Fonte: Autora Figura 32 – Sexta linha da tabela verdade - Número cinco. Fonte: Autora 27 Figura 33 – Sétima linha da tabela verdade - Número seis. Fonte: Autora Figura 34 – Oitava linha da tabela verdade - Número sete. Fonte: Autora 28 Figura 35 – Nona linha da tabela verdade - Número oito. Fonte: Autora Figura 36 – Decima linha da tabela verdade - Número nove. Fonte: Autora 29 Figura 37 – Decima primeira linha da tabela verdade - Número A. Fonte: Autora Figura 38 – Decima segunda linha da tabela verdade - Número B. Fonte: Autora 30 Figura 39 – Decima terceira linha da tabela verdade - Número C. Fonte: Autora Figura 40 – Decima quarta linha da tabela verdade - Número D. Fonte: Autora 31 Figura 41 – Decima quinta linha da tabela verdade - Número E. Fonte: Autora Figura 42 – Decima sexta linha da tabela verdade - Número F. Fonte: Autora 32 7 CONCLUSÕES Ao final da prática podemos concluir que a utilização do FPGA é de grande valia, pois composto por segmentos de hardware que você pode reconfigurar via software, os FPGAs reduzem o tempo de teste e fornecem a você a habilidade de realizar testes não antes possíveis sem um hardware customizado. Além disso, FPGAs processam os dados em hardware, assim, eles podem alcançar altas taxas de transferência, o que torna possível realizar medições mais rápidas do que a capacidade de aquisição de dados do hardware de E/S. Ao invés de seguir o paradigma tradicional de aquisição, transferência e pós-processamento, os sistemas de testes que incorporam FPGAs podem testar continuamente um DUT para reduzir o tempo de teste. Podemos ver como vantagem também, que o FPGA processa continuamente os dados, você pode definir o backend de medição para enviar os dados de interesse de maneira seletivo, bastando adicionar acionamentos customizados e gravação de dados. Isso está em contraste com os instrumentos tradicionais, que podem executar somente um conjunto fixo de operações; instrumentos com o FPGA habilitado podem ser reconfigurados para atender às necessidades de uma aplicação específica em hardware. 33 REFERÊNCIAS CAPUANO, F. G. Elementos de eletrônica digital. [S.l.]: Editora Saraiva, 2018. ELETRONICA. Dislay 7 Segmentos. Disponível em: <http://www.bosontreinamentos.com.br/ eletronica/eletronica-digital/como-funciona-um-display-de-leds-de-7-segmentos/>. Acesso em 20 de junho de 2019.: [s.n.]. FILIPEFLOP. FPGA. Disponível em: <https://www.filipeflop.com/blog/ fpga-no-modo-spartan-com-papilio-one/>. Acesso em 20 de junho de 2019.: [s.n.]. WINKIPEDIA. Mintermo e Maxtermo. Disponível em: <https://wiki.ifsc.edu.br/mediawiki/ index.php/AULA_8_-_Eletr%C3%B4nica_Digital_1_-_Gradua%C3%A7%C3%A3o>. Acesso em 20 de junho de 2019.: [s.n.]. http://www.bosontreinamentos.com.br/eletronica/eletronica-digital/como-funciona-um-display-de-leds-de-7-segmentos/ http://www.bosontreinamentos.com.br/eletronica/eletronica-digital/como-funciona-um-display-de-leds-de-7-segmentos/ https://www.filipeflop.com/blog/fpga-no-modo-spartan-com-papilio-one/ https://www.filipeflop.com/blog/fpga-no-modo-spartan-com-papilio-one/ https://wiki.ifsc.edu.br/mediawiki/index.php/AULA_8_-_Eletr%C3%B4nica_Digital_1_-_Gradua%C3%A7%C3%A3o https://wiki.ifsc.edu.br/mediawiki/index.php/AULA_8_-_Eletr%C3%B4nica_Digital_1_-_Gradua%C3%A7%C3%A3o Sumário Introdução Números Hexadecimais Display 7 Segmentos Field-Programmable Gate Array - FPGA Mapa de Karnaugh Mintermo e Maxtermo Mintermos Maxtermos Objetivos Materiais Utilizados Procedimento Prático Resultados Primeira etapa Simulação Conclusões REFERÊNCIAS
Compartilhar