Extensão do Decodificador BCD para display de 7 segmentos
Utilizei o mesmo PIC 16F676 para um decodificador para apresentar caracteres alfanuméricos em displays de led de 7 segmentos. Para tanto é necessário o uso de mais uma porta para entrar o código binário (agora não mais BCD) de 5 bits, o que permite 32 combinações. Dada a limitação dos displays de 7 segmentos, nem todos caracteres alfanuméricos são possíveis de ser reproduzidos, tais como o "k", "m", "w", "z", "x", e o "q" pra não confundir com o "9".
Segue a tabela com os códigos de entrada na PORT A:
PORT A | |||||
4 | 3 | 2 | 1 | 0 | Caractere |
0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 1 | 1 |
0 | 0 | 0 | 1 | 0 | 2 |
0 | 0 | 0 | 1 | 1 | 3 |
0 | 0 | 1 | 0 | 0 | 4 |
0 | 0 | 1 | 0 | 1 | 5 |
0 | 0 | 1 | 1 | 0 | 6 |
0 | 0 | 1 | 1 | 1 | 7 |
0 | 1 | 0 | 0 | 0 | 8 |
0 | 1 | 0 | 0 | 1 | 9 |
0 | 1 | 0 | 1 | 0 | A |
0 | 1 | 0 | 1 | 1 | b |
0 | 1 | 1 | 0 | 0 | C |
0 | 1 | 1 | 0 | 1 | d |
0 | 1 | 1 | 1 | 0 | E |
0 | 1 | 1 | 1 | 1 | F |
1 | 0 | 0 | 0 | 0 | g |
1 | 0 | 0 | 0 | 1 | H |
1 | 0 | 0 | 1 | 0 | i |
1 | 0 | 0 | 1 | 1 | J |
1 | 0 | 1 | 0 | 0 | L |
1 | 0 | 1 | 0 | 1 | n |
1 | 0 | 1 | 1 | 0 | o |
1 | 0 | 1 | 1 | 1 | P |
1 | 1 | 0 | 0 | 0 | r |
1 | 1 | 0 | 0 | 1 | t |
1 | 1 | 0 | 1 | 0 | u |
1 | 1 | 0 | 1 | 1 | y |
1 | 1 | 1 | 0 | 0 | - |
1 | 1 | 1 | 0 | 1 | = |
1 | 1 | 1 | 1 | 0 | [ |
1 | 1 | 1 | 1 | 1 | ] |
Com a utilização de mais um bit de entrada, a seleção de saídas para catodo comum ou anodo comum deixa de existir e o decodificador só funciona para catodo comum.
Os códigos Hexa estão a seguir:
:100000002E288001840AFF3E031D01282928A30110
:10001000A200FF30A207031CA307031C29280330FA
:10002000A100DF3015200928A101E83EA000A109A8
:10003000FC30031C1E28A00703181B28A00764001F
:10004000A10F1B2820182428A01C282800002828DD
:10005000080083130313831264000800073099001B
:1000600083161F30850087019101203084004030C5
:1000700083120120BC01640020303C02031849288F
:100080003C08B80058200130A300F4300820BC0F11
:100090003B280830B8001F300505B8006400380858
:1000A0003902031D54284B283808B90058204B2822
:1000B00038081F3C031C86285F20870086280030F4
:1000C0008A003808663E03188A0A82001F34033407
:1000D0002D342734333436343E3403343F34333410
:1000E0003B343E341C342F343C34383437343B34C6
:1000F00002340F341C342A342E34393428343C343E
:100100000E343734203424341C34073438081F3C70
:10011000031CB8289120013903198512031D851687
:10012000B82800308A003808983E03188A0A8200EE
:100130000134003401340134003401340134013419
:100140000134013401340034013400340134013409
:1001500001340034003400340034003400340134FD
:1001600000340034003400340034003401340134ED
:0601700008006300B9283D
:02400E00C43FAD
:00000001FF
E um pequeno vídeo de demonstração dos caracteres gerados: