No artigo, conectaremos um display de cristal líquido 1602 com um módulo FC-113 I2C ao Arduino, devido ao qual a conexão será realizada usando apenas dois fios de dados e dois fios de alimentação.
É necessário
- - Arduino;
- - Display LCD 1602 (16 caracteres, 2 linhas);
- - Adaptador I2C FC-113;
- - fios de conexão.
Instruções
Passo 1
O módulo FC-113 é baseado no microcircuito PCF8574T, que é um registrador de deslocamento de 8 bits - expansor de E / S para o barramento serial I2C. Na figura, o microcircuito é designado DD1.
R1 é um resistor de ajuste para ajustar o contraste do LCD.
Jumper J1 é usado para ligar a luz de fundo da tela.
Os pinos 1 a 16 são usados para conectar o módulo aos pinos do display LCD.
Os pads de contato A1 … A3 são necessários para alterar o endereço do dispositivo I2C. Soldando os jumpers correspondentes, você pode alterar o endereço do dispositivo. A tabela mostra a correspondência de endereços e jumpers: "0" corresponde ao circuito aberto, "1" - ao jumper instalado. Por padrão, o endereço do dispositivo é 0x27, ou seja, todos os 3 jumpers estão abertos.
Passo 2
O módulo é conectado ao Arduino como padrão para o barramento I2C: o pino SDA do módulo é conectado à porta analógica A4, o pino SCL é conectado à porta analógica A5 do Arduino. O módulo é alimentado por + 5V do Arduino. O próprio módulo é conectado pelos pinos 1 … 16 com os pinos correspondentes 1 … 16 no display LCD.
etapa 3
Agora precisamos de uma biblioteca para trabalhar com LCDs por meio da interface I2C. Você pode usar, por exemplo, este: https://www.dfrobot.com/wiki/index.php?title=I2C/TWI_LCD1602_Module_(SKU:_DFR0063)#Sample_Code (link na linha "Baixar código de amostra e biblioteca")
O arquivo baixado "LiquidCrystal_I2Cv1-1.rar" é descompactado para a pasta "\ libraries ", que está localizada no diretório IDE do Arduino.
A biblioteca oferece suporte a um conjunto de funções padrão para telas LCD:
LiquidCrystal () - cria uma variável do tipo LiquidCrystal e aceita parâmetros de conexão de exibição (números de pinos), begin () - inicialização do display LCD, configuração de parâmetros (número de linhas e símbolos);
clear () - limpa a tela e retorna o cursor à posição inicial;
home () - retorna o cursor à posição inicial;
setCursor () - definindo o cursor para a posição especificada;
escrever () - exibe um caractere na tela LCD;
imprimir () - exibe texto na tela LCD;
cursor () - mostra o cursor, ou seja, sublinhado sob o lugar do próximo caractere;
noCursor () - oculta o cursor;
blink () - cursor piscando;
noBlink () - cancela o piscar;
noDisplay () - desliga a tela enquanto salva todas as informações exibidas;
display () - liga o display enquanto salva todas as informações exibidas;
scrollDisplayLeft () - rola a posição do conteúdo de exibição 1 para a esquerda;
scrollDisplayRight () - rola o conteúdo da tela 1 posição para a direita;
autoscroll () - ativa autoscroll;
noAutoscroll () - desativa a rolagem automática;
leftToRight () - define a direção do texto da esquerda para a direita;
rightToLeft () - direção do texto da direita para a esquerda;
createChar () - Cria um caractere personalizado para a tela LCD.
Passo 4
Vamos abrir o exemplo: Arquivo -> Amostras -> LiquidCrystal_I2C -> CustomChars e refazer um pouco. Vamos exibir uma mensagem, ao final da qual haverá um símbolo piscando. Todas as nuances do esboço são comentadas nos comentários ao código.
Etapa 5
Vamos examinar mais de perto a questão da criação de seus próprios símbolos para telas LCD. Cada personagem na tela consiste em 35 pontos: 5 de largura e 7 de altura (+1 sublinhado reservado). Na linha 6 do esboço acima, definimos uma matriz de 7 números: {0x0, 0xa, 0x1f, 0x1f, 0xe, 0x4, 0x0}. Vamos converter números hexadecimais em binários: {00000, 01010, 11111, 11111, 01110, 00100, 00000}. Esses números nada mais são do que máscaras de bits para cada uma das 7 linhas do caractere, onde "0" denota um ponto claro e "1" um ponto escuro. Por exemplo, um símbolo de coração especificado como uma máscara de bits aparecerá na tela, conforme mostrado na figura.
Etapa 6
Faça upload do esboço para o Arduino. A tela exibirá a inscrição que especificamos com um cursor piscando no final.