Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Animação de bitmap em ILI9341 TFT Touchscreen Display Shield

Componentes e suprimentos

Arduino UNO
× 1
ILI9341 2.4 "TFT Touchscreen Shield para Arduino
× 1

Aplicativos e serviços online

Visuino - Ambiente de desenvolvimento gráfico para Arduino
Arduino IDE

Sobre este projeto




Protetores de tela de toque TFT baseados em ILI9341 são escudos de exibição de baixo custo muito populares para Arduino . Visuino tem suporte para eles há um bom tempo, mas nunca tive a chance de escrever um tutorial sobre como usá-los. Recentemente, no entanto, poucas pessoas fizeram perguntas sobre o uso de monitores com Visuino , então resolvi fazer um tutorial.

Neste Tutorial, vou mostrar como é fácil conectar o Shield ao Arduino e programe-o com Visuino para animar um bitmap para se mover na tela.





Etapa 1:componentes

  • Um Arduino Uno placa compatível (pode funcionar com Mega também, mas ainda não testei o escudo com ela)
  • Um ILI9341 2.4 "TFT Touchscreen Shield para Arduino





Etapa 2:conectar a tela de toque TFT ILI9341 com tela de toque ao Arduino


Conecte o escudo TFT em cima do Arduino Uno como mostrado nas fotos.





Etapa 3:inicie o Visuino e adicione o Display Shield TFT


Para iniciar a programação do Arduino, você precisará ter o Arduino IDE instalado a partir daqui:http://www.arduino.cc/.

Certifique-se de instalar 1.6.7 ou superior, caso contrário, este tutorial não funcionará!

O Visuino :https://www.visuino.com também precisa ser instalado.
  • Inicie o Visuino como mostrado na primeira foto
  • Clique em " Seta para baixo "do componente Arduino para abrir o menu suspenso ( Figura 1 )
  • No menu, selecione " Adicionar escudos ... "( Imagem 1 )
  • Na seção " Escudos "expanda a caixa de diálogo" Monitores "categoria e selecione a categoria" Tela de toque colorida TFT ILI9341 Shield "e, a seguir, clique em" + "para adicioná-lo ( Imagem 2 )





Etapa 4:no Visuino:adicione o elemento Desenhar texto para a sombra do texto


Em seguida, precisamos adicionar elementos gráficos para renderizar texto e bitmap. Primeiro, vamos adicionar elementos gráficos para desenhar a sombra do texto:
  • No Inspetor de objetos, clique em " ... "ao lado do valor dos" Elementos "propriedade do" Display TFT Elemento "( Imagem 1 )
  • No editor de elementos, selecione “ Desenhar texto ”E, a seguir, clique em" + botão "( Imagem 2 ) para adicionar um ( Imagem 3 )
  • No Inspetor de objetos, defina o valor da " Cor "propriedade do" Desenhar Texto1 "elemento para" aclSilver "( Figura 3 )
  • No Inspetor de objetos, defina o valor de " Tamanho "propriedade do" Desenhar Texto1 elemento "para" 4 "( Imagem 4 ) Isso torna o texto maior
  • No Inspetor de objetos, defina o valor do " Texto "propriedade do" Desenhar Texto1 elemento "para" Visuino "( Figura 5 )
  • No Inspetor de objetos, defina o valor de " X "propriedade do" Desenhar Texto1 elemento "para" 43 "( Figura 6 )
  • No Inspetor de objetos, defina o valor de " Y "propriedade do" Desenhar Texto1 elemento "para" 278 "( Figura 6 )





Etapa 5:no Visuino:adicione o elemento Desenhar texto para o primeiro plano do texto


Agora vamos adicionar elementos gráficos para desenhar o texto:
  • No editor de elementos, selecione “ Desenhar texto ”E, a seguir, clique no botão" "( Figura 1 ) para adicionar o segundo ( Imagem 2 )
  • No Inspetor de objetos, defina o valor de " Tamanho "propriedade do" Desenhar Texto1 elemento "para" 4 "( Imagem 2 )
  • No Inspetor de objetos, defina o valor do " Texto "propriedade do" Desenhar Texto1 elemento "para" Visuino "( Figura 3 )
  • No Inspetor de objetos, defina o valor de " X "propriedade do" Desenhar Texto1 elemento "para" 40 "( Imagem 4 )
  • No Inspetor de objetos, defina o valor de " Y "propriedade do" Desenhar Texto1 elemento "para" 275 "( Imagem 4 )





Etapa 6:No Visuino:adicione o elemento Draw Bitmap para a animação


Em seguida, adicionaremos elemento gráfico para desenhar o bitmap:
  • No editor de elementos, selecione “ Desenhar bitmap ”E, a seguir, clique no botão" "( Figura 1 ) para adicionar um ( Imagem 2 )
  • No Inspetor de objetos, clique em " ... "botão ao lado do valor de" Bitmap propriedade "do" Draw Bitmap1 Elemento "( Figura 2 ) para abrir o " Editor de bitmap "( Figura 3 )
  • No " Editor de bitmap "clique em" Carregar ... botão "( Imagem 3 ) para abrir a caixa de diálogo de abertura de arquivo ( Figura 4 )
  • Na caixa de diálogo Abrir arquivo, selecione o bitmap a ser desenhado e clique no botão " Abrir botão "( Imagem 4 ) Se o arquivo for muito grande, pode não caber na memória do Arduino. Se você obtiver um erro de memória insuficiente durante a compilação, pode ser necessário selecionar um bitmap menor
  • No " Editor de bitmap "clique em" OK . "( Imagem 5 ) para fechar a caixa de diálogo





Etapa 7:No Visuino:adicione pinos para as propriedades X e Y do elemento Draw Bitmap


