Мыши-джойстики обычно предназначены для особых устройств, таких как промышленные приборы, или для помощи людям с ограниченными возможностями в использовании компьютера. Но он может быть вполне удобен и для обычного использования на рабочем столе. По схожему принципу работают вот такие игровые автоматы. Недавно как раз достался промышленный джойстик Genge & Thoma. На его базе и будем делать мышь-джойстик. Мышка воспринимается компьютером как стандартная HID-мышь, которая работает без драйверов на любых последних ОС (Windows, Linux, Mac и т. д.).

Решено установить мышь и кнопки прямо на рабочий стол, чтобы получить оптимальную эргономику. Итак, время для столярных работ:

Может показаться, что отверстия для кнопок расположены случайным образом, но на самом деле они хорошо продуманы. Левую кнопку удобно нажимать безымянным пальцем, а правую большим пальцем. Готовая система выглядит так:

Обычную мышку могу одинаково хорошо использовать как левой, так и правой рукой, но джойстики всегда использовал левой. Кнопки имеют очень легкое давление пружины и щелкающий микропереключатель. Снял резиновый чехол с джойстика, так как он убирал ощущение и точность.
Схема подключения мышки-джойстика
Использую мышь-джойстик уже несколько лет вместе с обычной мышью. Они оба могут быть подключены одновременно без проблем. Управляю джойстиком левой рукой, а обычную мышь правой. Мышь-джойстик не так хороша для приложений, требующих точности, таких как программное обеспечение САПР. Но для обычной работы на рабочем столе, просмотра веб-страниц и других развлечений очень даже полезно. Эргономика намного лучше, чем при использовании классической мышки. Заметно при длительной работе. Нет боли в запястье, потому что оно находится в более естественном положении.
На принципиальной схеме резисторы на 220 кОм не нужны. Также можно исключить большую часть резисторов номиналом 5 кОм, нужны только R5 и R11. Хотя если оставить все резисторы установленными, это не повредит работе джойстика, если потенциометры его имеют низкое сопротивление по сравнению с 220 кОм. Затем можете использовать этот же адаптер изменив прошивку через загрузчик.
Джойстик, который тут использовался, имеет линейные потенциометры 5 кОм по обеим осям, но другие значения также должны работать нормально. Концы потенциометров подключаются к GND и +5V. Напряжение контакта потенциометра считывается с помощью PIC ADC. Кнопки считываются как цифровые входы, подключенные между входом PIC и землей.
Прошивка написана компилятором CCS PIC C. Прошивка, включая исходники и скомпилированный шестнадцатеричный код, доступна по ссылке ниже. Файл дескриптора USB, который изменил для этого использования, не включен, так как это код, защищенный авторским правом CCS. Включенный файл .hex скомпилирован для использования с этим загрузчиком, поэтому надо сначала запрограммировать загрузчик с помощью Pickit3 или ICD3, а затем прошить шестнадцатеричный файл мыши-джойстика с помощью программного обеспечения загрузчика. Позже, при необходимости, можете войти в режим загрузчика, удерживая нажатой левую кнопку мыши при подключении USB-кабеля. Центральное положение калибруется только при запуске, поэтому нельзя касаться джойстика при подключении USB-кабеля или загрузке ПК. Скачать файлы проекта








