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

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > Устройства ввода

Ответ
 
Опции темы Поиск в этой теме
Старый 06.12.2006, 15:44   #81
Hamster
Больной. Диагноз "Car PC"
 
Аватар для Hamster
 
Регистрация: 01.09.2005
Возраст: 51
Город: Москва
Регион: 77, 97, 99, 177
Машина: 08\Acura\MDX •••• 07\Honda\Civic 4D
Сообщений: 4,379
Hamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to behold
По умолчанию

Вот пример скрипта (к сожалению последний, рабочий вариант в машине, и тока на выходных смогу выложить):

; Скрипт для подключения автомобильного двойстика Sony X4S к CarPc
; *********************** Секция настроек начало ***********************
JoystickNumber = 1
VolumeStep = 5
; Погрешность определения значений
KeyGetDelta = 2
; Значения кнопок
JKey_OFF = 1
JKey_ATT = 1
JKey_MUTE = 1
JKey_X1 = 1
JKey_X2 = 1
JKey_PREV = 1
JKey_NEXT = 1
JKey_VOLD = 1
JKey_VOLU = 1
JKey_SOURCE = 1
; Переменная в которой запоминаем громкость (для Mute)
MUTE_SOUND = 0
; *********************** Секция настроек конец ***********************

#SingleInstance
SetFormat, float, 03 ; Omit decimal point from axis position percentages.

; Читаем инфу по жостику. Пока с ней ничего не делаем
GetKeyState, joy_buttons, %JoystickNumber%JoyButtons
GetKeyState, joy_name, %JoystickNumber%JoyName
GetKeyState, joy_info, %JoystickNumber%JoyInfo

SoundGet, MUTE_SOUND
Loop
{
; Читаем состояние кнопок. Если кнопарь нажат, то переменная button(№кнопки)= D
Loop, %joy_buttons%
{
GetKeyState, button%a_index%, %JoystickNumber%joy%a_index%
}

; Читаем показания оси Х - по сути основных кнопок жостика
GetKeyState, joyx, %JoystickNumber%JoyX

; Читаем мышиный скролл (пока не пользуем)
; GetKeyState, mouse_Down, WheelDown
; GetKeyState, mouse_Up, WheelUp

; Генерим нужные действия:

; изменение громкости - меньше
If joyx-KeyGetDelta >= JKey_VOLD and joyx+KeyGetDelta <= JKey_VOLD
{
SoundSet -VolumeStep
}

; изменение громкости - больше
If joyx-KeyGetDelta >= JKey_VOLU and joyx+KeyGetDelta <= JKey_VOLU
{
SoundSet +VolumeStep
}

; JKey_MUTE
If joyx-KeyGetDelta >= JKey_MUTE and joyx+KeyGetDelta <= JKey_MUTE
{
SoundGet, Tmp
If Tmp = 0 ;мы в режиме MUTE
{
SoundSet, MUTE_SOUND
}
Else
{
SoundGet, MUTE_SOUND
SoundSet, 0
}
}

; JKey_OFF
If joyx-KeyGetDelta >= JKey_OFF and joyx+KeyGetDelta <= JKey_OFF
{
; Действие на JKey_OFF
}


; JKey_ATT
If joyx-KeyGetDelta >= JKey_ATT and joyx+KeyGetDelta <= JKey_ATT
{
; Действие на JKey_ATT
}


; JKey_X1
If joyx-KeyGetDelta >= JKey_X1 and joyx+KeyGetDelta <= JKey_X1
{
; Действие на JKey_X1
}

; JKey_X2
If joyx-KeyGetDelta >= JKey_X2 and joyx+KeyGetDelta <= JKey_X2
{
; Действие на JKey_X2
}

; JKey_PREV
If joyx-KeyGetDelta >= JKey_PREV and joyx+KeyGetDelta <= JKey_PREV
{
; Действие на JKey_PREV
}

; JKey_NEXT
If joyx-KeyGetDelta >= JKey_NEXT and joyx+KeyGetDelta <= JKey_NEXT
{
; Действие на JKey_NEXT
}

; JKey_SOURCE
If joyx-KeyGetDelta >= JKey_SOURCE and joyx+KeyGetDelta <= JKey_SOURCE
{
; Действие на JKey_SOURCE
}

; Ждем 200 мс (0.2 сек)
Sleep, 200
}
return
__________________
Старый проект Honda Accord RHD
Теперь будет Acura MDX 2008 и Honda Civic 4D 2007 и Mitsubishi Outlander XL 2011
Hamster вне форума   Ответить с цитированием
Старый 06.12.2006, 17:19   #82
lvovitch
Guest
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от Hamster Посмотреть сообщение
Вот пример скрипта...
Спасибо ОГРОМНОЕ!!! Я бы не разобрался! Сегодня вечером обязательно буду пробывать!

