Показать сообщение отдельно
Старый 16.03.2008, 02:20   #1
Димон
Гуру
 
Аватар для Димон
 
Регистрация: 03.10.2005
Город: МКАД восток-запад
Регион: 77, 97, 99, 177
Машина: 09\Опиль\АстраХ
Сообщений: 2,012
Димон 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
По умолчанию подрулевые renault scenic II в LPT

Цитата:
Сообщение от doctor
Форумчане, помогите пожалуйста подключить правильно к LPT-порту кнопки подрулевого управления моей машины (renault scenic II). Самому удалось правильно подключить только 2 кнопки (громкости) из 8 возможных функций, реализуемых 5-ю кнопками и одним колёсиком с двухсторонним вращением и нажатием. Кнопки простейшие, работающие по принципу замыкания/размыкания цепи безо всяких сопротивлений (до оцифровывающего блока). Проблема в том, что 6 контактов разъёма подрулевого пульта управления аудиосистемой (удалена), замыкаются кнопками попарно в виде матрицы, т.е. без общего провода для всех кнопок.
Присоединяю маленький файлик с таблицей функций.


Цитата:
Сообщение от doctor
2 контакта попарно замыкающие при вращении площадки: 1-2, 1-3, 1-4, 1-5, 1-6 или 1-7. При этом звонятся тестером (соеденены дорожками) контакты 2-5, 3-6 и 4-7. А нажатие на колёсико реализовано отдельной кнопкой.
Предлагаю раскомутировать через три оптрона. При нажатии какой-либо из кнопок ток начинает течь только из одной из ножек (765) матрицы т.е. лпт чует задействованую строку, оттуда ток уходит в землю, но на-последок проходит через оптрон. А у оптронов выходы идут в ножки (234) и лпт так чует задействованный столбец матрицы, т.е. при любом нажатии ток начинает течь через две ножки. И всегда разные.

Распиновку лпт смотреть в начале темы "управляем громкостью" и "устройства ввода через LPT" где были драйвера джойстика атари. Тамже отличный рабочий скрипт Hamstera и Co, в который надо будет внести соотвт. изменения. Для редактирования скрипта понадобится autohotkey.com, заодно можно скомпилить независимый ехешник.

Вот картинки, вторая картинка - это mute, когда в лпт ток начинает течь через 6 и 4 ножки.



Оптроны предпочитаю первыепопашиеся, обычно попадаются выпаянные из сгоревшего БП 220в.

Эскиз скрипта ahk:
Код:
Весь скрипт пишется методом подставленя к кнопкам виртуального 
жостика например кнопок виртуальной клавиатуры (может даже медийных). 
Нужно определиться с фронтендом-списком команд т.к. под RR и его семейства 
winamp-based-programs проще посылать wm-commands. В ICT и другим 
media-player-based программах логичнее использовать кнопки медийной 
клавиатуры (виртуально конечно)

Скрипт колесика чуть сложнеее, но тоже независит от времени-циклов. 
При пуске скрипта опрашивается 6-7-8 контакты и текущее значение 
заносится в переменную, напр. n:=8. Затем, при написании действий кнопок 
жостика 6-7-8 пишутся такие строчи:

При нажатии кнопки 6:
1. Посмотреть переменню n.
2. Если она 7, то нажать курсор вверх.
3. Если она 8, то нажать курсор вниз.
4. Переменной n присвоить значени := 6

При нажатии кнопки 7:
1. Посмотреть переменню n.
2. Если она 8, то нажать курсор вверх.
3. Если она 6, то нажать курсор вниз.
4. Переменной n присвоить значени := 7

При нажатии кнопки 8:
1. Посмотреть переменню n.
2. Если она 6, то нажать курсор вверх.
3. Если она 7, то нажать курсор вниз.
4. Переменной n присвоить значени := 8

Таким образом колесико будет построчно листать списки курсорами вверх-вниз, 
независимо от скорости lptпорта принципов действия енкодеров и жизни на марсе

Последний раз редактировалось Димон; 18.03.2008 в 18:54.
Димон вне форума   Ответить с цитированием