Para animar o Bitmap, precisamos controlar sua posição X e Y. Para isso, adicionaremos pinos para as propriedades X e Y:
  • No Inspetor de objetos, clique em " Fixar "botão na frente do" X propriedade "do" Draw Bitmap1 elemento "( Imagem 1 ) e selecione " Integer SinkPin "( Imagem 2 )
  • No Inspetor de objetos, clique em " Fixar "botão na frente do" Y propriedade "do" Draw Bitmap1 elemento "( Figura 3 ) e selecione " Integer SinkPin "( Imagem 4 )





Etapa 8:No Visuino:adicione 2 geradores de seno inteiros e configure o primeiro


Usaremos 2 geradores de seno inteiros para animar o movimento do bitmap:
  • Digite " seno "na caixa Filtro da caixa de ferramentas do componente e selecione" Gerador de seno inteiro componente "( Figura 1 ) e solte dois deles na área de design
  • No Inspetor de objetos, defina o valor de " Amplitude "propriedade do SineIntegerGenerator1 componente para " 96 "( Imagem 2 )
  • No Inspetor de objetos, defina o valor de " Deslocamento "propriedade do SineIntegerGenerator1 componente para " 96 "( Figura 3 )
  • No Inspetor de objetos, defina o valor de " Frequência "propriedade do SineIntegerGenerator1 componente para " 0,2 "( Imagem 4 )





Etapa 9:No Visuino:configure o segundo gerador de seno e conecte os geradores de seno aos pinos das coordenadas X e Y do bitmap

  • No Inspetor de objetos, defina o valor de " Amplitude "propriedade do SineIntegerGenerator2 componente para " 120 "( Imagem 1 )
  • No Inspetor de objetos, defina o valor de " Deslocamento "propriedade do SineIntegerGenerator2 componente para " 120 "( Imagem 2 )
  • No Inspetor de objetos, defina o valor de " Frequência "propriedade do SineIntegerGenerator2 componente para " 0,03 "( Figura 3 )
  • Conecte o " Saída "pino de saída do SineIntegerGenerator1 componente para o " X "pino de entrada do" Shields.TFT Sisplay.Elements.Draw Bitmap1 "elemento do Arduino componente ( Figura 4 )
  • Conecte o " Saída "pino de saída do SineIntegerGenerator2 componente para o " Y "pino de entrada do" Shields.TFT Display.Elements.Draw Bitmap1 "elemento do Arduino componente ( Figura 5 )





Etapa 10:No Visuino:adicione e conecte os componentes Start e Clock Multi Source


Para renderizar o bitmap sempre que as posições X e Y são atualizadas, precisamos enviar um sinal de clock para o elemento "Draw Bitmap1". Para enviar o comando após as posições terem sido alteradas, precisamos de uma forma de sincronizar os eventos. Para isso, usaremos o componente Repeat para gerar eventos constantemente e o Clock Multi Source para gerar 2 eventos em sequência. O primeiro evento irá cronometrar os geradores de seno para atualizar as posições X e Y, e o segundo irá cronometrar o "Draw Bitmap1":
  • Digite " repetir "na caixa Filtro da caixa de ferramentas de componentes e, em seguida, selecione" Repetir componente "( Figura 1 ), e solte-o na área de design ( Figura 2 )
  • Digite " multi "na caixa Filtro da caixa de ferramentas do componente e, a seguir, selecione" Fonte múltipla do relógio componente "( Figura 2 ), e solte-o na área de design ( Figura 3 )
  • Conecte o " Saída "pino de saída do Repetir1 componente para o " In "pino de entrada do ClockMultiSource1 componente ( Figura 3 )
  • Conecte o " pino [0] "pino de saída do" Saída "pinos do ClockMultiSource1 componente para o " In "pino de entrada do SineIntegerGenerator1 componente ( Figura 4 )
  • Conecte o " pino [0] "pino de saída do" Saída "pinos do ClockMultiSource2 componente para o " In "pino de entrada do SineIntegerGenerator1 componente ( Figura 5 )
  • Conecte o " pino [1] "pino de saída do" Relógio "pino de entrada do" Shields.TFT Display.Elements.Draw Bitmap1 "elemento do Arduino componente ( Figura 6 )





Etapa 11:gerar, compilar e fazer upload do código do Arduino

  • No Visuino , Pressione F9 ou clique no botão mostrado na Figura 1 para gerar o código do Arduino e abrir o IDE do Arduino
  • No Arduino IDE , clique em Upload botão, para compilar e enviar o código ( Figura 2 )





Etapa 12:e brincar ...


Parabéns! Você concluiu o projeto.

Imagens 2, 3, 4 e 5 e o Vídeo mostrar o projeto conectado e ligado. Você verá o bitmap movendo-se pela tela de toque TFT baseada em ILI9341 com base em ILI9341 como visto no Vídeo .

Na Imagem 1 você pode ver o Visuino completo diagrama. Também anexado está o Visuino projeto, que criei para este tutorial, e o bitmap com o Visuino logotipo. Você pode fazer o download e abri-lo no Visuino :https://www.visuino.com
FPHWHL0IV0AHJLX.zip


Processo de manufatura

  1. Kuman TFT 3.5 RetroPie 2018
  2. Controlador DMX operado pela web
  3. Jogo Arduino Pong - Tela OLED
  4. Arduino Spybot
  5. Animação de LCD e jogos
  6. Arduino Due TIC TAC TOE com tela sensível ao toque
  7. Fotos e vídeo RGB na tela TFT SPI
  8. Brincando com Nextion Display
  9. Exibir imagens BMP do cartão SD no escudo LCD TFT
  10. Controlador de display fluorescente a vácuo