[RESOLVIDO]Olá, preciso de Informação sobre a linha TouchScreen ts.

Olá pessoal bom dia.

Estou criando um projeto com Display 2.4 Touch e estou tendo alguns problemas mas minha pergunta de momento não é referente ao meu código e sim uma duvida sobre a linha

( TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300); )

Minha pergunta é:

O que realmente significa o 300 no final? 

Desde já obrigado.

Exibições: 209

Responder esta

Respostas a este tópico

Boa tarde RAO,

Este display é um a tela de toque resistiva, diferente das maiorias encontadas no mercado, que são capacitivas.

Este valor(300) significa 300 Ohms  entre os 2 pinos do eixo X.

Vc pode altera-lo, mas pra isto precisa seguir um procedimento descrito como descrito abaixo.

// For better pressure precision, we need to know the resistance
// between X+ and X- Use any multimeter to read it.
O valor lido em Ohms será o valor no lugar dos 300.
RV

Olá RV muito obrigado, acho que isso que esta influenciando nos problemas que estou tendo.

Muito obrigado.

boa tarde Ricardo.

      Apenas complementando a informação dado pelo RV,  vc pode ver esta descrição no exemplo dado pela Adafruit,  mostrado na figura a seguir (marquei em amarelo na figura):

(clique na figura para "zoom")

      O link deste exemplo é este:  exemplo Adafruit touchscreen

      Este valor é referido na Biblioteca como "rxplate" (ou "_rxplate"  na parte "private").

      Abrçs,

      Elcids

Olá Elcids muito obrigado.

Fiz a medição dos pinos em minha tela e estou certo que o problema que tenho está ligado a isso mesmo.

Minha tela ao medi-la estou tendo um valor de 64 Ohms e o programa esta definido para 300.

Meu problema é justamente precisão do Touch pois estou utilizando a função initButton .

Muito obrigado pelas informações.

olá novamente Ricardo.

      Este valor que vc mediu de 64 Ohms, é bem baixo comparado a maioria dos padrões usados no mercado (normalmente ficam entre 200 Ohms e 2k).

      Se o valor for este mesmo,  fique atento, pois vc poderá estar "puxando" correntes além do limite máximo para as saídas digitais do Arduino.

      Para fazer as medições,  o código da LIB aplica a tensão da alimentação sobre a resistência do Touch via saídas digitais do Arduino, e utiliza uma entrada analógica do Arduino  para medir a tensão correspondente à posição XY). Os pinos utilizados, são aqueles designados no instanciamento "TouchScreen". Para entender melhor veja este documento:  "slyt209a - using resistive touch screens"

      A corrente "puxada" será  (VOH - VOL) / rxplate.  Supondo que vc esteja usando um Arduino UNO, e que VOH = 3.9V  e  VOL = 0.5V.  Se a impedância total "rxplate" for este valor de 64 Ohms, então a corrente será  (3.9V - 0.5V) / 64 = 53mA.  Ou seja, acima do limite de 40mA para um pino do Arduino UNO (ou qualquer outro AVR de 8 bits da família ATMega, piorando para praticamente todos os outros Arduinos).

      Claro,  este dreno de corrente no Touch não é contínuo, mas pulsado, já que a LIB fica trocando o X com Y para fazer as medições. Mesmo assim fique atento pois pode ser um problema a longo prazo (pinos com solicitação acima do normal podem não danificar imediatamente, mas vão degradando e em algum momento podem "abrir o bico").

      Observe também que os valores de VOH e VOL também degradam conforme a própria corrente puxada (aumentando a corrente, VOH diminui  e VOL aumenta).  Se esta degradação for muito grande, irá influenciar significativamente nas medições que a LIB faz no Touch, especificamente em relação à sensibilidade e precisão das medições.

      Caso isto se confirme e configure um problema, vc pode utilizar drivers com MOSFET para fornecer a corrente necessária, e sem degradar o VOH e VOL aplicados ao Touch. O circuito desses drivers é simples, mas implica em acrescentar componentes no Hardware do seu Sistema (os próprios drivers e eventualmente resistores comuns).

      Quase me esqueço:  lembre-se que para medir a resistência, vc deve desconectar fisicamente o touch do Arduino, a fim de garantir que os diodos de proteção interna dos pinos de I/O do Arduino não influenciem na medição.

      Abrçs,

      Elcids

Olá Elcids bom dia.

Muito obrigado pelas informações, eu realmente fiquei pensando nisso e pesquisei um pouco e realmente minha tela está fora do padrão.

Para evitar problemas resolvi descartar esta tela e já comprei outra.

Agora é aguardar a chegada e torcer para estar boa

Mais uma vez muito obrigado.

Boa tarde, 

O seu ohmímetro que usou para medir a resistência da tela Touchscreen é preciso?

O mais provável é que seja um erro do medidor. 

Sugiro que faça testes, antes de descartar a sua tela. 

Use valores como 100, 200, 300, 400, 500, etc.

Olá José Gustavo bom dia.

Sim é 90% preciso, Minipa 2082D

Sobre o fato de descartar a tela não é problema por se tratar de um item barato, em media 35 Reais no M.L.

Comprei 4 peças e vamos ver o que dá.

Essa que tenho eu tinha comprado no Aliexpress a um tempo atrás, ela esta funcionando mas a precisão do Touch é que não esta legal mas serve para testes menos precisos.

Só achei o problema agora pois é uma tela de 2,4'' e precisei criar 35 botões ai ficou nítido o defeito, mudei o valor para 70 e a precisão ficou muito boa mas para evitar problemas vou deixar apenas para testes.

Muito obrigado. 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço