Форум myROBOT.ru » Роботы и робототехника » Делимся опытом » USB HID mouse

Страниц (1): [1]
 

1. mihail - 08 Сентября, 2011 - 19:01:07 - перейти к сообщению
Я немного рассказал об ATmega32U4 в теме о JoyStick http://myrobot.ru/forum/topic.ph...=9&topic=134 Здесь постараюсь привести более подробные сведения о контроллере и его программировании.

Описание микроконтроллера http://www.atmel.com/dyn/product...asp?part_id=4317

Если нет желания паять эту кроху, можно купить готовую плату. Описание одной из них http://ladyada.net/products/atmega32u4breakout/ Еще вариант http://www.mattairtech.com/index...ds/mt-db-u4.html

Для написания программ я использовал WinAVR. Но, полагаю, наибольший интерес представляют возможности работы с USB предусмотренные в этом микроконтроллере.

Облегчению этой задачи служит библиотека LUFA. Версию библиотеки для WinAVR смотрите на http://www.fourwalledcubicle.com/LUFA.php
2. mihail - 08 Сентября, 2011 - 19:17:45 - перейти к сообщению
Пример USB HID мышки на основе ATmega32U4.

Немного о схеме. К PD7, PD6, PD5, PD4, PD3, PD2 подключаются кнопки. При нажатии кнопки соответствующая ножка МК соединяется с GND.

Назначение кнопок следующее:
- PD7 перемещает курсор влево,
- PD6 перемещает курсор вправо,
- PD5 перемещает курсор вниз,
- PD4 перемещает курсор вверх,
- PD3 выполняет роль левой кнопки мышки,
- PD2 выполняет роль правой кнопки мышки.

Исходники http://narod.ru/disk/24472559001...e_mouse.zip.html

К сообщению прикреплена прошивка для ATmega32U4
3. mihail - 09 Сентября, 2011 - 19:44:59 - перейти к сообщению
Моя мышка Улыбка
4. mihail - 10 Сентября, 2011 - 00:08:10 - перейти к сообщению
К сожалению, пользоваться мышкой запрограммированной ранее предложенной прошивкой очень непросто. Курсор двигается с постоянной скоростью. И это немаленькая скорость. Переместить его на небольшое расстояние непросто. Если скорость уменьшить, то курсор будет долго преодолевать значительные расстояния. Проблему решил следующим образом. Когда нажимают кнопку, курсор начинает медленно двигаться. Если кнопку держать не отпуская, то скорость курсора увеличивается.
5. mihail - 10 Сентября, 2011 - 00:44:20 - перейти к сообщению
Приблизительно таким мне видится джойстик на основе предложенной электроники и программы:
1 - курсор вверх,
2 - курсор вниз,
3 - курсор влево,
4 - курсор вправо,
5 - левая кнопка мыши,
6 - правая кнопка мыши.
6. nest - 10 Сентября, 2011 - 00:45:02 - перейти к сообщению
А какова цель?
7. mihail - 10 Сентября, 2011 - 00:51:58 - перейти к сообщению
Надеюсь мой опыт может быть использован при создании средств специального управления для ПК http://myrobot.ru/forum/topic.ph...11&topic=364
8. alex91 - 11 Сентября, 2011 - 18:19:20 - перейти к сообщению
mihail спасибо очень интересно попробую когда контроллер под мышку такою найду