Очередной контроллер энкодеров/кнопок — «Железные» кокпиты

Добрый день.
Подсел на сим довольно-таки давно. Постепенно прибарахлился необходимыми органами управления. Короче авиация — несбывшаяся мечта…. ну хотя бы сим есть…
Поскольку всю свою сознательную жизнь занимался программированием микроконтроллеров (по сути это моя профессия), решил сделать управление автопилотом (PMDG737).
Предлагаемый проект — разовая разработка скорее всего не имеющая продолжения, поскольку контроллер делался для конкретных целей для удовлетворения конкретных (моих) нужд.
Несмотря на это проект можно продолжить/расширить для этого прилагаю исходник.
Чтобы не переписывать часть софта для HID кусок программы взят от какого-то джойстика, найденного ранее на просторах интернета. Честно сказать даже не помню первоисточник.
Я лишь переписАл IO.c и изменил дескриптор, удалив из него оси/Hat т.д., оставив только кнопки (см. приложенные архивы).
Теперь о самом устройстве:
6 энкодеров (квадратурных), 20 кнопок — ИМХО, этого достаточно для управления автопилотом.
Микроконтроллер PIC18F2550. MS Windows определяет его как игровое устройство.
Вместо принципиальной схемы все обозначено на рисунке печатной платы (Sprint Layout).
Для тех, кто не понимает в программировании прошивать в МК нужно JOY_ENC.HEX
При вращении энкодеров имитируются нажатия кнопок — время удержания имитированной нажатой кнопки = 50 мс, длительность «отпущенной» кнопки = 50 мс. Эти параметры можно изменить в прошивке.
Экспериментальным путем определено, что уменьшать длительной порой не имеет смысла поскольку сим начинает пропускать сработки. При таких параметрах имитации нажатий вращением энкодера можно изменять не менее чем на 10 единиц за одну секунду. Так называемое «ускоренное» вращение энкодера не реализовано по субъективным причинам.
Вращать энкодеры можно хоть все одновременно — обработка данных в программе происходит индивидуально для каждого из энкодеров.
Ну, собственно, все, что я хотел сказать. Возможно моя конструкция кому-нибудь пригодиться.
Спасибо за внимание.

не смог загрузить на форум — загрузил сюда:
http://ifolder.ru/31267734
http://ifolder.ru/31267735

Ответов: 4

чем открыть файлы?

MPLAB + C18 для исходника
Sprint Layout для платы

Дабы не пропало на просторах файлообменников, прикрепляю сюда:
Прикрепленный файл
 mcp_pic18f2550.zip   110,36К
  36 раз скачан
В процессе эксплуатации были выявлены некоторые баги.
Актуальна версия 1.1
http://ifolder.ru/31379686