Последний раз редактировалось lvovitch; 06.12.2006 в 18:50.
  Ответить с цитированием
Старый 06.12.2006, 17:36   #83
Hamster
Больной. Диагноз "Car PC"
 
Аватар для Hamster
 
Регистрация: 01.09.2005
Возраст: 51
Город: Москва
Регион: 77, 97, 99, 177
Машина: 08\Acura\MDX •••• 07\Honda\Civic 4D
Сообщений: 4,379
Hamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to behold
По умолчанию

Цитата:
Сообщение от lvovitch Посмотреть сообщение
Спасибо ОГРОМНОЕ!!! Я бы не разобрался! Сегодня вечером обязательно буду пробывать!
Только не забудь правильно заполнить значение констант:

; Значения кнопок
JKey_OFF = 1
JKey_ATT = 1
JKey_MUTE = 1
JKey_X1 = 1
JKey_X2 = 1
JKey_PREV = 1
JKey_NEXT = 1
JKey_VOLD = 1
JKey_VOLU = 1
JKey_SOURCE = 1

Как ты понимаешь они для каждой конфигурации (у тебя и у меня) разные, ибо резисторы мы вешали разные.
__________________
Старый проект Honda Accord RHD
Теперь будет Acura MDX 2008 и Honda Civic 4D 2007 и Mitsubishi Outlander XL 2011
Hamster вне форума   Ответить с цитированием
Старый 06.12.2006, 18:09   #84
lvovitch
Guest
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от Hamster Посмотреть сообщение
Только не забудь правильно заполнить значение констант...

Ага. Сюда ведь нужно вписать данные с оси Х

А потом еще и действия на нажатия кнопок. Правильно?

Последний раз редактировалось lvovitch; 06.12.2006 в 18:49.
  Ответить с цитированием
Старый 06.12.2006, 19:05   #85
Hamster
Больной. Диагноз "Car PC"
 
Аватар для Hamster
 
Регистрация: 01.09.2005
Возраст: 51
Город: Москва
Регион: 77, 97, 99, 177
Машина: 08\Acura\MDX •••• 07\Honda\Civic 4D
Сообщений: 4,379
Hamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to behold
По умолчанию

Цитата:
Сообщение от lvovitch Посмотреть сообщение
Ага. Сюда ведь нужно вписать данные с оси Х

А потом еще и действия на нажатия кнопок. Правильно?
Угу. Там в примере тока Vol+, Vol-, Mute. Причем муте сделано как убирание звука в 0. Т.е. если к примеру в Роадраннере - он не покажет, что Муту включен (там кнопки-индикаторы). просто звук по нулям.

Короче. синтаксис там простой, хелп хороший.
__________________
Старый проект Honda Accord RHD
Теперь будет Acura MDX 2008 и Honda Civic 4D 2007 и Mitsubishi Outlander XL 2011
Hamster вне форума   Ответить с цитированием
Старый 29.12.2006, 14:52   #86
Exial
Старший Пользователь
 
Аватар для Exial
 
Регистрация: 02.11.2006
Возраст: 40
Город: Москва
Машина: Nissan Titan
Сообщений: 149
Exial is on a distinguished road
По умолчанию

