PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Дополнительные устройства (http://pccar.ru/forumdisplay.php?f=177)
-   -   JoyCon Exr + ARDUINO (http://pccar.ru/showthread.php?t=19011)

Andrey_61 14.04.2013 13:17

JoyCon Exr + ARDUINO
 
Задумал я соединить эти два девайса.

по моей задумке arduino обрабатывает все сигналы с резистивных кнопок, энкодера, возможно ИК пульта(этот пункт пока под сомнением), и имитирует нажатие кнопок на JoyConе.

Нафига, почему не использовать просто JoyCon?
1. При нажатии на любую кнопку планшет будет просыпаться, меня это не устраивает.
2. Хочу отдельную обработку коротких и длинных нажатий.
3. Различная реакция на поворот энкодера в зависимости от того нажата КЭ(кнопка энкодера) или нет.
4. Пробуждение планшета только по нажатию КЭ

На данный момент заказан JoyCon и имеется Arduino nano v5.
Написан скетчик со следующим алгоритмом.

- при включении зажигания включаем планшет (выводим из сна)
- при выключении зажигания выключаем (отправляем в сон) через 3 секунды. Если в течении этих трех секунд опять включили зажигание или нажали КЭ то выключение отменяется.
- при выключении зажигания плавно тухнет индикатор питания.
- если планшет включен, не важно есть зажигание или нет длинное нажатие на КЭ выключает планшет.
- если планшет выключен то короткое нажатие на КЭ включает планшет
- отдельно обрабатываются вращения энкодера с нажатой и отжатой КЭ
- нажатие КЭ при включенном планшете: короткое --> enter, длинное --> POWER OFF, при выключенном планшете --> POWER ON


В общем если кому нибудь кроме меня интересна такая связка то выложу схему и исходники (как все допишу и отлажу).
Ну и готов выслушать конструктивные замечания и предложения по реализации.

p.s. была мысль на arduino реализовать hid клавиатуру, но на nano эта конструкция работала нестабильно, а покупать более мощную желания не было, поэтому решил отказаться в пользу более промышленного решения.

macau 14.04.2013 14:23

конечно выкладывай, интересно как реализован енкодер

Kamik 14.04.2013 15:30

:yes4: выкладывай, очень интересно

Andrey_61 14.04.2013 16:02

В наличии есть 8-и позиционный джойстик с энкодером, 8 осей это много, планирую использовать четыре.

Алгоритм думаю такой.

________________________лево___|__право__|верх|_низ
короткое нажатие_____________________________
длинное нажатие______PrewTrtack__NextTrack__Esk__Menu

_____________________
вращение влево__|__вращение вправо
кн. энкодера отжата_________vol+________________vol-
кн. энкодера нажата________HOME_____________Alt+Tab



еще думаю, прикручивать туда ик пульт или нет. В предидущей магнитоле он 99 % времени валялся в бардачке.

macau 14.04.2013 19:08

нажатие+поворот в движении оче неудобно

Andrey_61 14.04.2013 19:42

Цитата:

Сообщение от macau (Сообщение 255450)
нажатие+поворот в движении оче неудобно

Это если надо долго крутить, а у меня против часовой один щелчок, по часовой 4-5 щелчков (сколько там одновременно может быть запущенно приложений)

Andrey_61 18.04.2013 00:02

За пару вечеров наваял скетчик для ARDUINO

В качестве энкодера использовал 8- позиционный джойстик RKJXT1E12001, он хоть и 8-ми позиционный, но по нему можно отслеживать 16 положений, хотя это скорее не фича, а баг связанный с миниатюрными размерами, так же при каждом нажатии стика срабатывает еще и центральная кнопка энкодера, что тоже добавило проблем при написании алгоритма.

Вот небольшое видео как это работает
http://youtu.be/2x4QndwLlCE

Alex-NN 19.04.2013 00:44

Автор начал очень полезное дело! Надеюсь в итоге в ветке появится схема и скетч.

Andrey_61 19.04.2013 10:35

Цитата:

Сообщение от Alex-NN (Сообщение 256009)
Автор начал очень полезное дело! Надеюсь в итоге в ветке появится схема и скетч.

Как только приедет Joycon и все это заработает вместе, сразу же выложу и схему и скетч.

P.s. если кому нибудь попадались нормальные джойстики с энкодерами кидайте сюда ссылки. т.к. у меня есть подозрение что мой 8-ми позиционный будет не очень удобен в управлении.

macau 19.04.2013 11:02

от уравления зеркалами не пойдет? они обычно не вырвиглазны и удобны


Часовой пояс GMT +4, время: 19:44.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot