Контролер клавиатуры своими руками.

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

Обломилась мне (что самое обидное не бесплатно) цельнонержавещая антивандальная клавиатура, однако радость была недолгой, видать что-б с объектов их не пи....ли сделана подлянка у этой клавиатуры нестандартные скан коды отдельных клавиш - а именно Ctrl, Shift, Alt, Win, Del.... естественно использовать сложновато.

Ну думаю - шас платку от какой-нибудь клавиатуры прикручу - авотхренвам - матрице кнопок с обычными китайскими клавиатурами рядом не валялась. Вот ищу - нет-ли проектов клавиатур на каких-то распространенных ОМК, что-б была возможность доработать под свою матрицу клавиш + возможность работы с кнопками "Fn" - естественно клавиатура сокращенная и на многих клавишах по 2 функции.

Штатно стоит однокристалка-однократка от Zilog

Интерфейс PS2
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

При помощи xmodmap легко перенастроить все скан-коды как нужно.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Сообщение Андрей Бедов »

Eddy_Em писал(а):xmodmap
Что это? Драйвер со своей панелью настроек? Для какой системы, и где брать?
Мучитель микросхем
Сообщения: 437
Зарегистрирован: Пн май 27, 2019 07:18:28
Откуда: ВВХ-ск

Сообщение mont-oriol »

[uquote="Wladimir_TS",url="/forum/viewtopic.php?p=3939822#p3939822"]Вот ищу - нет-ли проектов клавиатур на каких-то распространенных ОМК, что-б была возможность доработать под свою матрицу клавиш[/uquote] Здесь посмотрите: https://kbfirmware.com/
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 760
Зарегистрирован: Сб окт 22, 2016 17:33:32
Откуда: кг

Сообщение Карбофос »

Обычно в подобных случаях ищут драйвер клавиатуры.
Реклама
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Сообщение BlackKilkennyCat »

Андрей Бедов, он даже мысли не допускает, что клавиатура может подключаться не к линуксу.

Карбофос, а драйвер прям в мульт зашить? Эти "неправильные" клавиши требуются ещё до загрузки всяких драйверов и ОС.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 760
Зарегистрирован: Сб окт 22, 2016 17:33:32
Откуда: кг

Сообщение Карбофос »

А зачем? Если и так понятно, что Esc-это Shift, а Ctrl-Esc? ))
Proprietary software именно для этих целей и существует.
Если сможете драйвер прям в мульт зашить, дерзайте и расскажите нам.
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Сообщение BlackKilkennyCat »

Я не смогу. Думал, это Вы можете, предложили же драйвер, хотя ТС никоим образом не ограничил условия использования.
Проприетарное ПО существует не только для этих целей. К чему Вы его тут упомянули - вообще непонятно.
А так-то да, и так понятно, что эта клавиша - это та. И так кучу раз. Влоть до всех, да? Можно ещё распечатать и повесить таблицу соответствий.
Последний раз редактировалось BlackKilkennyCat Пт дек 11, 2020 16:46:42, всего редактировалось 1 раз.
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

Ну, на худой конец действительно можно взять самый дешевый МК с USB и достаточным количеством ног, да реализовать на нем контроллер этой клавы, заменив штатный.
Когда-то я вот такую штуку баловства ради делал: прикорячил матричную клавиатуру к микроконтроллеру и эмулировал USB-клаву таким образом.
Разве что нужно учесть, что HID-буфер для реальной клавы нужно будет целиком использовать, иначе клавиатура будет крайне медлительной и печатать на ней хотя бы 300 символов в минуту не получится!

А вообще, нестандартная клавиатура - это же клево! Если там много ненужных кнопочек или есть дополнительные модификаторы, можно на них повесить часто используемые команды.
Скажем, если у вас есть условный Ctrl2, можно внутри самого контроллера при одновременном нажатии ctrl2+m отдавать компьютеру "cmake .. && make". Ну и так далее.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Сообщение BlackKilkennyCat »

У микрочипа есть примеры реализации HID мыши и клавиатуры.
Когда-то делал на базе их примера переходник PS/2 to USB-HID, не очень сложно оказалось.

