Categorias: Circuitos de microcontrolador
Número de visualizações: 24878
Comentários sobre o artigo: 0
Quais são os monitores para o Arduino e como conectá-los
Microcontroladores permitem que você faça qualquer sistema de automação e monitoramento. Mas para a interação entre tecnologia e homem, precisamos de dispositivos de entrada - vários botões, alavancas, potenciômetros e dispositivos de saída - indicadores luminosos (lâmpadas), vários dispositivos de sinalização sonora (tweeters) e, finalmente, displays. Neste artigo, veremos as exibições de caracteres do Arduino, como conectá-los e fazê-los funcionar.

Tipos de monitores
Os displays podem ser divididos em:
-
Segmento (como em um relógio digital);
-
Alfanumérico;
-
Gráfico.
Segmentados são usados para indicar quantidades simples, por exemplo: temperatura, tempo, número de rotações. Tais são usados em calculadoras e no orçamento de eletrodomésticos até hoje. As informações são exibidas destacando certos caracteres.
Eles podem ser de cristal líquido e LED. Monitores alfanuméricos podem ser encontrados em eletrodomésticos antigos, brinquedos, equipamentos industriais e muito mais. Eles também são chamados de síntese de sinais, textual, simbólico. Consistem em um conjunto de pixels grandes. Pode ser executado nas tecnologias LCD, TFT e OLED.
As telas gráficas podem até incluir um monitor ou uma tela de smartphone, acho que não são necessárias explicações especiais. O artigo se concentrará especificamente na colaboração de displays simbólicos ou de síntese de sinais e do Arduino.
Monitores de síntese de sinal
Exibições desse tipo podem exibir simultaneamente um certo número de caracteres, limitado por dimensões geométricas. Eles são marcados de acordo com este padrão:
-
1602;
-
2002.
Onde os dois primeiros dígitos são o número de caracteres na linha e o segundo par é o número de linhas. Assim, um display chamado 1602 pode exibir 2 linhas de 16 caracteres por vez.
Os displays são diferenciados pelo tipo de entrada de dados:
-
Com entrada de dados paralela;
-
Com entrada de dados via protocolo I2C.
A entrada de dados paralelos envolve a transferência de palavras de 8 ou 4 bits em 10 ou 6 pinos, respectivamente (Fig. Abaixo - diagrama de conexão para controle de 4 bits). Além dos dados, a energia é fornecida ao monitor. Considere isso ao projetar, caso contrário você pode não ter pinos suficientes Placas Arduino.

A transferência de dados para a tela usando I2C precisará de 4 pinos do seu Arduino, 2 dos quais são de energia e 2 são de dados. Mas considere esta questão com mais detalhes abaixo.
Entre os fabricantes nacionais podem distinguir a empresa MELT. Entre os produtos, que têm um número de displays diferentes. Por exemplo, abaixo está um display rotulado 20S4, semelhante ao anterior, que nos mostra que exibe 4 linhas de 20 caracteres.

Ele é construído no controlador KB1013VG6, da JSC ANGSTREM, que é semelhante ao HD44780 da HITACHI e KS0066 da SAMSUNG. Sobre o qual a grande maioria dos monitores chineses é construída. A propósito, ele, como os displays nesses chips, suporta a biblioteca padrão de controle paralelo IDE do Arduino, mas mais sobre isso mais tarde.

As telas de síntese de sinais são fornecidas com e sem luz de fundo e também podem diferir na cor dos caracteres exibidos. O brilho da luz de fundo e o contraste da imagem geralmente são ajustáveis. Abaixo está um exemplo de um esquema de uma folha de dados, para o MELT mencionado acima.

Resistor variável R e serve para ajustar o brilho.
Ligação
Consideraremos a conexão em uma tela do tipo 1602. Antes de tudo, preste atenção à assinatura das conclusões. Existem duas opções, numeração. Nas duas figuras abaixo, está tudo bem - de 1 a 16 da saída.


Observe que o VSS é entendido como terra. Caso contrário, as atribuições de pinos são idênticas. Mas muitas vezes você pode encontrar numeração fora do padrão:

O que você vê? Os contatos são assinados apenas 1, 14 e 15. Além disso, na sequência errada. Caso contrário, os contatos 15 e 16 também permaneceram o ânodo e o cátodo da luz de fundo, e 1 e 2 são o contato comum e mais a potência.Tenha cuidado e preste atenção a esse fato ao conectar!
Vamos analisar com mais detalhes.
-
1 - Terra (Vss) ou potência “-”.
-
2 - (Vcc) "+" potência. Na maioria das vezes é de 5 volts.
-
3 - ajusta o contraste dos caracteres. É realizado através de um potenciômetro instalado entre a potência "+" e este contato. Quanto maior a tensão, menor o brilho e o consumo de energia.
-
4 - Sinal de endereço (RS). Pela presença de um sinal do arduino nessa entrada, o controlador de exibição entende se o sinal de comando (movendo o cursor, por exemplo) ou o código de caractere a ser exibido na linha de dados.
-
5 - (E) permissões para acessar dados. Quando existe um "1" lógico, o visor executa um comando ou exibe um símbolo.
-
6-14 - através desses pinos, é fornecida a entrada de dados paralelos.
-
15 - ânodo de luz de fundo (BLA). Para que acenda com brilho total - + 5V é fornecido aqui.
-
Catodo de luz de fundo 16 - (BLC). Conecte-se ao chão.
Um dos exemplos de conexão com o Arduino no modo de 4 bits foi discutido acima. Agora dê uma olhada no diagrama de fiação no modo de controle de 8 bits. A propósito, você pode notar um resistor variável. É necessário ajustar o brilho da luz de fundo, como mencionado anteriormente.

