Portal - FPGA para Todos

Decodificador Duplo para Display de Sete Segmentos

Decodificador Duplo para Display de Sete Segmentos

 

Neste projeto, expandimos o circuito do decodificador de binário para 7 segmentos estudado no artigo "Decodificador para Display de Sete Segmentos" para a exibição de dois algarismos. Para diversos algarismos, pode ser interessante um processo de multiplexação, como mostrado no artigo "Multiplexação Display de 6 Algarismos".

A implementação do duplo decodificador, realizada aqui no modo esquemático do Quartus II, exemplifica um projeto hierárquico, que é construído a partir de blocos mais simples. A simulação deste projeto não será feita, pois ele é uma expansão de outro já simulado. No final deste exemplo há um tutorial sobre a implementação do modo hierárquico no Quartus® II, além de dicas sobre "Análise e Síntese".

Neste projeto será utilizado:

Detalhamento da Estrutura

O circuito de um decodificador de binário para 7 segmentos é discutido e implementado em outro artigo do portal. Aqui, simplesmente agruparemos dois decodificadores para a exibição de um valor de oito bits, na forma de dois algarismos hexadecimais para exibição em displays.

 Diagrama de Blocos Duplo_Dec
Figura 1 - Diagrama de Blocos

No Quartus II, o circuito implementado em modo esquemático pode ficar na forma mostrada na figura abaixo.

Diagrama Esquemático no Quartus II
Figura 2 - Diagrama Esquemático no Quartus II

No diagrama esquemático, as oito entradas para o dado de oito bits (D7, D6,...,D0) são agrupadas em um símbolo único de pino. Se diz que os sinais de entrada formam o grupo (ou barramento) representado por D[7..0]. Os sinais do grupo podem ser utilizados individualmente no esquemático, e neste projeto são conectados às entradas dos blocos "bin_7seg". D7 a D4 compõem a parte mais significativa do valor de oito bits, e são aplicadas a um dos decodificadores. O outro decodificador recebe a parte menos significativa, nos sinais D3 a D0.

Cada decodificador possui sete saídas, uma para cada segmento, e são nomeadas de AH à GH (para o display mais significativo) e de AL à GL (para o menos significativo), como mostra a Figura 2. Aqui, vamos adotar uma abordagem hierárquica de projeto: O bloco "bin_7seg", desenvolvido anteriormente, será utilizado como um bloco básico do nosso novo circuito.

Implementação do Projeto

Inicialmente, crie uma nova pasta, de nome "duplo_dec" para o projeto, e copie para dentro dela os arquivos de diagrama esquemático e símbolo do bloco bin_7seg (arquivos bin_7seg.bdf e bin_7seg.bsf ilustrados na Figura 3).

Figura 3: Arquivos ".bdf" e ".bsf"

Execute o assistente para um novo projeto do Quartus. No segundo passo do assistente, Figura 4, adicione o arquivo do diagrama esquemático (".bdf") ao projeto.

Segundo Passo no Assistente do Quartus II

Figura 4: Segundo Passo do Assistente do Quartus II

Após a conclusão do assistente, crie um novo diagrama esquemático para construir o mesmo. Na janela de seleção de componentes, Figura 5, observe que existe agora uma biblioteca "Projeto", onde se encontra o bloco bin_7seg. Duas instâncias deste bloco serão utilizadas em nosso diagrama esquemático, como apresentado na Figura 2.

Bloco do Modo HierárquicoFigura 5: Bloco do Modo Hierárquico

Após a conclusão da entrada do esquema, salve-o. Observe a característica de modo hierárquico: nosso circuito, na forma do duplo_dec.bdf, é o arquivo de topo de hierarquia do projeto. Esta hierarquia pode ser vista na janela do utilitário "Project Navigator" do Quartus II (Figura 6).

Hierarquia do Projeto

Figura 6: Hierarquia do Projeto

Depois de estruturar todo projeto, faça uma Análise e Síntese do mesmo para o programa procurar algum erro ou aviso no esquemático. Se não ocorreu nenhum equívoco na implementação do projeto, os mesmos dois avisos encontrados no "Decodificador para Display de Sete Segmentos" aparecerão: compilação paralela e da porta lógica "E" respectiva à combinação "oito" não usada. Para mais informações sobre esses avisos consulte o artigo sobre o "bin_7seg" (link aqui) e também o tutorial no final deste artigo.

Um resumo da Análise e Síntese está logo abaixo.

Resumo da Análise e Síntese

Figura 7: Resumo da Análise e Síntese

Estrutura Física

O projeto é composto pelo módulo de CPLD, duas placa de display de sete segmentos de anodo comum e outra de chaves, conectados respectivamente no CON1, CON2 e CON3 do Glossary LinkCPLD, como mostra a Figura 8. A estrutura física foi selecionada de forma ergonômica: o display mais significativo fica acima do outro, e a chaves ficam abaixo dos displays. Lembre-se de que o Glossary LinkCPLD usado é o EPM7064, da família MAX7000S.

No projeto, as entradas são implementadas pela placa de chaves, as saídas pelas placas de display e as funções lógicas pelo kit de CPLD.

Estrutura Física do Projeto
Figura 8: Estrutura Física do Projeto

Montagem e Roteamento

Fique atento para que o Vcc e o GND dos periféricos fiquem alinhados com o do CPLD. Veja em detalhe a ilustração da montagem do projeto, feita no Fritzing, na Figura 9.

Ligação na Matriz de Contatos

Figura 9: Ligação na Matriz de Contatos

A Figura 10 mostra a pinagem atribuida no Pin Planner, no Quartus II, de acordo com a ligação na matriz de contatos.

Atribuição dos Pinos no Pin Planner

Figura 10: Atribuição dos Pinos no Pin Planner

Gravação e Teste

Depois de implementar e atribuir os pinos do projeto, faça uma "Compilação Completa" para gerar o arquivo de gravação do projeto, além do programa procurar algum erro ou aviso no mesmo.

Para gravar o projeto siga o Tutorial de Criação de Projeto em Modo Esquemático na etapa de "Gravação do CPLD" clicando aqui. Lembre-se sempre de gravar o módulo de CPLD sem os periféricos, evitando problemas na pinagem atribuída em projetos anteriores. Também não esqueça de configurar as saídas não utilizadas como entradas tri-state.

Para testar o funcionamento desse projeto, monta-se a periferia como relatada na "Estrutura Física" e atribuem-se níveis lógicos na placa de chaves, analisando a combinação posta com a decodificação em cada display de sete segmentos. O vídeo na introdução desse exemplo apresenta o teste realizado.

Tutorial - Implementação do Modo Hierárquico

Segue abaixo o tutorial sobre a implementação do projeto e para ampliá-lo clique aqui, ou sobre ele.

Arquivos do projeto

Para o download do projeto completo, clique aqui.

O arquivo está no formato ".zip", e inclui os arquivos de projeto do Quartus (".qpf"), de modo esquemático (".bdf"), de gravação do CPLD (".pof"), de símbolo para usar em projetos mais avançados (".bsf"), entre outros.

Referências

 

Quem está Online

Temos 67 visitantes e Nenhum membro online

Apoio

Login Form