O display usado é o GDV04520, tem 6 dígitos, opera em 3,3V com 1/4 duty e 1/3 bias, tem 16 pinos e é um pouco mais largo que um IC com encapsulamento DIP.
Display LCD GDV04520 de 7 segmentos e 6 dígitos visto de cima. É um pouco mais largo que um IC com encapsulamento DIP de 16 pinos. |
Display LCD visto de baixo. |
Pinagem do LCD GDV04520. |
Inicialização do controlador LCD
Registro LCDCON (LCD CONTROL REGISTER) com o valor 0x8B: LCD driver enabled and enabled in Sleep mode, clock source LFINTOSC, 1/4 multiplex.
Registro LCDPS (LCD PHASE REGISTER) com o valor 0x01:Type-A phase changes within each common type, 1/3 Bias mode, 1:2 LCD Prescaler Selection bits.
Registro LCDREF (LCD REFERENCE VOLTAGE CONTROL REGISTER) com o valor 0xCE: Internal LCD Reference is enabled and powered by a 3.072V output of the FVR, VLCD3PE, VLCD2PE e VLCD1PE conectados aos rspectivos terminais externos.
Registro LCDCST (LCD CONTRAST CONTROL REGISTER) com o valor 0x00: máximo contraste.
Registro LCDRL (LCD REFERENCE LADDER CONTROL REGISTERS) com o valor 0x50: Internal LCD Reference Ladder is powered in Low-Power mode.
Registros LCDSE0 e LCDSE1 (LCD SEGMENT ENABLE REGISTERS) com os valors 0xBF e 0x37: segment enabled to RA1, RA5, RA4, RC2, RA7, RA6, RB0, RB7, RA0, RC5 , RC6 and RC7.
O mapeamento dos segmentos do LCD ficam assim:
bit: 7 6 5 4 3 2 1 0
Registro:
LCDDATA0 3B -- 2A 2B 1A 1B 0A 0B
LCDDATA1 -- -- 5A 5B -- A4 4B 3A
LCDDATA3 3G -- 2F 2G 1F 1G 0F 0G
LCDDATA4 -- -- 5F 5G -- 4F 4G 3F
LCDDATA6 3C -- 2E 2C 1E 1C 0E 0C
LCDDATA7 -- -- 5E 5C -- 4E 4C 3E
LCDDATA9 3P -- 2D 2P 1D 1P 0D 0P
LCDDATA10 -- -- 5D 5P -- 4D 4P 3D
Sendo 1 para segmento ligado e 0, desligado.
Display em ação mostrando a tensão do IC INA219. |
Saída do COM0. |
Saída típica de um dos segmentos. |