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.
Tags:
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.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por