Usb мышка на базе акселерометра

Беспроводная клавиатура + Air mouse IconBiT G-control

Универсальный беспроводной QWERTY гиро-контролер IconBIT G-Control

Универсальный беспроводной QWERTY гиро-контролер IconBIT G-Control для современных медиа-плееров, интернет-ТВ и Android/PC/MAC.

 Qwerty пульт IconBIT G-Control включает в себя — беспроводную мышь-акселерометр + беспроводную клавиатуру + пульт ДУ . С пультом ДУ IconBIT G-Control вы можете осуществлять полный контроль на расстоянии до 30 метров.

 Пульт IconBIT G-Control работает на любом ПК. Замечателен для интернет ТВ, медиа-плееров и Android/PC/MAC. Прост в установке.

Для работы на операционной системе Android необходимо установить бесплатное приложение из Play market — Russian keyboard

Rusian keyboard — Бесплатное приложение, необходимое для использования внешней клавиатуры Android TV приставки.

Активация: выбираем в настрйках / язык и ввод / клавиатура и способы ввода — Russian keyboard. По умолчанию — Russian keyboard. В настройках приложения выбирается раскладка «External Keyboard RU». Устанавливается задержка 900 мс. Переключение раскладки — Shift+Space.

Ключевые особенности гиро-контролера IconBIT G-Control:

  • 3 в 1: Мышь-акселерометр + беспроводная клавиатура + пульт ДУ,
  • используется с ПК, телевизором или медиа-плеером,
  • 2,4 ГГц DSSS радиопередатчик,
  • инфракрасный датчик.

Заряжается пульт, работающий от встроенного «долгоиграющего» аккумулятора, через порт USB: на корпусе устройства имеется разъем mini-USB, а в комплект поставки входит кабель-переходник на стандартный USB.

Также на работу с устройствами, оснащенными USB, и поддерживающими USB-мышку и USB-клавиатуру (а таковыми являются большинство современных медиаплееров), рассчитан специальный USB-адаптер. Маленький адаптер в формате флеш-накопителя помечен «Multifunction remote control» для того, чтоб его не спутать с той самой флешкой.

Пульт делает набор текстов более удобным — это бывает необходимым при поиске ролика на YouTube или файла в домашней медиатеке. При подключении к ПК установка специальных драйверов не требуется Адаптер работает на частоте 2,4 ГГц и «отзывается», по словам производителя, на расстоянии до 30 метров.

Такая мощность особо не нужна, но позволит управлять проигрывателем, если он установлен в торговом центре или в другом общественном месте, на значительном отдалении от «оператора» — человека, который должен переключать программы, выбирая видеоролики или что-то еще для отображения на большом информационном табло, к которому подключен плеер.

На верхней, «пультовой» панели расположено 16 кнопок; среди них — кнопки

включения, отключения звука, включения режима мышки, еще одна — имитиру-

ющая нажатие правой клавиши мыши, а также Home, кнопки регулировки уров-

ня громкости, и другие специальные клавиши. Кроме этого, здесь же имеется четырехпозиционный джойстик в форме колеса, центральная кнопка которого исполняет роль левой кнопки мыши. Что-бы начать использовать устройство в режиме мыши, достаточно перевернуть его «пультовой» стороной кверху.

При этом автоматически блокируется клавиатура и активируется функция ДУ. Чтобы активировать функцию мышки, достаточно нажать на специальную кнопку. С ее же помощью можно также и выключить режим мышки.

Если с устройством произошли какие-то неполадки (электроника, всякое бывает), то на боковой панели можно нажать кнопку системного сброса: кнопочка Reset находится глубоко в корпусе, поэтому случайно ее не нажмешь при всем желании. Позиционирование пультом как мышкой с акселерометром производится очень легко и удобно.

Чувствительность мышки не настраивается, поэтому она довольно низкая, чтобы было удобно людям, не привыкшим к геймерским и мультимедийным гаджетам с высокой чувствительностью. Попасть в нужную иконку или в поле ввода текста с помощью указателя — просто, и нажимать «левую» клавишу мыши (центральную кнопку пульта) -тоже.

Чтобы активировать клавиатуру достаточно снова просто перевернуть пульт. Для удобства работы в таком режиме на корпусе пульта предусмотрены специальные «ушки», за которые пульт удерживается как джойстик игрового устройства, и набор текста идет легко, если работать сразу двумя большими пальцами.

Чтобы перевести регистр или использовать альтернативные символы ввода, достаточно нажать Shift или Fn. Через Fn можно получить доступ к таким «плеерным» функциям, как Info, Zoom, Eject, и другим. На клавиатуре также есть кнопки управления курсором, и все остальные необходимые клавиши, включая Esc, Enter, Backspace, пробел и другие.

Источник: http://www.android-smart-tv.ru/iconbit-g-control

AVR270: демонстрационный проект мыши на AVR с аппаратным USB

Источник: http://microsin.net/programming/avr-working-with-usb/avr270-usb-mouse-demonstration.html

Гироскопическая мышь MF100

  • AliExpress
  • Компьютеры и планшеты

Добрый день (опционально вечер/ночь). Сегодня расскажу Вам о гироскопической мыши. Бралась в качестве временной замены гиро — трекеру головы работающем на ардуино.

Но это другая история, прошу под кат:
ПРЕДИСЛОВИЕ Продавец отправил мне устройство в пупырчатом пакете. Комплектуется данный гаджет донглом, элементы питания в комплект не входят.

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

ОПИСАНИЕ ХАРАКТЕРИСТИК