Dessa forma, você tem metade das entradas ocupadas Placas UNO do Arduino. Obviamente, se você usar o MEGA, esse não será um problema tão significativo, mas ainda não é racional, especialmente se você estiver conectando um grupo de sensores e teclas de controle.
Para liberar as entradas, use o conversor I2C para a tela LCD (é assim que é chamada e você pode encontrá-lo nas lojas com esse nome).

Atenção:
Se você comprar este módulo separadamente da tela, não esqueça a localização e a numeração das conclusões, que examinamos anteriormente.
O pente mostrado na parte inferior é simplesmente soldado ao monitor, e os quatro pinos na extremidade da placa se conectam aos pinos do Arduino, há também um terceiro grupo de dois pinos (foto na parte traseira) que acende a luz de fundo, os modelos vêm com um jumper instalado.
O esquema desse módulo é o seguinte:
E, portanto, parece soldado diretamente aos pinos da tela. A maioria dos modelos é vendida já soldada.

No entanto, para usá-lo, você precisará encontrar a biblioteca LiquidCrystal_I2C na rede, ela não está no conjunto padrão do IDE atual do Arduino no momento da redação.
Lembre-se da pinagem das placas Arduino UNO, de acordo com a numeração dos pinos, que basicamente coincide com o Nano e alguns outros (clique na imagem para ampliar).
Para trabalhar no I2C, você precisa gerar 2 sinais de informação - SDA e SCL, preste atenção no canto inferior direito da figura. Esses pinos do Arduino são combinados com entradas analógicas A4 e A5.
Importante:
Você não pode transferi-los para outras conclusões.
Em seguida, o diagrama de fiação se parecerá com:

Concordo, há muito menos fios! Do arduino para a tela são apenas 4 fios. Um pino de sinal usou apenas dois!
Mas, ao conectar-se, você não terá sucesso, precisará saber o endereço do dispositivo. Para isso, há outro grupo de contatos em que o endereço é definido usando jumpers. Isso é indicado no comando de inicialização da biblioteca correspondente, mais sobre isso abaixo.

O programa
Naturalmente, precisamos de algum tipo de esboço que possa mostrar a imagem na exibição de um personagem. Se você deseja trabalhar diretamente com a tela, precisará estudar folhas de dados e tabelas de símbolos para cada produto específico. Mas o Arduino foi criado para prototipagem simples e rápida de dispositivos eletrônicos. Portanto, seguiremos o outro caminho e aproveitaremos os benefícios da civilização. Já mencionamos que o conjunto padrão de bibliotecas no Arduino IDE possui uma solução pronta para trabalhar com monitores LCD. Você pode encontrá-lo aqui:

By the way, depois de clicar na linha com o anúncio sobre a conexão da biblioteca aparece automaticamente.

Também no IDE do Arduino, existem vários exemplos para trabalhar com a tela. Eles refletem operações e funções básicas.

Considere o "Hello Word" mais simples. O exemplo coincide completamente com o que está no conjunto padrão do IDE, acabei de traduzir o texto dos comentários para o russo.Observe que este é um exemplo de trabalho no modo de 4 bits.

Trabalhar com I2C é quase o mesmo:

IMPORTANTE:
Observe que, neste exemplo de código, o primeiro comando indica vários tamanhos de exibição, o número de linhas e caracteres, mas também o endereço I2C. Ou seja - 0x27, que corresponde a jumpers ausentes. Geralmente, isso é necessário para conectar vários monitores (8 peças) a dois fios de sinal.
Uma seleção de tutoriais em vídeo sobre o tópico
Para que não seja difícil dominar a habilidade de trabalhar com a exibição, fizemos uma seleção de vídeo-aulas sobre esse tópico.
Conclusão
Acontece que fazer com que o conselho do Arduino seja amigo e a exibição não é nada difícil. Você tem a oportunidade de transferência de dados paralela e serial usando o barramento I2C, o que escolher - você decide, tanto em termos de conveniência quanto nos requisitos de velocidade do sistema como um todo. Escreva nos comentários quais perguntas você precisa considerar com mais detalhes e o que exatamente você gostaria de ver no tópico dos microcontroladores!
Para obter mais informações sobre o Arduino e os recursos de seu uso em vários esquemas, consulte o e-book - Arduino para manequins. Guia prático ilustrado.
Mais recentemente, foi lançado um novo curso de Maxim Selivanov "Programming Nextion Displays". Este é o "arduino" no mundo das telas de toque. Mas, as informações são muito pequenas.

O que são os displays Nextion? Em suma, esses monitores são programáveis com tela sensível ao toque e UART para criar uma variedade de interfaces na tela. Para a programação, é usado um ambiente de desenvolvimento muito conveniente e simples, que permite criar interfaces ainda muito complexas para vários componentes eletrônicos em apenas algumas noites! E todos os comandos são transmitidos via interface UART para o microcontrolador ou computador.
Há tudo para começar a trabalhar com os displays Nextion em um novo nível: NEXTION
Veja também em electro-pt.tomathouse.com
: