Текущее положение указателя мыши с Digispark attiny85

Я пробую библиотеку DigiMouse для платы attiny85 Digispark.

Это позволяет неплохо эмулировать мышь. Однако мне также нужно знать текущую позицию курсора. Есть ли способ получить его?

, 👍2

Обсуждение

эмулировать мышь с "абсолютным положением"... обычная мышь отправляет только значения "относительного перемещения", @jsotola


1 ответ


Лучший ответ:

1

Никакая мышь (особенно такая минималистичная, как DigiMouse.h) не может узнать текущее положение курсора — USB просто не предоставляет такой возможности.

Вместо этого вам нужно реализовать "абсолютную" мышь (также известную как "планшет"). Однако DigiMouse не реализует такую возможность. Поэтому вам придется реализовать собственный драйвер планшета.

Обычная мышь отправляет "дельту" для позиции. То есть разница в позиции от текущей позиции. Абсолютная мышь или планшет отправляет положение на экране как пропорцию некоторого максимального набора измерений. В идеале это должны быть те же размеры, что и ваш экран, но это не обязательно.

Основное различие между DigiMouse и тем, что вы бы реализовали для DigiTablet, заключается в «Дескрипторе отчета HID». Это определяет, что означают отправляемые данные и как компьютер должен их интерпретировать.

,