Neste artigo iremos explicar como fazer a comunicação entre o controlador OPS010 da Opller e um display 4,3″ através da porta UART1 (TTL) do controlador.
A comunicação entre os displays e controladores é fundamental para fazer interação com o operador da máquina ou equipamento onde está sendo manipulado um determinado processo, isso facilita a identificação de erros, ajuda na parte de configurações e manutenções.
O passo fundamental para iniciar a comunicação entre o controlador e o display é a identificação dos pinos da UART1 que serão utilizados, no caso do OPS010 utilizaremos os pinos 22 e 21 localizados fisicamente no barramento externo ao equipamento.

Após conexão física precisamos fazer a comunicação via software. O objetivo é selecionar os pinos 21 e 22 dos pinos do controlador conforme datasheet, porem isso é realizado dentro da pasta Hardwareserial.cpp. Este arquivo pode ser acessado no seguinte caminho:
C:\Users\Seudesktop\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\cores\esp32
Este caminho pode ser acessado via pesquisa dentro do compartimento da pasta raiz C: desktop, conforme imagem.

Abra o arquivo e modifique os pinos Rx1 e Tx1 para os respectivos 22, 21.

Caso esses pinos não sejam alterados o controlador entrará em Reboot automático onde não será possível realizar nenhuma tarefa, além de também não realizar a comunicação com o display.
Uma vez realizado a ligação física e alterado os pinos para viabilizar a comunicação via software é hora de inicializar dentro da IDE do Arduino as chamadas das bibliotecas do display e os comandos necessários para utilização.
Logo no cabeçalho do sketch fazer a chamada da biblioteca do display.

Essa é uma biblioteca de suporte da equipe Opller, assim, podemos auxiliar e tirar dúvidas caso haja alguma dificuldade na utilização. Após a chamada da biblioteca precisamos do sketch da biblioteca que deve ser inserido em uma aba dentro do projeto. Neste caso precisamos de três abas específicas para o display, sendo:
1º “DWIN_COMM.h”
2º “DWIN_COMM.cpp”
3º “IHM.h”
Na primeira aba temos os comandos nativos que foram criados para trabalhar com o display, os comandos que podem ser utilizados, a taxa de transmissão de dados (baud rate), os pinos e o CRC.
Na segunda temos o arquivo “.cpp” que é o responsável pelos frames de trabalho como leitura, escrita, CRC e outras funções.
Já na terceira é um arquivo “.h”, criado pelo desenvolvedor da aplicação, nesta aba podemos criar toda aplicação e interação entre o display e controlador. Esta é a única situação na qual realmente iremos entrar em maiores detalhes.

Para baixar essas bibliotecas acesse o software base de comunicação com display, lá tem o passo a passo de como importar estes dois arquivos para seu projeto.
Calma que ainda não acabou, agora é hora de inicializar a serial no setup principal, declare a serial que está sendo usada e os pinos, os mesmos declarados no arquivo hardwareserial.cpp que fizemos no passo inicial.

Pronto agora podemos trabalhar com o display e o controlador OPS010, basta declara as variáveis que deseja utilizar no projeto e controlador dentro do seu software, baixe o código de exemplo que está comentado e rode em seu controlador, modifique e pratique, essa é a única maneira de evoluir dentro do mundo da automação.