![]() |
|
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Старший Пользователь
![]() Регистрация: 18.02.2013
Возраст: 42
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
![]() ![]() ![]() ![]() ![]() ![]() |
![]() Собрался я тут на досуге распотрошить свой штатный монитор и внедрить в него pccar на базе odroid-x2. Но это отдельная история, сейчас о мониторе, точнее о его сенсорном экране.
Размер матрицы у него 6.5", не то чтобы большая редкость, но найти удалось только с резистивным тачскрином. Много гуглив, стало ясно, что "завести" такой тачcкрин под Андроидом хотят все, но не кому это нормально не удалось. Почесав немного репу, посмотрев тут что такое резистивный экран и как он работает, я понял: "а ведь его удастся контролировать при помощи микроконтроллера avr!", тем более, решая предыдущую проблему связи с кнопками на руле, HID Class Device я уже научился делать и прикинутся для Андроида мышкой не составит труда. Погуглив еще раз, действительно нашел пару примеров, как подключить резистивный тач к микроконтроллеру. Начал я "воять". Всё получается, координаты касания к экрану определять научился, даже написал простую калибровочную утилиту. Мышкой прикидываться научился, курсор по экрану винды уже бегает примерно там, где я вожу пальцем. Настал час Х - подключение к Андроиду. Облом, не работает. Подключаю к винде - работает. Погуглив еще немножко, выяснилось, что Андроид не поддерживает мышки, которые передают абсолютные координаты, он умеет работать с мышами, которые передают движения. Вычислять, какие движения нужно передать, чтоб курсор попал в точку х,у кажется мне слишком сложными. В общем, я временно в тупике. Нужны идеи. От алгоритмов вычисления движений для перемещения курсора из точки А в точку Б, до других готовых способов подружить Андроид с резистивным тачем.
__________________
ibus2hid Touch Controller USB I2S вход 1NeedBMWK76m1vWukagfGKH3kLaJkXcSYK - для спасибо ![]() |
![]() |
![]() |
![]() |
#2 |
Старший Пользователь
![]() Регистрация: 22.04.2009
Возраст: 43
Город: Москва
Регион: 77, 97, 99, 177
Машина: 2005\Nissan\X-Trail
Сообщений: 775
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() А если взять контроллер такой мышки и на его входы подавать абсолютные координаты?
__________________
В детстве, чтобы маленький Змей Горыныч был как все, мама заплетала его в косичку |
![]() |
![]() |
![]() |
#3 | |
Старший Пользователь
![]() Регистрация: 08.05.2011
Регион: Украина
Машина: Subaru
Сообщений: 233
![]() |
![]() Цитата:
Запоминать последнюю точку и вычислять относительно нее dx и dy для новой точки. http://www.youtube.com/watch?v=RXJUcBbT19g Через какое-то время после таких вычислений будет накапливаться погрешность между реальным касанием и тем, что навычисляли. Необходимо обнулять погрешность. |
|
![]() |
![]() |
![]() |
#4 |
Гуру
![]() Регистрация: 28.12.2009
Возраст: 41
Регион: Украина
Сообщений: 1,084
![]() |
![]() а я все никак не могу понять почему одни мышки работают в андроиде, а вторые нет
__________________
Проект Peugeot 207 - Nexus 7 |
![]() |
![]() |
![]() |
#5 |
Гуру
![]() Регистрация: 20.07.2009
Город: Минск
Регион: Беларусь
Сообщений: 1,543
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() а если подключить через блютуз? это конечно через ж.. но может помочь
__________________
Мой проект: Citroen Xsara Android CarPC |
![]() |
![]() |
![]() |
#6 | |||
Старший Пользователь
![]() Регистрация: 18.02.2013
Возраст: 42
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
Цитата:
Цитата:
__________________
ibus2hid Touch Controller USB I2S вход 1NeedBMWK76m1vWukagfGKH3kLaJkXcSYK - для спасибо ![]() |
|||
![]() |
![]() |
![]() |
#7 |
Старший Пользователь
![]() Регистрация: 22.04.2009
Возраст: 43
Город: Москва
Регион: 77, 97, 99, 177
Машина: 2005\Nissan\X-Trail
Сообщений: 775
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Виноват, упустил из виду, что оптика мыши и процессор обработки смещены в одном корпусе, поэтому подсунуть свои данные не получится
__________________
В детстве, чтобы маленький Змей Горыныч был как все, мама заплетала его в косичку |
![]() |
![]() |
![]() |
#8 |
Старший Пользователь
![]() Регистрация: 08.05.2011
Регион: Украина
Машина: Subaru
Сообщений: 233
![]() |
![]() |
![]() |
![]() |
![]() |
#9 |
Старший Пользователь
![]() Регистрация: 18.02.2013
Возраст: 42
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
![]() ![]() ![]() ![]() ![]() ![]() |
![]() Если не трудно, расскажи пожалуйста об особенностях с которыми тебе пришлось столкнуться. Это, возможно, сэкономит мне кучу времени. Первые эксперименты, которые я сейчас сделал, не особо удачны. Для устранения ошибки, после отпускания экрана, перевожу курсор в верхний левый угол и при следующем касании отталкиваюсь от этой позиции. Однако, при касании курсор у меня перемещается на много дальше чем нужно, но при дальнейшем движении двигается вроде на правильные расстояния. В общем, проведя еще кучу экспериментов, думаю приду к правильному решению, но хотелось бы сэкономить время.
__________________
ibus2hid Touch Controller USB I2S вход 1NeedBMWK76m1vWukagfGKH3kLaJkXcSYK - для спасибо ![]() |
![]() |
![]() |
![]() |
#10 |
Старший Пользователь
![]() Регистрация: 18.02.2013
Возраст: 42
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
![]() ![]() ![]() ![]() ![]() ![]() |
![]() Выяснилось, что передача смещения в 100 вызывает перемещение курсора примерно на 250 точек на экране. Пока не ясно, коэффициент 2,5 для всех компьютеров одинаков или для каждого он свой и зависит от каких-то настроек.
Ага, стало ясно, коэффициент зависит от настройки скорости перемещения курсора мыши в винде. Галочка "Включить повышенную точность установки указателя мыши" уменьшает первое движение мишкой. В Андроиде вроде нет таких настроек. Буду вычислять коэффициент на нем. На моем андроиде, коэффициент 2. Андроид с usb у меня один, проверить одинаковость на разных устройствах пока не могу. Зависит ли коэффициент от разрешения экрана?
__________________
ibus2hid Touch Controller USB I2S вход 1NeedBMWK76m1vWukagfGKH3kLaJkXcSYK - для спасибо ![]() Последний раз редактировалось zyxel812; 28.03.2013 в 14:15. |
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|