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

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Резистивные кнопки (http://pccar.ru/forumdisplay.php?f=165)
-   -   подрулевые renault scenic II в LPT (http://pccar.ru/showthread.php?t=4747)

Димон 17.03.2008 13:40

Если ты о скрипте, которые лежит тут:
http://www.pccar.ru/showpost.php?p=17314&postcount=25
то да, там именно цикл, именно с опросом. кмк работать должен с ошибками.

Где я был? Незнаю где я был. да и энкодеров у меня нету нигде, но принцип у них зачотный адназначна.

2doctor. Значит в таблице три колесика, там наверное два провода от вращения энкодера, а третий - нажатие на колесико?

doctor 17.03.2008 20:57

Вложений: 1
2 контакта попарно замыкающие при вращении площадки: 1-2, 1-3, 1-4, 1-5, 1-6 или 1-7. При этом звонятся тестером (соеденены дорожками) контакты 2-5, 3-6 и 4-7. А нажатие на колёсико реализовано отдельной кнопкой.

Димон 17.03.2008 21:40

Это что, еще один шмоток проводов на колесико? 7 проводов? Или както с первыми шестью пересекаюцца?

doctor 17.03.2008 21:56

Нет, только 6 проводов, в соответствии с таблицей.
На самом разъёме 18 контактов, но остальные, по технической ноте, отвечают за дворники и т.д.
На плате - контактные площадки, дорожки и из электронных элементов только цепочка из приблизительно 8 кажется диодов (наверно это диодная матрица). Может она всё и организует?

archer 17.03.2008 22:04

ниче не понятно!
Классический энкодер - 3 провода: земля и 2 контактных. = 2 переключателя, которые комбинацией нолей(выкл) и единиц(вкл) - указывают направление вращения, обычно 1 щелчек - это 2 переключения, что достаточно для определения направления вращения, хотя бывают и безщелчковые, и как у меня - 1 щелчек-1 переключение, мне для сдвига вперед или назад надо сделать 2 щелчка.

Ищи 3 провода с энкодера или распиши, где на твоей матрице выходят комбинация на "щелчки" энкодера? - проверяется подключил пару контактов подозреваемую и крути колесо - если последовательно идут 0-0-1-1 значит это оно!
А я проверял энкодер подключив светодиоды через него и он наглядно показывает нули и единицы парой диодов.:) Если кнопочки энкодера найдутся, о делаешь Димонову схему, а в контактах, которые энкодерные используешь Пашин скрипт, или модифицируй его по совету Димона.

Димон 17.03.2008 22:08

нету ту никаких энкодеров, забудте. Даже принцип действия другой. проще и надежнее.

Если попарно закорочены, значит три получается. Итого имеем 6 в первой матрице и три с калесика. В лпт можно использовать 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 и 13.

зы. или три с калесика 7-6-5 это и есть та самая крутилка? которая работает при прохождении тока через 4??? Короче скрипт колесичный надо писать, и не луповский ибо от времени независит.

archer 17.03.2008 22:12

как мне кажется в нижнем ряду матрицы 1 кнопка - нажатие, а две остальные от энкодера - проверь плиз!

doctor 17.03.2008 22:20

нет, нажатие колёсика это то что в таблице - подтверждение - отдельная кнопка прижимаемая ободом.

2Dimon
и колёсико и кнопки - на выходе только 6 контактов

doctor 17.03.2008 22:23

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

Димон 18.03.2008 00:56

Ничего странного, все просто и логично (начинает нравиться рено). Просто на две функции "колесико тудымс" и "колесико сюдымс" задействовано три провода, остальные поодному.

Конструкция скрипта не требует циклических опросов. ПРосто старый скрипт был заточен под работу с резистивными подрулевыми и осевыми жостиками с потенциометрами, где не было событий, надо было лазить и смотреть значение по оси Х.

Здесь ситуация другая, на любое нажатие есть событие вида "joybutton2" т.е. нажатие кнопки-замыкание контактов. Тут какраз уместно использовать именно lpt порт, у которого толком нет осей, зато куча кнопок.

Весь скрипт пишется методом подставленя к кнопкам виртуального жостика например кнопок виртуальной клавиатуры (может даже медийных). Нужно определиться с фронтендом-списком команд т.к. под 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-порта, принципов действия енкодеров и жизни на марсе. :)

Похоже рено специально так соединили контакты в руле чтобы такой простой скрипт получился, ведь у них в бубнитоле тоже проц был нерезиновый, надо было чтонить попроще замутить.


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

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