Купил домой клавиатуру с дополнительными кнопками, включая управление громкостью. Так вот: в XP Media center edition это заработало без драйверов, и обнаружился весьма интересный эффект: шаг изменения громкости при нажатии кнопки изменяется в зависимости от текущей громкости, то есть при маленьких значениях изменяется на единицы, а при повышении громкости шаг меняется. При этом на слух изменение громкости происходит равномерно (разница между 80% и 100% не такая большая, как между 10% и 30%). При этом полоска громкости при нажатии кнопок вылезает на OSD.
Очевидно, этот механизм заложен в операционку. Кто-нибудь знает что за команды клавиатура отдает системе и как это использовать?
Exial вне форума   Ответить с цитированием
Старый 03.01.2007, 01:30   #87
Eugene
Страшный Пользователь
 
Аватар для Eugene
 
Регистрация: 28.02.2006
Возраст: 40
Город: Москва
Регион: 77, 97, 99, 177
Машина: 2006\Toyota\Land Cruiser 120 Prado
Сообщений: 661
Eugene will become famous soon enough
По умолчанию

У меня обычный XP тоже такие клавы переваривает без дров...
Eugene вне форума   Ответить с цитированием
Старый 23.05.2007, 06:01   #88
Gads
Пользователь
 
Регистрация: 14.02.2007
Возраст: 42
Город: Иркутская Область г. Братск
Регион: 38
Машина: Toyota Supra 1996 JZA80
Сообщений: 36
Gads is on a distinguished road
По умолчанию

Цитата:
Сообщение от Димон Посмотреть сообщение
Сложнее всего оказалось сделать чтобы при удержании одной из кнопок регулировка доезжала до крайнего значения а не двадцатью тычками делать муте.
Читал тему раза 3 так и не понял. Как решить проблему с многочисленными тычками для уменьшения звука.
Одно нажатие = -10% громкости.
а надо, одно нажатие и громкость постепенно до 0 уменьшилась.

спасибо
Gads вне форума   Ответить с цитированием
Старый 23.05.2007, 10:55   #89
Димон
Гуру
 
Аватар для Димон
 
Регистрация: 03.10.2005
Город: МКАД восток-запад
Регион: 77, 97, 99, 177
Машина: 09\Опиль\АстраХ
Сообщений: 2,013
Димон is a splendid one to beholdДимон is a splendid one to beholdДимон is a splendid one to beholdДимон is a splendid one to beholdДимон is a splendid one to beholdДимон is a splendid one to behold
По умолчанию

Читать бесполезно, про это нигде не написано. Вся программа переделана на цыкл, который запускается по событию "нажатие кнопки". В каждой итерации снимаю по 4% и проверяю "не нажата-ли кнопка". Если вдруг выясняется что "она не нажата" то цыкл рву. Другого метода имхо нет т.к. в жостике нет события "button up", есть только "check state"
Димон вне форума   Ответить с цитированием
Старый 24.05.2007, 03:48   #90
Cobalt
Старший Пользователь
 
Регистрация: 09.09.2005
Возраст: 42
Город: Самара
Регион: 63, 163
Машина: 093 2005г.
Сообщений: 86
Cobalt is on a distinguished road
По умолчанию

А почему управление громкостью рассматривается тока на уровне компа и винды? Джойстик! Кнопки! Порт! Гемор! Нужен девайс, упраляющий громкостью после звуковухи. Желательно с несколькими парами входов и выходов например для системы типа 5.1- по 3 входа и стокаже выходов. с возможностью как раздельной аттеньюации каждой пары, так и убавления или поднятия общего уровня по всем парам... Кажется мысль более рациональна! И удобнее ручку крутить. Ну на крайняк мона и кнопки. Опять же не знаю, как это в поисковике обозвать... Есть у кого адресок или зацепка какая на подобное устройство. Ну мона в худшем случае несколько одинаковых приблуд, если у будет вход один. Мафон не катит. Тока от него избавился... да и аукс там одной парой представлен. Терь страдаю со скроллером и столкнулся с тем, что иногда надо саб погромче или потише. ДА! Есть уси с дистанционкой. Но у меня та без оной... Или то, что выше саба играет убавить почти на минимум и оставить колотушку. Короче суть искомого наверное ясна... помогите плиз!
Cobalt вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



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


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