- Materiais requisitados
- Breve introdução ao display LCD de matriz de pontos de 16 × 2
- ADC no TIVA Launchpad
- Diagrama de circuito e conexões
- Programação TIVA TM4C Launchpad para LCD usando Energia IDE
- Display LCD 16x2 com TIVA Launchpad
No tutorial anterior, começamos aprendendo sobre o TIVA TM4C Launchpad e como controlar seus pinos de entrada e saída digital usando Energia IDE. Agora, neste tutorial, aprenderemos sobre a interface do display LCD de matriz de pontos 16 × 2 com esta placa para exibir informações úteis e dados do sensor.
O display LCD 16x2 é o que a maioria de nós teria descoberto por meio de PCOs públicos ou o teria usado em outros projetos eletrônicos. 16x2 LCD é o módulo de exibição de baixo custo que é muito útil para qualquer aplicação eletrônica para exibir dados ou outras informações de depuração. Portanto, aqui estamos fazendo a interface do monitor LCD 16x2 com o LaunchPad TIVA C Series TM4C123G. Aqui, mostraremos os valores ADC e os níveis de tensão no display LCD. Um potenciômetro é anexado para variar os valores de ADC. Saiba mais sobre o monitor LCD 16x2 e seus pinos aqui.
Materiais requisitados
- TIVA TM4C LaunchPad da Texas Instruments
- Visor LCD de matriz de pontos 16 × 2
- Fios de conexão
Breve introdução ao display LCD de matriz de pontos de 16 × 2
Como dito anteriormente, o IDE Energia fornece uma bela biblioteca que torna a interface um pedaço de bolo e, portanto, não é obrigatório saber nada sobre o módulo de exibição. Mas, não seria interessante mostrar o que estamos usando !!
O nome 16 × 2 implica que a exibição tem 16 colunas e 2 linhas, que juntas (16 * 2) formam 32 caixas. Uma única caixa seria algo assim na imagem abaixo
Uma única caixa tem 40 pixels (pontos) com uma ordem de matriz de 5 linhas e 8 colunas, esses 40 pixels juntos formam um caractere. Da mesma forma, 32 caracteres podem ser exibidos em todas as caixas. Agora vamos dar uma olhada nas pinagens.
O LCD tem um total de 16 pinos, conforme mostrado acima, eles podem ser categorizados em quatro grupos como a seguir
Pinos de fonte (1, 2 e 3): esses pinos fornecem a potência e o nível de contraste do display
Pinos de controle (4, 5 e 6): esses pinos definem / controlam os registros no IC de interface do LCD (mais informações podem ser encontradas no link abaixo)
Pinos de dados / comando (7 a 14): Esses pinos fornecem os dados de quais informações devem ser exibidas no LCD.
Pinos de LED (15 e 16): Esses pinos são usados para acender a luz de fundo do LCD, se necessário (opcional).
De todos esses 16 pinos, apenas 10 pinos são obrigatórios para o funcionamento correto do LCD se você quiser saber mais sobre esses monitores LCD, pule para este artigo sobre LCD.
Verifique também a interface do display LCD 16x2 com muitos outros microcontroladores
- Interface de LCD 16x2 com microcontrolador Atmega16 AVR no modo de 4 bits
- Interface LCD com microcontrolador PIC usando MPLABX e XC8
- Interface LCD 16x2 com STM32F103C8T6
- Interface de LCD com MSP430G2 LaunchPad
- Interface de LCD com microcontrolador 8051
- Interface de LCD 16x2 com Arduino
- Interface de LCD 16x2 com Raspberry Pi usando Python
ADC no TIVA Launchpad
O potenciômetro fornece saída analógica para que não possa ser conectado aos pinos digitais do Launchpad. Portanto, os pinos analógicos ou ADC do MCU são usados para fazer a interface de qualquer sensor cuja saída seja analógica por natureza. O TIVA TM4C possui 2 canais ADC com saída de 12 bits, o que significa que os valores analógicos, do sensor ou do potenciômetro, podem ser mapeados entre 0 a 2 ^ 12 (4096) para convertê-los em valores digitais. Para saber mais sobre a conversão Analógico para Digital no Microcontrolador, siga o link.
Existem 12 pinos de entrada analógica (A0-A11) no TIVA Launchpad, conforme mostrado na imagem abaixo.
Diagrama de circuito e conexões
O diagrama de circuito completo para fazer a interface de um display LCD de matriz de pontos de 16 × 2 com o TIVA Launchpad TM4C é mostrado abaixo.
Uma das principais limitações ao fazer a interface com esses LCDs são as tensões operacionais. O display LCD tem uma tensão operacional de + 5V enquanto o TM4C opera apenas com 3,6V. Para nossa sorte, o pino de dados do IC da interface LCD (HD44780U) tem uma ampla tensão de operação de 2,7 V a 5,5 V. Portanto, temos que nos preocupar apenas com o Vdd (pino 2) do LCD enquanto os pinos de dados podem funcionar mesmo com 3,6V.
A placa TIVA por padrão não possui um pino de + 5V, então uma fonte de alimentação externa deve ser usada para fazer o LCD funcionar. Use a fonte de alimentação da placa Arduino ou use o regulador de tensão 7805. Certifique-se de conectar o aterramento da fonte de alimentação com o aterramento da placa TIVA.
Abaixo está a tabela que mostra as conexões entre o LCD e o TIVA Launchpad
Nome do pino LCD | TIVA Launchpad |
Vss | Terra |
Vdd | Fonte de alimentação + 5V |
Rs | Pin PC_6 de TIVA |
R / W | Terra |
Habilitar | PIN PB_7 de TIVA |
D4 | Pino PA_2 de TIVA |
D5 | Pin PA_3 de TIVA |
D6 | Pin PA_4 de TIVA |
D7 | PIN PB_6 de TIVA |
Para exibir os valores do potenciômetro no LCD, conecte a saída do Pot a qualquer pino analógico (PE2).
Programação TIVA TM4C Launchpad para LCD usando Energia IDE
Antes de prosseguir com a explicação, anote os pinos que são usados neste projeto. Dê uma olhada no diagrama do circuito e no diagrama de pinagem TIVA fornecido acima. O código completo com um vídeo de trabalho está anexado no final deste tutorial.
Energia IDE, por padrão, vem com Biblioteca para LCD 16x2 (LiquidCrystal). Se não estiver presente, faça o download deste link do github e cole na pasta Bibliotecas do IDE Energia.
Em seguida, inicie o programa incluindo a biblioteca para LCD e definindo os pinos para ele
#incluir
O próximo passo é mencionar os pinos para que o LCD está ligado a, como já nomeou-o usando o #define podemos agora simplesmente mencionar os nomes dos pinos LCD. Certifique-se de que a mesma ordem seja seguida.
LiquidCrystal lcd (RS, EN, D4, D5, D6, D7);
Existem tantos tipos de monitores LCD variando em tamanho e natureza, então na função void setup () , primeiro especifique o tipo de LCD que você está usando no projeto. Aqui usamos um display LCD 16x2.
lcd.begin (16, 2);
Para imprimir algo no LCD, mencione duas coisas no programa. Uma é a posição do texto que pode ser mencionada usando a linha lcd.setCursor () e a outra é o conteúdo a ser impresso que pode ser mencionado por lcd.print (). Aqui nós estamos ajustando o cursor para 1 st linha e 1 st coluna.
lcd.setCursor (0,0);
Da mesma forma, também podemos fazer
lcd.setCursor (0, 1); // para definir o cursor para a 1ª coluna 2ª linha
Assim como apagar um quadro branco depois de escrever nele, um LCD também deve ser apagado quando algo estiver escrito nele. Isso pode ser feito usando a linha abaixo
lcd.clear ();
Em vazio laço () função, tomar o valor vaso, utilizando analogRead () função e armazenar este valor na variável outro e, em seguida, exibir este valor.
sensorValue = analogRead (sensorPin); lcd.setCursor (0, 0); lcd.print ("valor ADC:"); lcd.setCursor (10, 0); lcd.print (sensorValue);
Agora, converta este valor ADC em tensão multiplicando-o por 3,3 porque é a tensão mais alta que pode ser aceita pelos pinos das placas TIVA. Em seguida, divida o valor multiplicado por 4096.
lcd.setCursor (0, 1); lcd.print ("Voltagens:"); tensões = (sensorValue * 3,3) / 4096; lcd.setCursor (10, 1); lcd.print (tensões);
O programa completo pode ser encontrado no final.
Display LCD 16x2 com TIVA Launchpad
Assim que o hardware e o código estiverem prontos, basta conectar a placa TIVA ao computador e fazer o upload do código para a placa. Siga o tutorial anterior para aprender como fazer upload do código no TIVA Launchpad.
Assim que o código for carregado, você deverá ver o visor mostrando o seguinte.
Agora, basta girar o potenciômetro para variar o valor do ADC e você verá que o valor da tensão correspondente também irá variar, conforme mostrado na figura abaixo.
O código completo e o vídeo detalhado podem ser encontrados abaixo. Vá em frente e tente alterar o texto exibido no visor LCD.