Имеет небольшие размеры 14см в длинну и 4см в ширину.Очень удобно лежит в руке:В целом пользоваться удобно, корпус глянцевый, не скрипит. Используются элементы питания типа ААА в количестве двух штук. Радио частота — 2.4ГГц (так заявляет производитель).

ФУНКЦИОНАЛ

Дальность заявляется аж до 20м. В комнате 18м^2 работает без проблем и разрывов. Так как устройство оснащено цифровым гироскопом, то работает относительно его осей.

Нюанс: движения курсора будут инвертироваться если взять устройство наоборот. Для достижения наилучшего результата устройство следует как минимум направлять правильным концом в сторону монитора/тв и тд.

Исходя из приложенных изображений можно сделать вывод, устройство более предназначено для андроид устройств. На данный вывод наталкивает наличие всем знакомых символов — кнопок домой и меню. Верхняя кнопка устройства включает и выключает мышь.

Ниже нее имеются кнопки громкости, 4х сторонний джойстик, кнопка подтверждения выбора, кнопка назад и меню. Еще ниже имеются клавиши перехода домой, кнопка блокировки движения указателя, кнопки перейти вверх и вниз и кнопка выключения громкости.

Нюанс: в операционной системе Windows кнопка назад и меню выполняют функцию правой клавиши мыши, кнопка ОК соответственно левой.

кнопки громкости полностью работают, работает выключения звука, кнопка домой открывает Internet Explorer, кнопки перехода вверх и вниз не функционируют, клавиша отключения мыши — работает.

Мышь бралась для работы в среде Windows, функционал устроил полностью. Тестировалось устройство в Windows 10, 7. Автоматически устанавливается как HID устройство ввода. Долго рассказывать про эргономику смысла нет, по этому перейдем непосредственно к разборке аппарата.

РАЗБОРКА

Устройство разбирается очень просто: Переворачиваем аппарат, открываем батарейный отсек, извлекаем элементы питания, выкручиваем 4 шурупа, аккуратно поддеваем корпус и отщелкиваем 4 защелки. Донгл разбирается чуть сложнее, из за повышенной сложности не советую его ковырять, но для Вас я предоставлю его потроха:

Само устройство, как и сам донгл работают на базе чипа bk2433 Даташит

Который исходя из описания является микроконтроллером с процессорным ядром BK-51. Так же на плате распаян чип гироскопа, найти на него даташит не получилось, надеюсь вы мне поможете определить его. Гироскоп из опыта общения с этим устройством является 3х осевым.Используют кварц с частотой 16.000 MHz как в приемнике, так и впередатчике.

ВЫВОДЫ

Устройство целиком и полностью устраивает меня как конечного потребителя, все работает из коробки, достал, включил, пользуйся. Относительно нерабочих моментов, с ними стоит считаться, минусом это не является тк у всех задачи разные. По поводу нюанса управления: Тут есть свои плюсы, если ПК находится позади Вас, то устройство полностью будет сохранять свой функционал за счет инверсии осей. Минусов замечено не было. Планирую купить +40 Добавить в избранное Обзор понравился +28 +59

Источник: https://mysku.ru/blog/aliexpress/45680.html

USB KH 0 0 1075 0 A5 5 5B 0 – Скачать mp3 бесплатно

Jess Glynne – All I Am [Official Acoustic Performance]

Loretta Lynn – Ain't No Time To Go (Official Video)

Marshmello ft. Bastille – Happier (Official Music Video)

Leon Bridges – If It Feels Good (Then It Must Be) (Official Video)

Kevin Gates – Adding Up [Official Audio]

Weezer – Africa (starring Weird Al Yankovic)

SOJA – I Found You (Official Video)

Avril Lavigne – Head Above Water (Lyric Video)

Grace Carter – Why Her Not Me

Imagine Dragons – Zero (Lyrics)

Justice – Love S.O.S. (WWW) (Official Music Video)

Blac Youngsta – Drive Thru

Passenger | Ghost Town (Official Video)

KT Tunstall – The River

Rita Ora – Let You Love Me [Official Video]

dodie – Human

Disturbed – A Reason To Fight [Official Music Video]

Machine Gun Kelly – LATELY

The Chainsmokers – This Feeling (Lyric Video) ft. Kelsea Ballerini

Brett Eldredge – “Love Someone” (The Edgar Cut)

Mumford & Sons – Guiding Light (Lyric Video)

Marshmello – Stars (Official Music Video)

Noah Cyrus, LP – Punches (Official Audio)

Kane Brown – Homesick

Jonathan McReynolds – God Is Good

Lana Del Rey – Venice Bitch

2 Chainz – Bigger Than You ft. Drake, Quavo

Logic – Everybody Dies (Official Video)

Ella Mai – Trip

Jason Mraz – More Than Friends (feat. Meghan Trainor) [Official Video]

Lukas Graham – Love Someone [OFFICIAL LYRIC VIDEO]

Eminem – Lucky You ft. Joyner Lucas

Mariah Carey – GTFO

Jaden Smith – The Passion

Brett Young – Here Tonight

5 Seconds Of Summer – Valentine

Gorillaz – Tranz (Official Video)

Lennon Stella // “Bad”