Использование всего или не всего буфера в HID в данном крайне медленном случае не влияет ни на что, понятие же "целиком" неинформативно, я могу задать его 2 байта, могу 64, могу аж 1024, могу использовать несколько конечных точек и т.д.
И даже с размером в 1 байт 300 кликов в секунду достижимо без проблем.
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

BlackKilkennyCat, я о последовательности нажатых клавиш!
В одной железке для упрощения работы с нею я эмулировал USB-клавиатуру (и выдавал все сообщения через нее). Так вот, поначалу я сделал безграмотно: сообщения писал "по одной букве", эмулируя поочередные нажатия и отпускания клавиш. Это крайне глупо, т.к. частота опроса устройства хостом — 1кГц, в итоге если теоретическая скорость должна была бы составлять ~500 символов в секунду, фактически было меньше десятка!!! Как только чуть правильней сделал (всего-то эмулируя нажатие следующей клавиши при одновременном отпускании предыдущей, а полностью отпускание клавишь - лишь когда повторно тот же символ надо ввести, либо строка закончилась), уже скорость знатно возросла!

Вот более приличный пример.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Сообщение BlackKilkennyCat »

не, наверное, что-то не то было. Я работал с буфером в 8 байт для мыши и 8 для клавиатуры (просто оставил значения по-умолчанию в каком-то примере) по прерываниям, никаких проблем, вагон времени оставался, моя скорость набора как раз около 300.
Друг Кота
Сообщения: 5066
Зарегистрирован: Вс фев 15, 2009 01:04:58
Откуда: Kaluga

Сообщение Wladimir_TS »

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3939824#p3939824"]При помощи xmodmap легко перенастроить все скан-коды как нужно.[/uquote]

ЭЭЭЭЭЭЭ как ? Контролер прошит однократно. В обычном протоколе клавиатуры нет команд смены скан кодов клавиш.

Добавлено after 51 second:
[uquote="Карбофос",url="/forum/viewtopic.php?p=3939882#p3939882"]Обычно в подобных случаях ищут драйвер клавиатуры.[/uquote]

Хорошо, что не драйвер коврика для мышки :)))

Добавлено after 1 minute 2 seconds:
[uquote="mont-oriol",url="/forum/viewtopic.php?p=3939868#p3939868"][uquote="Wladimir_TS",url="/forum/viewtopic.php?p=3939822#p3939822"]Вот ищу - нет-ли проектов клавиатур на каких-то распространенных ОМК, что-б была возможность доработать под свою матрицу клавиш[/uquote] Здесь посмотрите: https://kbfirmware.com/[/uquote]

Не совсем понял что там и к чему.

Добавлено after 4 minutes 2 seconds:
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3940110#p3940110"]Ну, на худой конец действительно можно взять самый дешевый МК с USB и достаточным количеством ног, да реализовать на нем контроллер этой клавы, заменив штатный.[/uquote]

Задача в том и стоит, USB не нужен обычный PS2


[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3940110#p3940110"]А вообще, нестандартная клавиатура - это же клево! Если там много ненужных кнопочек или есть дополнительные модификаторы, можно на них повесить часто используемые команды.
Скажем, если у вас есть условный Ctrl2, можно внутри самого контроллера при одновременном нажатии ctrl2+m отдавать компьютеру "cmake .. && make". Ну и так далее.[/uquote]

Там меньше нужного клавишь увы, из-за этого есть клавиша "Fn" и 2 функции на большинстве клавиш.

Добавлено after 4 minutes 58 seconds:
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3940117#p3940117"]Вот более приличный пример.[/uquote]

Не очень понял что это, куда что подключается тоже не ясно, это только исходник некоей прошивки. С которой ничего непонятно.

Нужно РS2 стандарт - обычный SPIый. возможность четко указать таблицей какая клавиша какой скан код отдает на нажатие/отпускание + функция второго набора скан кодов после нажатия FN а затем целевой клавиши.

Непонятно как качать - скачивается какие-то htmlи. Что-то я от вирусов совсем тупой стал.
Ответить

Вернуться в «Интеграция с ПК»