Перейти к содержанию
    

Драйвер сенсорной панели FT5x16. Функция ZOOM

Помогите мне разобраться с детекцией ZOOM in и ZOOM out.  Вот даташитик https://www.newhavendisplay.com/appnotes/datasheets/touchpanel/FT5x16_registers.pdf

Как засекать этот самый зум понятно - читаю GEST_ID по адресу 0x01, микросхема распознает оба направления зума. Возникает вопрос - как определить дельту, то есть насколько мы прозуммировали.  

И вот тут первый вопрос - я правильно понял, что микросхема это вычислять не умеет? Если нет, то ткните носом.

Если не умеет, тогда как это сделать ручками? Вот предположим, прочли мы в регистре, что имеет место быть ZOOM in, прочли текущие координаты двух точек касания. А как понять, насколько проскользили пальцы, до момента детекции? Чтобы было с чем сравнивать и рассчитывать масштаб зума.....

Есть у микры такой параметр - порог детекции ZOOM - он равен 50, то есть зум детектируется если пальцы скользят более чем на 50 точек по направлению друг к другу (или наоборот). Проскользили еще на 50 - еще одно событие зума. Но меня такой зум, с разрешением в 50 точек не устраивает. Одно дело порог распознавания 50, и совсем другое - разрешающая способность.

У кого есть опыт?

Ах, да, забыл. Странным кажется то, что если самому в непрерывном режиме мониторить координаты двух точек касания, то не составляет труда самому поймать событие ZOOM. Спрашивается - зачем тогда эта функция присутствует в микросхеме на аппаратном уровне? Так может все таки как-то можно величину зума вытащить из микросхемы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, Salamander сказал:

то не составляет труда самому поймать событие ZOOM. Спрашивается - зачем тогда эта функция присутствует в микросхеме на аппаратном уровне?

Ну вот ответ до банальности прост - вам дали 2 варианта, какой вам проще реализовать, такой и делайте. Лично я выбрал бы первый, т.к. он универсальный, если смените тачконтроллер на другой не нужно будет думать, как там это сделано...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

15 часов назад, Salamander сказал:

Так может все таки как-то можно величину зума вытащить из микросхемы?

Этот чип все что связано с управлением тачскрином (и в т.ч. регистрация до 5-ти касаний и пр.) умеет и все это работает на нем. Нужно просто это уметь правильно софтово считывать. Вам подсказка: ищите в готовых исходниках от линукса. Сам собирался этим тоже заняться, но покамест с др. проблемами не закончил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 час назад, AleksBak сказал:

умеет и все это работает на нем.

Вычислять размер зума не умеет.

 

22.02.2021 в 22:13, mantech сказал:

какой вам проще реализовать, такой и делайте. Лично я выбрал бы первый,

Собственно так и сделал. 2 часа ковыряний, 2 чашки кофе и все работает, не без косяков пока, но принципиально задача с зумом решена.

Теперь у меня как в том ролике 

 

Изменено пользователем Herz
Нецензурщина

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...