Here I Am (from the Dumplin' Original Motion Picture Soundtrack [Audio])

Lana Del Rey – Mariners Apartment Complex

Sarah Close – Crazy Kind (Lyric Video)

The Chainsmokers & NGHTMRE – Save Yourself (Official Video)

Eric Church – Monsters (Official Lyric Video)

Gucci Mane, Bruno Mars, Kodak Black – Wake Up In The Sky [Official Audio]

Mozzy – Thugz Mansion (Official Video) ft. Ty Dolla $ign, YG

Major Lazer – All My Life (feat. Burna Boy) (Official Music Video)

Hozier – Nina Cried Power ft. Mavis Staples

Kevin Gates – Money Long [Official Music Video]

Niall Horan – Finally Free (From “Smallfoot”) (Official Video)

Joji – SLOW DANCING IN THE DARK

Источник: https://mp3skazka.ru/music/USB-%D0%BC%D1%8B%D1%88%D0%BA%D0%B0-%D0%BD%D0%B0-%D0%B1%D0%B0%D0%B7%D0%B5-%D0%B0%D0%BA%D1%81%D0%B5%D0%BB%D0%B5%D1%80%D0%BE%D0%BC%D0%B5%D1%82%D1%80%D0%B0.html

Компьютерная 3D мышка на основе акселерометра

» Схемы » Компьютеры и периферия · Применение микроконтроллеров

30-10-2007

Очень интересный проект. Потребуются акселерометр MEMS X/Y (желательно не использовать акселерометры других моделей, т.к. это может отразиться на результате), микроконтроллер PIC и старая мышка. Здесь также будет описано как использовать полузабытый всеми порт RS232.

Этот проект показывает использование акселерометра в качестве компьютерной мыши, но перед началом производства, давайте разберемся, что представляет собой акселерометр? Акселерометр – прибор позволяющий измерять силу тяготения и ускорение.

Есть разные способы измерения этих параметров, однако давайте опишем только способ используемый в этом проекте – способ с использованием конденсатора. Внутри чипа находится конденсатор с третьей, дополнительной подвижной пластинкой.

Как Вам уже известно, емкость конденсатора увеличивается с уменьшением расстояние между пластинками, чип измеряет емкость между двумя пластинками и подвижной пластинкой посередине (ниже я нарисовал маленькую иллюстрацию к происходящему, емкость условно 1 Ф): В случае А расстояние между пластинами одинаково, т.е.

акселерометр находится в нормальном положении, а в случае Б на акселерометр действует какая-то сила, пластинка смещается, следовательно меняется емкость между пластинками. Способ измерения объяснять не буду, важно то, что в конце из чипа выходит аналоговый сигнал от 0 В до 3.3 В. Все это достаточно мало, что бы это можно было бы поместить в SMD корпус.

В этом проекте используется акселерометр MMA6270 произведенный Freescale Semiconductor. Он содержит два сенсора, который находятся по углом в 90 градусов друг к другу, таким образом обеспечивая данные об ускорении по осям Х и У.

В данном случае мы используем их для определения угла нахождения мышки, т.е. 0G соответствует горизонтальному положению мышки.

Мы же хотим двигать курсором на экране, поэтому добавляем в схему микроконтроллер PIC, подключаем все выходы к ADC и пересылаем данные на компьютер.

Предугадывая Ваше желание избавится от проводов, вынужден огорчить Вас: наша мышка хоть и работала при беспроводном соединении 433 Мгц, но страшно тормозила. Делать устройство совместимым с СОМ портом слишком долго, поэтому проще воспользоваться программой написанной на Visual Basic специально для этого устройства его автором Б.Клинцом.

Следующая проблема – питание. Как питать устройство, если СОМ порт не имеет отдельной линии для питания? Выход – несколько выходов используемых старыми мышками и клавиатурами.

Из этих выводов мы можем получить около 10мА, что вполне достаточно для нашего устройства, однако возникает проблема с напряжением : оно составляет около 8…13 В. Моим решением было завязать несколько линий управления напрямую к синему СИД который берет на себя около 3.4 В. Отлично! С МК PIC при 3.

3 В обычно не возникает никаких серьезных проблем. Были некоторые подозрения на MAX232, однако он включился в работу на удивление хорошо.

Нажмите для увеличения

Вот и готовая мышка-акселерометр!

Этот замечательный проект был прислан Бернардом Клинцом (Bernard Klinc).

Software Source Code:

  • PIC MikroBasic Source
  • PC Visual Basic Source

Источник: https://www.rlocman.ru/shem/schematics.html?di=33996

Какой сенсор мыши лучше? Часть 2. Средние сенсоры


Продолжаем делать мини-обзоры наиболее популярных сенсоров мыши. Сегодня речь пойдет о сенсорах средней руки – не самых лучших, но покупка которых в определенных ситуациях может быть вполне оправдана.

Если вы знаете, какой сенсор установлен в вашей будущей мышке, вы можете еще до покупки узнать о достоинствах и недостатках той или иной модели устройства.

Однако следует помнить, что реализация одного и того же сенсора может отличаться в зависимости от производителя.

Разговор пойдет о сенсорах среднего сегмента в техническом плане (не в ценовом).

Pixart A9800 (А9500)

По ощущениям, лазерный оптический сенсор А9800 занимает свыше 95% рынка лазерных мышек. А9800 и его предшественник А9500 (технически они не сильно различаются) является первым и единственным лазерным сенсором, который действительно можно назвать игровым.

Технические характеристики впечатляют:

– скорость работы >4,5 м/с – ускорение 30G – скорость фотографирования поверхности 12000 fps – регулируемая высота отрыва – большая светочувствительная матрица 30х30 пикселей – 8200 dpi(cpi) с шагом 50 (dpi и шаг могут отличаться у разных производителей)


Технически все идельно. Но что-то с этим сенсором не так. Ведь 99% профессиональных игроков в Counter-Strike используют именно оптические мыши, а не лазерные.

Главная проблема лазерного сенсора А9800 (и соответственно А9500) – это СЛУЧАЙНАЯ АКСЕЛЕРАЦИЯ, достигающая 5-6%. Что такое акселерация можно прочитать здесь. Говоря простым языком, А9800 имеет довольно большую случайную погрешность. И это факт. Об этом говорят и создатели игровых устройств, и данные различных тестов.

Акселерация А9800 является следствием особенностей лазерного излучения. Она физически “зашита” в сенсор и программно никак не убирается.

Перевод апноута AVR270: USB Mouse Demonstration on megaAVR with USB [1], рассказывающий про демонстрационный код устройства USB HID – компьютерная мышь. Исходный код и документацию можно скачать по ссылке [2].

Особенности демо-проекта мыши:

• Работает на микроконтроллерах серии AT90USB, на частоте 8 МГц (или 16 МГц)• Реализовано устройство USB с низким потреблением от шины USB (менее 100 мА)• Мышь стандартная, т. е. она работает на любом компьютере PC, на котором установлена любая операционная система (Windows® 98SE или более свежая, Linux® или Mac OS®).• Требуется менее 3 килобайта пространства памяти программ (FLASH)

• Реализованы перемещение курсора по осям X, Y, левая кнопка мыши.

Исходный код можно скачать по ссылке [2] (см. папку USB mouse).

Прим. переводчика: в библиотеке LUFA также есть готовый проект мыши с исходным кодом, который также можно скомпилировать на любой микроконтроллер AVR с аппаратным интерфейсом USB (см.

[2], папки LUFA-130901DemosDeviceClassDriverMouse и LowLevelMouse архива). Проекты из LUFA удобнее тем, что их можно скомпилировать практически под любую макетную плату, имеющуюся на рынке.

Все примеры кода из архива [2] можно с успехом запустить на макетных платах AVR-USB162, AVR-USB162MU, userial, AVR-USB32U4.

[1. Введение]

Традиционно клавиатура подключалась к компьютеру через интерфейс PS/2. Но интерфейс PS/2 уже устарел, и постепенно исчезает с новых моделей PC и ноутбуков. Его место с успехом заменяет интерфейс USB.

Такое изменение на рынке касается разработчиков устройств ввода/вывода, потому что необходимо иметь возможность реализовать интерфейс USB, чтобы обеспечить простое подключение разрабатываемых устройств к новым компьютерам.

Этот апноут описывает простой проект мыши. Он позволяет быстро протестировать аппаратуру USB чипов серий AT90USBxxx, при этом не нужно устанавливать никакие драйвера на компьютер.

Подразумевается, что читатель знаком с библиотекой USB Software Library for AT90USBxxx Microcontrollers [3] (поставляется бесплатно на CD-ROM, и её также можно скачать с сайта Atmel), и знаком со стандартом USB HID [4].

Прим. переводчика: за разъяснением специфических терминов стандарта USB (конечная точка endpoint, polling, request, report, хост USB, устройство USB и т. д.) лучше обратиться к документу USB in a Nutshell [7].

[2. Требования к аппаратуре]

Приложение firmware для мыши USB требует следующую аппаратуру:

• Отладочную плату с микроконтроллером AVR USB (STK525, AT90USBKey, STK526, или это может быть Ваша собственная плата).• Стандартный кабель USB, если он нужен для подключения к Вашей плате (например, на одной стороне должен быть стандартный коннектор типа A, а на другой коннектор типа Mini B).

• Компьютер, на котором установлена операционная система Windows (98SE, ME, 2000, XP и т. д.), Linux или MAC OS, поддерживающие хост USB стандартов USB 1.1 или USB 2.0.

Firmware мыши Вы также с успехом можете запустить на макетных платах AVR-USB162, AVR-USB162MU, userial, AVR-USB32U4 [6].

[3. Как можно запрограммировать Ваш чип AVR USB]

Для того, чтобы прошить память микроконтроллера, Вы можете использовать следующие методы:

• Интерфейс JTAG, для этого нужен аппаратный отладчик JTAGICE mkII(2).
• Интерфейс ISP (SPI), для этого можно использовать программаторы AVRISP mkII, AVR Dragon (прим. переводчика: и множество других программаторов [5]) и отладчик JTAGICE mkII(2).

• Интерфейс USB, благодаря прошитому в память микроконтроллера (это уже сделано на заводе Atmel) DFU bootloader и программному обеспечению FLIP(1). Этот способ наиболее практичен и удобен.

• Параллельное программирование, для этого нужны программаторы STK®500 или STK600.

Примечания: 

(1) Программа-утилита FLIP предоставляется компанией Atmel, чтобы позволить пользователю прошить устройства AVR USB (и другие) через подключение USB, что не требует никакой дополнительной аппаратуры типа отладчиков и программаторов.

Прием данных через USB и перепрошивку памяти программ берет на себя бутлоадер DFU, заранее прошитый в память чипа на заводе Atmel.

(2) При использовании JTAGICE MKII будьте осторожны с галочкой “erase before programming” (очистить перед программированием) в утилите программатора AVR Studio®.

Если эта галочка установлена, то это приведет к стиранию как программы пользователя, так и к стиранию бутлоадера DFU. Прим. переводчика: при необходимости бутлоадер всегда можно восстановить с помощью ISP-программатора, бинарник бутлоадера можно скачать с сайта Atmel.

Пожалуйста обратитесь к содержимому справки FLIP для того, чтобы узнать, как установить драйвер USB и как запрограммировать микроконтроллер ATmega32U4 через интерфейс USB.

Прим. переводчика: простые указания на русском языке по установке драйвера USB и перепрошивке микроконтроллера через FLIP можно получить из статьи “Макетная плата AVR-USB32U4” [6].

[4 Быстрый старт]

Как только прошили Ваш микроконтроллер (например ATmega32U4) файлом usb_mouse.a90 проекта USB mouse [2], Вы можете запустить демонстрацию работы мыши. Проверьте, что Ваше устройство USB успешно прошло энумерацию как мышь (см. скриншот окна Диспетчера Устройств), и теперь Вы может использовать Вашу плату как мышь.

На рисунке ниже показано на примере отладочной платы STK525, какие кнопки нужны для управления работой этого демо.

Для перемещения курсора мыши по рабочему столу окна Windows используйте джойстик. Кнопка HWB работает как будто левая кнопка мыши. Кнопка и джойстик просто подключены к портам ввода вывода AVR как замыкатели на землю.

Уже упоминалось, что могут быть использованы и другие стартер-киты и отладочные платы, в этом случае см.

по исходному коду проекта, какие порты микроконтроллера нужно замкнуть на GND, чтобы получить эффект перемещения курсора или нажатия левой кнопки мыши.

[5. Обзор приложения firmware мыши USB HID]

Программа микроконтроллера (firmware), которая ведет себя как мышь USB, использует простейший обмен данными с компьютером PC.

Компьютер постоянно опрашивает мышь с интервалом P (поллинг или опрос, polling interval time) на предмет наличия новый данных, и мышь будет отправлять эти данные, если они имеются.

Если данных нет, то мышь будет посылать в ответ NAK (No Acknowledge, нет подтверждения).

Данные, которые посылаются в компьютер, называются репортом (report). Этот репорт имеет следующую структуру:

Рис. 5-1. Структура USB репорта мыши.

Рис. 5-2. Как работает приложение мыши.

[6. Организация кода firmware]

Код firmware мыши базируется на USB Software Library for AT90USBxxx Microcontrollers [3], и поэтому имеет ту же самую архитектуру.

Рис. 6-1. Архитектура программного обеспечения USB Mouse

Эта секция посвящена только работе модуля мыши (как опрашивается джойстик и кнопка). После этого будет описана настройка файлов, чтобы дать пользователю возможность построить собственное приложение мыши на основе проекта [2].

6.1 mouse_task.c

Этот файл содержит функции для инициализации мыши, сбора данных для репорта, и копирования данных репорта в буфер FIFO конечной точки устройства USB, чтобы данные были готовы для отправки в компьютер.

Рис. 6-2. Приложение мыши.

6.1.1 mouse_task_init

Эта функция выполняет инициализацию параметров мыши и аппаратных ресурсов (в данном примере настройка портов джойстика и кнопки).

6.1.2 Is_usb_mouse_event

Если произойдет какое-либо событие, связанное с мышью, то эта функция обновит USB-репорт мыши и вернет true. Иначе вернет false.

6.1.3 mouse_task

Эта задача проверяет результат Is_usb_mouse_event, и если true, то загружает репорт в USB endpoint FIFO, чтобы данные были отправлены хосту (компьютеру PC).

6.2 stk_52x.c

Этот файл содержит все подпрограммы, касающиеся управления ресурсами платы STK52x (джойстик, потенциометр, термодатчик, светодиоды…). Пользователю не нужно модифицировать этот файл, если он использует плату STK52x. Иначе на основе файла stk_52x.c. нужно сделать свой собственный файл для управления аппаратными ресурсами Вашей платы.

6.3 Как организовать поддержку Remote Wake Up (возможность пробуждения компьютера)

Функция Remote Wake Up является опциональной (необязательной) возможностью, указанной в стандарте USB. Она позволяет устройству USB вывести хост из режима пониженного энергопотребления (stand by mode). За подробностями, как это работает, обратитесь к спецификации USB, например [4].

Запрос на Remote Wake Up может инициировать устройство USB, но только хост может разрешить эту возможность. Хост отправляет запрос Set Feature request, чтобы разрешить фичу Remote Wake Up перед тем, как отправить запрос приостановки работы устройства (suspend request).

Если хост не отправил Set Feature (RemoteWakeUpEnable), то устройству не разрешено использовать фичу Remote Wake Up.

Устройство USB device сообщает о своей способности поддержать remote wakeup в своем дескрипторе конфигурации (configuration descriptor, см. описание далее, как это делается совместно с библиотекой USB Atmel [3]). Если устройство поддерживает remote wakeup, оно должно также поддержать разрешение и запрет своей работы с использованием стандартных запросов USB.

Дескриптор конфигурации (configuration descriptor) определен в файле usb_descriptors.h следующим образом:

// HID Mouse CONFIGURATION (конфигурация HID-мыши) #define NB_INTERFACE 1 #define CONF_NB 1 #define CONF_INDEX 0 #define CONF_ATTRIBUTES USB_CONFIG_BUSPOWERED #define MAX_POWER 50 // 100 mA

Чтобы настроить поддержку фичи Remote Wake Up, Вам нужно модифицировать CONF_ATTRIBUTES:

#define CONF_ATTRIBUTES (USB_CONFIG_BUSPOWERED|USB_CONFIG_REMOTEWAKEUP)

Если устройство поддерживает фичу Remote Wake Up, пользователь имеет поддержку запроса Set_Feature(DEVICE_REMOTE_WAKEUP) через использование подпрограммы void usb_set_feature(void).

Как только Set_Feature(DEVICE_REMOTE_WAKEUP) успешно обработано, то Вы можете использовать любую кнопку (она должна работать в режиме внешнего прерывания по изменению состояния вывода, external interrupt/pin change mode) чтобы вывести хост из режима сна. Чтобы это нормально работало, уделите внимание следующему:

• Во-первых, контроллер USB должен определить состояние приостанова (suspend state) линии: remote wake-up может быть отправлен только тогда, когда установлен флаг SUSPI.• Программа firmware может установить RMWKUP, чтобы отправить поток “upstream resume”.

Это автоматически произойдет с помощью контроллера после 5 миллисекунд неактивности шины USB.• Когда контроллер запустит отправку “upstream resume”, сработает прерывание UPRSMI (если оно разрешено). SUSPI очищается аппаратно.

• RMWKUP очищается аппаратно по окончанию “upstream resume”.

• Если контроллер детектировал хороший сигнал “End Of Resume” (окончание пробуждения) от хоста, то сработает прерывание EORSMI (если оно было разрешено).

6.4 Как переделать устройство USB из “незагрузочного” (non-bootable device) в “загрузочное” (bootable device)

Пожалуйста имейте в виду, что устройства USB HID могут быть bootable или non-bootable. По умолчанию демонстрационные примеры от Atmel поставляются как non-bootable устройства. Если Ваше приложение требует поддержки bootable, то нужно модифицировать параметр подкласса (sub-class parameter) в файле usb_descriptors.h:

// USB Interface descriptor mouse (дескриптор интерфейса USB мыши) #define INTERFACE_NB_MOUSE 0 #define ALTERNATE_MOUSE 0 #define NB_ENDPOINT_MOUSE 1 #define INTERFACE_CLASS_MOUSE 0x03 // HID Class #define INTERFACE_SUB_CLASS_MOUSE 0x00 // Non-bootable #define INTERFACE_PROTOCOL_MOUSE 0x01 // мышь #define INTERFACE_INDEX_MOUSE 0

Установите INTERFACE_SUB_CLASS_MOUSE в значение 1, чтобы мышь стала bootable device.

[7. Программное обеспечение для компьютера (PC Software)]

Приложение мыши USB не нуждается ни в каком программном обеспечении на хосте, потому что все поддержка (драйвер) мыши USB уже встроена в операционную систему компьютера.

В этом демо-приложении USB HID мыши не реализована поддержка средней и правой кнопок мыши.

[Ссылки]

1. AVR270: USB Mouse Demonstration on megaAVR with USB site:atmel.com.
2. 131122AVR270_AVR271_AVR272_AVR273.zip.
3. AVR276: USB Software Library for AT90USBxxx Microcontrollers.

4. HID Related Specifications site:usb.org.
5. Программаторы для AVR.
6. Макетная плата AVR-USB32U4.
7. USB in a NutShell – путеводитель по стандарту USB.

Колебания cpi в зависимости от скорости (акселерация) в SteelSeries Xai.

Сенсор Avago A9500

Важно знать, что эффект акселерации в А9800 (А9500) можно существенно уменьшить, если использовать в качестве поверхности коврики из твердых материалов: пластмасса, алюминий. Но это создает пользователю лишние проблемы: такие ковры дороже и имеют свойство истираться и истирать ножки мышек.

Любители теории заговора могут также порассуждать на тему: почему капитан команды Natus Vincere  – Zeus не считается крутым аимером? Может потом, что уже очень долго использует SteelSeries Xai (A9500) а сочетании с тряпичным ковром? А бывший игрок вышеназванной команды Ceh9 понял, что “не тащит” разве не после того, как пересел на SteelSeries Sensei (A9800)? Совпадение? Не думаю! К сожалению, пока не удалось найти объективную информацию по акселерации в новых модифицированных вариантах А9800 (Razer Taipan, Logitech g500s). Имеющиеся данные противоречивы. В интернете также можно найти информацию,будто бы акселерация в А9800 была исправлена новой прошивкой. Это не так! Вброс действительно был получен от сотрудника одного из производителей игровых устройств, но он имел в виду отсутствие алгоритма “сглаживания” в последних версиях прошивки А9800. С включенным сглаживанием задержка А9800 при высоких значениях dpi могла достигать более 20 мс.

Выводы: во многом А9800 прекрасен: точно считает углы, тонко настраивается. Кроме того, на рынке просто ОГРОМНЕЙШИЙ ВЫБОР мышек с этим сенсором. Каждый найдет форму/размер/вес на свой вкус. Но проблема с акселерацией не позволяет причислить его к “лику святых”. А9800 остается отличным выбором для игр типа Dota 2, League of Legends и т.д. Для Counter-Strike лучше поискать что-нибудь другое.

SteelSeries Sensei. Самая популярная мышь на A9800

А3090

А3090 впервые появился во второй версии Logitech G400 и получил маркировку S3095 (видимо Logitech вносили какие-то свои изменения). Позже сенсор стал окрытым и для других производителей.

Техническая часть:

– максимальная скорость: до 4.5 м/с (может быть существенно ниже на некоторых моделях) – матрица 30х30 (А3090 является приемником А3080/А3060) – 6400 fps – LED-подстветка (красная), инфракрасная в Roccat Savu. – максимальные dpi зависят от прошивки: 3500 на более ранеей и 4000 на поздних. – нативные dpi сенсора: 1800/3500 (3500 dpi версия) и 800/4000 (4000 dpi версия) – высота отрыва существенно зависит от конкретной реализации, но чаще всего довольно высокая А3090 дал начало новой эры топовых сенсоров: высокая скорость работы без существенной акселерации, отсутствие угловой привязки (и вообще углы неплохо считает), низкий уровень шума. Многие производители испытывали сложности с А3090 в плане технической реализации. Как правило, это касается высота отрыва и максимальной скорости работы. Но в целом, на 800 dpi сенсор ведет себя отлично практически на всех моделях (прошивка 4000 dpi).

Во многих вариантах А3090 применяется технология “сглаживания” (smoothing). Суть в том, что мышь не выдает результаты трекинга сразу, а применяет в данным некоторый алгоритм обработки.

Это позволяет существенно уменьшить уровень шума на высоких dpi, но привносит некоторую специфику в работу сенсора. Может ощущаться задержка отклика мыши, некоторая неточность при маленьких движениях, неестественность при быстрых длинных переводах.

Вероятно, при 800 dpi сглаживание в А3090 не используется, либо его эффект не заметен.

В 4000 dpi версии A3090 могут быть проблемы с мертвой зоной. Когда вы начинаете движение, мышь реагирует не сразу, а с некоторой задержкой, что может приводить к движению “рывками” и пропускам пикселей.

Популярные мыши на сенсоре А3090: Zowie AM/FK/EC-evo, Logitech G400/G400s, SteelSeries Kana V2, Roccat Savu. На сегодняшний день все крупные бренды отказались от выпуска мышек с А3090 в пользу более свежих PMW3310 и S3988.

Тем не менее, на рынке остались некоторые модели от малоизвестных производителей за небольшую цену: Hama uRage, Genius Maurus X и др. Кроме того, всегда можно купить подержанную мышь из high-end сегмента.

Logitech g400s. Версия 4000 dpi. (c) gamezone.

com

Выводы: А3090 может быть хорошим вариантом на небольшую цену, если вас устраивает 800 dpi.


SDNS-SS-3059


SS-3059 явлется модифицированным вариантом А3050. В настоящее время производится исключительно для SteelSeries Rival 100. Ключевые отличия по сравнению с исходным А3050: – сведена к минимуму акселерация – предельная скорость работы увеличина с 3 до 4.5 м/с В итоге получился очень неплохой сенсор. Но, как и в случае предшественника, dpi лучше ставить поменьше. Также остаются вопросы по точности обсчета углов. Rival 100 уже засветился в элите Counter-Strike: Global Offensive: на нем играет Dupreeh – лучший игрок команды Astralis.

50 оттенков Rival 100. (c) lelong.com.my

AM010 и PMW3320 AM010 представлен линейкой игровых мышей компании Logitech: модели g100s, g302, g402. По-видимому, данный сенсор – это совместная разработка Logitech и Pixart. PMW3320 является открытой версией AM010, с некоторыми изменениями, в частности увеличен фреймрейт с около 3000 до 5000+ fps. AM010 отлично проявил себя в мышках Logitech. Практически нулевая акселерация (обходит даже топовые 3310 и 3988) и максимальная скорость свыше 3 м/с. Наверное, лучший сенсор по соотношению цена/качество. Единственное слабое место – обсчет углов. Высота отрыва также относительно высокая. На сегодняшний день АМ010 морально устарел, и, скорее всего, в новых моделях мы его не увидим. В этом отношении PMW3320 явлется крайне перспективным сенсором. 3320 появился на рынке в конце 2015 года, и количество мышек с этим сенсором постоянно увеличивается. CM Storm Xornet 2, Azio Exo 1, Ozone Neon 3k, Roccat Kova 2016, QPad DX-20 построены на PMW3320 В теории, 3320 должен сохранить все лучшие качества AM010 при этом должен улучшиться обсчет углов засчет увеличенного фреймрейта. Однако, судя по первым обзорам, не у всех производителей получилось справиться с новым сенсором. Где-то проблемы с шагом dpi, где-то с максимальной скоростью. Вероятно, PMW3320 – это также будущее компании A4tech. В этом случае, А4tech сильно продвинется в соотношении цена/качество (естественно, при нормальной реализации сенсора).

QPad DX-20. PMW3320. (c) overclock.net

Выводы: К мышкам с PMW3320 нужно относиться осторожно и перед покупкой внимательно читать отзывы. Потенциально – это очень сильный сенсор при небольшой стоимости На этом средние сенсоры закончились. На очереди разговор о топовом сегменте рынка. В следующей части мы посмотрим, чем отличается PWM3310 от S3988, и узнаем, какой же сенсор самый мощный на сегодняшний день .

ЧИТАЙТЕ ТАКЖЕ

какой сенсор мыши лучше? Часть 1. Слабые сенсоры.
точный сенсор мыши глазами Logitech. Часть 2.
точный сенсор мыши глазами Logitech. Часть 1.

Источник: http://mousingame.blogspot.com/2016/07/2.html

Ссылка на основную публикацию
Adblock
detector
",css:{backgroundColor:"#000",opacity:.6}},container:{block:void 0,tpl:"
"},wrap:void 0,body:void 0,errors:{tpl:"
",autoclose_delay:2e3,ajax_unsuccessful_load:"Error"},openEffect:{type:"fade",speed:400},closeEffect:{type:"fade",speed:400},beforeOpen:n.noop,afterOpen:n.noop,beforeClose:n.noop,afterClose:n.noop,afterLoading:n.noop,afterLoadingOnShow:n.noop,errorLoading:n.noop},o=0,p=n([]),h={isEventOut:function(a,b){var c=!0;return n(a).each(function(){n(b.target).get(0)==n(this).get(0)&&(c=!1),0==n(b.target).closest("HTML",n(this).get(0)).length&&(c=!1)}),c}},q={getParentEl:function(a){var b=n(a);return b.data("arcticmodal")?b:(b=n(a).closest(".arcticmodal-container").data("arcticmodalParentEl"),!!b&&b)},transition:function(a,b,c,d){switch(d=null==d?n.noop:d,c.type){case"fade":"show"==b?a.fadeIn(c.speed,d):a.fadeOut(c.speed,d);break;case"none":"show"==b?a.show():a.hide(),d();}},prepare_body:function(a,b){n(".arcticmodal-close",a.body).unbind("click.arcticmodal").bind("click.arcticmodal",function(){return b.arcticmodal("close"),!1})},init_el:function(d,a){var b=d.data("arcticmodal");if(!b){if(b=a,o++,b.modalID=o,b.overlay.block=n(b.overlay.tpl),b.overlay.block.css(b.overlay.css),b.container.block=n(b.container.tpl),b.body=n(".arcticmodal-container_i2",b.container.block),a.clone?b.body.html(d.clone(!0)):(d.before("
"),b.body.html(d)),q.prepare_body(b,d),b.closeOnOverlayClick&&b.overlay.block.add(b.container.block).click(function(a){h.isEventOut(n(">*",b.body),a)&&d.arcticmodal("close")}),b.container.block.data("arcticmodalParentEl",d),d.data("arcticmodal",b),p=n.merge(p,d),n.proxy(e.show,d)(),"html"==b.type)return d;if(null!=b.ajax.beforeSend){var c=b.ajax.beforeSend;delete b.ajax.beforeSend}if(null!=b.ajax.success){var f=b.ajax.success;delete b.ajax.success}if(null!=b.ajax.error){var g=b.ajax.error;delete b.ajax.error}var j=n.extend(!0,{url:b.url,beforeSend:function(){null==c?b.body.html("
"):c(b,d)},success:function(c){d.trigger("afterLoading"),b.afterLoading(b,d,c),null==f?b.body.html(c):f(b,d,c),q.prepare_body(b,d),d.trigger("afterLoadingOnShow"),b.afterLoadingOnShow(b,d,c)},error:function(){d.trigger("errorLoading"),b.errorLoading(b,d),null==g?(b.body.html(b.errors.tpl),n(".arcticmodal-error",b.body).html(b.errors.ajax_unsuccessful_load),n(".arcticmodal-close",b.body).click(function(){return d.arcticmodal("close"),!1}),b.errors.autoclose_delay&&setTimeout(function(){d.arcticmodal("close")},b.errors.autoclose_delay)):g(b,d)}},b.ajax);b.ajax_request=n.ajax(j),d.data("arcticmodal",b)}},init:function(b){if(b=n.extend(!0,{},a,b),!n.isFunction(this))return this.each(function(){q.init_el(n(this),n.extend(!0,{},b))});if(null==b)return void n.error("jquery.arcticmodal: Uncorrect parameters");if(""==b.type)return void n.error("jquery.arcticmodal: Don't set parameter \"type\"");switch(b.type){case"html":if(""==b.content)return void n.error("jquery.arcticmodal: Don't set parameter \"content\"");var e=b.content;return b.content="",q.init_el(n(e),b);case"ajax":return""==b.url?void n.error("jquery.arcticmodal: Don't set parameter \"url\""):q.init_el(n("
"),b);}}},e={show:function(){var a=q.getParentEl(this);if(!1===a)return void n.error("jquery.arcticmodal: Uncorrect call");var b=a.data("arcticmodal");if(b.overlay.block.hide(),b.container.block.hide(),n("BODY").append(b.overlay.block),n("BODY").append(b.container.block),b.beforeOpen(b,a),a.trigger("beforeOpen"),"hidden"!=b.wrap.css("overflow")){b.wrap.data("arcticmodalOverflow",b.wrap.css("overflow"));var c=b.wrap.outerWidth(!0);b.wrap.css("overflow","hidden");var d=b.wrap.outerWidth(!0);d!=c&&b.wrap.css("marginRight",d-c+"px")}return p.not(a).each(function(){var a=n(this).data("arcticmodal");a.overlay.block.hide()}),q.transition(b.overlay.block,"show",1*")),b.overlay.block.remove(),b.container.block.remove(),a.data("arcticmodal",null),n(".arcticmodal-container").length||(b.wrap.data("arcticmodalOverflow")&&b.wrap.css("overflow",b.wrap.data("arcticmodalOverflow")),b.wrap.css("marginRight",0))}),"ajax"==b.type&&b.ajax_request.abort(),p=p.not(a))})},setDefault:function(b){n.extend(!0,a,b)}};n(function(){a.wrap=n(document.all&&!document.querySelector?"html":"body")}),n(document).bind("keyup.arcticmodal",function(d){var a=p.last();if(a.length){var b=a.data("arcticmodal");b.closeOnEsc&&27===d.keyCode&&a.arcticmodal("close")}}),n.arcticmodal=n.fn.arcticmodal=function(a){return e[a]?e[a].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof a&&a?void n.error("jquery.arcticmodal: Method "+a+" does not exist"):q.init.apply(this,arguments)}}(jQuery)}var debugMode="undefined"!=typeof debugFlatPM&&debugFlatPM,duplicateMode="undefined"!=typeof duplicateFlatPM&&duplicateFlatPM,countMode="undefined"!=typeof countFlatPM&&countFlatPM;document["wri"+"te"]=function(a){let b=document.createElement("div");jQuery(document.currentScript).after(b),flatPM_setHTML(b,a),jQuery(b).contents().unwrap()};function flatPM_sticky(c,d,e=0){function f(){if(null==a){let b=getComputedStyle(g,""),c="";for(let a=0;a=b.top-h?b.top-h{const d=c.split("=");return d[0]===a?decodeURIComponent(d[1]):b},""),c=""==b?void 0:b;return c}function flatPM_testCookie(){let a="test_56445";try{return localStorage.setItem(a,a),localStorage.removeItem(a),!0}catch(a){return!1}}function flatPM_grep(a,b,c){return jQuery.grep(a,(a,d)=>c?d==b:0==(d+1)%b)}function flatPM_random(a,b){return Math.floor(Math.random()*(b-a+1))+a}