Hid на простых периферийных шинах

Иллюстрации

Показать все

Изобретение относится к интерфейсам взаимодействия между пользователем и вычислительными устройствами. Технический результат заключается в повышении удобства интеграции периферийных устройств с внутренним соединением от сторонних производителей и поставщиков аппаратного обеспечения, соответствующие драйверы которых имеют различные интерфейсы. Технический результат достигается за счет простой периферийной шины (SPB), выполненной с возможностью передачи данных между компонентами в вычислительной системе, причем простая периферийная шина выполнена как одна из шины для соединения интегральных схем и последовательной периферийной интерфейсной шины данных, а также за счет периферийных датчиков, реализованных с интерфейсом HID SPB, причем каждый из периферийных датчиков выполнен с возможностью обеспечения взаимодействия периферийного устройства с вычислительной системой посредством простой периферийной шины в формате данных HID. 2 н. и 8 з.п. ф-лы, 5 ил.

Реферат

Пользовательские устройства, такие как сотовые телефоны, медиапроигрыватели и планшетные компьютеры, обычно предусматривают платформу для периферийных устройств, которые имеют внутреннее соединение посредством простой периферийной шины (SPB), такой как шина для соединения интегральных схем (двухпроводная интерфейсная шина I2C) и/или последовательная периферийная интерфейсная (SPI) шина. Однако эти простые периферийные шины не имеют установленных стандартов для функционирования устройств, таких как дисплей с сенсорным экраном, клавиатура, устройство ввода «мышь», датчики и другие устройства уровня HID. Производители этих периферийных устройств обычно обеспечивают составляющие собственность драйверы для периферийных устройств, поскольку не существует стандартного протокола для этих устройств уровня HID, с помощью которого они осуществляли бы обмен данными по простой периферийной шине. Пользовательская система может включать в себя периферийные устройства с внутренним соединением от нескольких различных сторонних производителей и поставщиков аппаратного обеспечения, и соответствующие драйверы имеют различные интерфейсы, которые могут вызывать трудности интеграции в систему, вызывать недостатки качества работы системы и проблемы стабильности и/или ограничивать возможность выполнения объединенных обновлений системных драйверов и проверок драйверов.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

Настоящее раскрытие вводит упрощенные концепции HID на простых периферийных шинах, и эти концепции далее описаны ниже в разделе «Осуществление изобретения» и/или показаны на чертежах. Настоящее раскрытие не следует рассматривать как описывающее существенные признаки заявляемого объекта патентования или использовать для определения или ограничения объема заявляемого объекта патентования.

Описаны варианты выполнения HID на простых периферийных шинах. В вариантах выполнения периферийный датчик принимает входные данные от периферийного устройства, и периферийный датчик реализует интерфейс HID SPB для осуществления взаимодействия периферийного устройства с вычислительной системой посредством простой периферийной шины (SPB) в формате данных HID. Данные передают в виде структур данных HID по простой периферийной шине, которая может быть шиной данных I2C, последовательной периферийной интерфейсной (SPI) шиной данных или простой периферийной шиной другого типа. Периферийный датчик также может принимать данные расширения для составляющей собственность функции периферийного устройства и передавать входные данные от периферийного устройства и данные расширения по простой периферийной шине в вычислительную систему. Периферийный датчик может указывать вычислительной системе, что периферийное устройство является устройством, совместимым с HID. Периферийный датчик также может определять конфигурацию периферийного устройства и передавать данные о конфигурации из вычислительной системы в периферийное устройство. Передача данных между периферийным устройством и вычислительной системой является двунаправленной через периферийный датчик по простой периферийной шине. В качестве альтернативы, передача данных между периферийным датчиком и вычислительной системой может быть двунаправленной, в то время как передача данных между периферийным датчиком и периферийным устройством является однонаправленной.

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

Фиг. 1 иллюстрирует примерную систему, в которой могут быть реализованы варианты выполнения HID на простых периферийных шинах;

Фиг. 2 иллюстрирует примерную однокристальную систему (SoC), в которой могут быть реализованы варианты выполнения HID на простых периферийных шинах;

Фиг. 3 иллюстрирует примерный(е) способ(ы) HID на простых периферийных шинах согласно одному или более вариантам выполнения;

Фиг. 4 иллюстрирует примерный(е) способ(ы) HID на простых периферийных шинах согласно одному или более вариантам выполнения;

Фиг. 5 иллюстрирует различные компоненты примерного устройства, которое может реализовывать варианты выполнения HID на простых периферийных шинах.

ПОДРОБНОЕ ОПИСАНИЕ

Описаны варианты выполнения HID на простых периферийных шинах, которые обеспечивают протокол для осуществления устройствами HID обмена данными с вычислительным устройством по простой периферийной шине (SPB), такой как шина данных для связи интегральных схем (двухпроводная интерфейсная шина I2C), последовательная периферийная интерфейсная (SPI) шина данных или простая периферийная шина другого типа. Интерфейс HID SPB реализован в периферийных датчиках вместе с приложением расширения для обеспечения взаимодействия датчиков и/или периферийных устройств с вычислительной системой. В вариантах выполнения периферийный датчик может быть реализован в виде датчика, такого как датчик температуры, акселерометр, гироскоп, компас или датчик другого типа. В альтернативных вариантах выполнения периферийные датчики могут быть реализованы с возможностью обеспечения взаимодействия периферийных устройств с вычислительной системой по простой периферийной шине (SPB) в формате данных HID. Периферийные устройства, взаимодействие которых с системой обеспечивается посредством периферийного датчика, могут включать в себя сенсорную панель, такую как сенсорный дисплей планшетного компьютера, и компьютерные устройства ввода, такие как клавиатура или устройство ввода «мышь». Интерфейс HID SPB в периферийном датчике обеспечивает взаимодействие датчика и/или периферийного устройства с вычислительной системой.

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

Фиг. 1 иллюстрирует примерную систему 100, в которой могут быть реализованы варианты выполнения HID на простых периферийных шинах. Система включает в себя вычислительную систему 102, которая может быть реализована в вычислительном устройстве любого типа, таком как компьютер, сервер, устройство связи, портативное устройство, планшетный компьютер, сотовый телефон, навигационное устройство, медиапроигрыватель, игровое устройство и т.п. В вариантах реализации вычислительная система может представлять собой однокристальную систему (SoC), как описано в отношении примера, показанного на Фиг. 2, реализованную в персональном компьютере архитектуры Х86, либо может относиться к любому другому типу структуры вычислительной системы. Вычислительное устройство, включающее в себя вычислительную систему 102, может быть реализовано с различными компонентами, такими как один или более процессоров и запоминающих устройств, а также с любым числом и сочетанием различающихся компонентов, как далее описано в отношении примерного устройства, показанного на Фиг. 5. Кроме того, вычислительная система может быть реализована с дополнительными компонентами, описанными далее в отношении примерной SoC, показанной на Фиг. 2.

Вычислительная система 102 включает в себя простую периферийную шину (SPB) 104, такую как шина данных I2C, последовательная периферийная интерфейсная (SPI) шина данных или маломощная простая периферийная шина другого типа. Примерная система 100 также включает в себя периферийные датчики, представленные периферийным датчиком 106, который реализует интерфейс 108 HID SPB вместе с приложением 110 расширения. Интерфейс HID SPB может обеспечивать взаимодействие датчиков и периферийных устройств (например, устройств взаимодействия с человеком (HID)) с вычислительной системой. В вариантах выполнения периферийный датчик 112 может быть реализован в виде датчика, такого как датчик температуры, акселерометр, гироскоп, компас или датчик другого типа. Интерфейс 108 HID SPB периферийного датчика 112 обеспечивает взаимодействие периферийного датчика с вычислительной системой по простой периферийной шине.

В альтернативных вариантах выполнения интерфейс 108 HID SPB периферийного датчика может быть реализован с возможностью обеспечения взаимодействия периферийных устройств с вычислительной системой 102 по простой периферийной шине (SPB) 104 в формате данных HID. Данные передают по простой периферийной шине в виде структур данных HID. Например, периферийный датчик 114 обеспечивает взаимодействие сенсорной панели 116, такой как сенсорный дисплей планшетного компьютера, с вычислительной системой посредством простой периферийной шины. В другом примере, периферийный датчик 118 обеспечивает взаимодействие компьютерных устройств ввода, таких как клавиатура или устройство ввода «мышь», с вычислительной системой посредством простой периферийной шины.

Периферийный датчик 118 также может обеспечивать взаимодействие датчика с вычислительной системой посредством простой периферийной шины. Например, периферийный датчик реализован с возможностью переноса выходных данных датчика через интерфейс I2C в форме данных HID. Производитель устройства может реализовать устройство (например, сенсорную панель, устройства ввода, датчики и т.п.) с возможностью обеспечения его функциональности через HID. Например, может быть реализован контроллер сенсорного экрана с возможностью считывания необработанных данных с датчиков прикосновения, которые могут быть аналоговыми датчиками, и формирования цифровых сигналов, передаваемых в CPU. Контроллеры таких типов могут быть модифицированы, чтобы поставлять данные о прикосновении в CPU по протоколу HID.

В данном примере программный стек в вычислительной системе 102 включает в себя стек 122 датчиков, стек 124 ввода и программный стек 126 HID. Вычислительная система также включает в себя драйвер 128 SPB, а также драйвер 130 контроллера I2C и драйвер 132 контроллера SPI. В вариантах выполнения каждый периферийный датчик 106 (например, периферийные датчики 112, 114 и 118) включает в себя интерфейс 108 HID SPB, и драйвер SPB, который коррелирует с контроллером I2C, реализован с возможностью передачи данных HID между периферийным датчиком и программным стеком HID.

Интерфейс 108 HID SPB и приложение 110 расширения периферийного датчика 106 могут быть реализованы в виде машиноисполняемых инструкций, таких как микропрограммное обеспечение, которые являются исполняемыми для реализации вариантов выполнения HID на простых периферийных шинах. В качестве альтернативы или дополнения, интерфейс HID SPB может быть реализован в аппаратном обеспечении. В вариантах выполнения приложение расширения периферийного датчика, реализованного в виде датчика (например, датчика температуры, акселерометра, гироскопа, компаса и т.п.), обеспечивает взаимодействие между данными расширения для составляющих собственность функций и/или элементов датчика с вычислительной системой 102 посредством простой периферийной шины (SPB) 104. Подобным образом, приложение расширения периферийного датчика реализовано с возможностью обеспечения взаимодействия составляющих собственность функций и/или элементов периферийного устройства, такого как сенсорная панель, с вычислительной системой посредством простой периферийной шины.

Интерфейс 108 HID SPB устанавливает стандарты работоспособности периферийного устройства. Сторонний, независимый поставщик аппаратного обеспечения может обеспечивать взаимодействие периферийного устройства посредством интерфейса 108 HID SPB периферийного датчика 106, но также может и дифференцировать и реализовывать составляющие собственность функции и/или признаки посредством приложения 110 расширения периферийного датчика.

В вариантах выполнения интерфейс 108 HID SPB периферийного датчика 106 реализован с возможностью указания (например, идентификации, обеспечения, перевода, перечисления и т.п.) вычислительной системе 102, что периферийное устройство и/или датчик является устройством, совместимым с HID. Периферийный датчик может также определять конфигурацию периферийного устройства (например, из структур данных, дескрипторов отчетов и т.п.), принимать данные конфигурации от вычислительной системы для конфигурирования датчика, и/или передавать данные конфигурации из вычислительной системы в периферийное устройство или датчик. Передача данных HID между периферийным устройством или датчиком и вычислительной системой является двунаправленной через периферийный датчик по простой периферийной шине (SPB). Двунаправленная передача может быть реализована с возможностью использования механизмов опроса и/или механизмов, основанных на прерываниях. В качестве альтернативы, передача данных между периферийным датчиком и вычислительной системой может быть двунаправленной, в то время как передача данных между периферийным датчиком и периферийным устройством является однонаправленной.

На Фиг. 2 проиллюстрирована примерная однокристальная система (SoC) 200, которая может реализовывать различные варианты выполнения HID на простых периферийных шинах, описанные в настоящем документе. SoC может быть реализована в стационарном или мобильном устройстве, таком как любое из пользовательского устройства, электронного устройства, устройства связи, навигационного устройства, устройства мультимедиа, вычислительного устройства и/или любого типа электронного устройства, или их сочетание. SoC 200 может быть интегрирована с электронной схемой, микропроцессором, запоминающим устройством, логическим управляющим устройством ввода-вывода (I/O), интерфейсами и компонентами передачи данных, а также другим аппаратным обеспечением, микропрограммным обеспечением и/или программным обеспечением для реализации вычислительного устройства.

В данном примере SoC 200 интегрирована с микропроцессором 202 (например, любым из микроконтроллера или цифрового сигнального процессора) и логическим управляющим устройством 204 ввода-вывода (I/O) (например, включая электронные схемы). SoC 200 также включает в себя контроллер 206 запоминающего устройства и запоминающее устройство 208, такое как любой тип энергонезависимого запоминающего устройства и/или любое подходящее электронное устройство хранения данных. SoC также может включать в себя различное микропрограммное обеспечение и/или программное обеспечение, такое как операционная система 210, которая поддерживается запоминающим устройством и выполняется микропроцессором.

SoC 200 включает в себя интерфейс 212 устройства для взаимодействия с устройством или другим периферийным компонентом, например, при установке в вычислительное устройство. SoC 200 также включает в себя интегрированную шину 214 данных, которая соединяет различные компоненты SoC для передачи данных между компонентами. Шина данных в SoC может быть реализована в виде простой периферийной шины (SPB), такой как шина данных I2C или последовательная периферийная интерфейсная (SPI) шина данных, а также может быть реализована в виде одной из различных структур шины и/или архитектур шины или их сочетания.

В вариантах выполнения HID на простых периферийных шинах SoC 200 включает в себя контроллер 216 I2C, который обеспечивает взаимодействие одного или более периферийных датчиков 218, таких как описанные в отношении различных примеров периферийных датчиков, показанных на Фиг. 1. Периферийный датчик реализует интерфейс 220 HID SPB вместе с приложением 222 расширения. Примеры интерфейса HID SPB и приложения расширения, а также соответствующая функциональность и элементы, описаны в отношении соответствующих компонентов, показанных на Фиг. 1. В качестве альтернативы или дополнения, компоненты периферийных датчиков могут быть реализованы в виде аппаратного обеспечения, микропрограммного обеспечения, фиксированной логической схемы или любого их сочетания, которое реализовано в соединении с логическим управляющим устройством 204 I/O и/или другими схемами обработки и управления SoC или периферийных датчиков.

Примерные способы 300 и 400 описаны со ссылкой на соответствующие Фиг. 3 и 4 в соответствии с одним или более вариантами выполнения HID на простых периферийных шинах. Любые из служб, функций, способов, процедур, компонентов и модулей, описанных в настоящем документе, могут быть в общем реализованы с использованием программного обеспечения, микропрограммного обеспечения, аппаратного обеспечения (например, фиксированной логической схемы), ручной обработки или любого их сочетания. Программная реализация представляет собой программный код, который при его выполнении процессором компьютера выполняет определенные задачи. Примерные способы могут быть описаны в общем в контексте машиноисполняемых инструкций, которые могут включать в себя программное обеспечение, приложения, подпрограммы, программы, объекты, компоненты, структуры данных, процедуры, модули, функции и тому подобное. Программный код может быть сохранен на одном или более устройств машиночитаемых носителей, локальных и/или удаленных по отношению к процессору компьютера. Способы также могут быть осуществлены в распределенной вычислительной среде посредством множества вычислительных устройств. Кроме того, признаки, описанные в настоящем документе, являются независимыми от платформы и могут быть реализованы на различных вычислительных платформах, имеющих различные процессоры.

На Фиг. 3 проиллюстрирован(ы) примерный(ые) способ(ы) 300 HID на простых периферийных шинах, и он(и) описан(ы) в отношении периферийного датчика, реализованного в виде контроллера периферийного устройства. Порядок, в котором описаны этапы способа, не следует истолковывать в качестве ограничения, и любое количество описанных этапов способа может быть объединено в любом порядке для реализации способа или альтернативного способа.

На этапе 302 принимают входные данные от периферийного устройства в периферийном датчике, который реализует интерфейс HID SPB для обеспечения взаимодействия периферийного устройства с вычислительной системой посредством простой периферийной шины (SPB) в формате данных HID. Например, периферийный датчик 114 (Фиг. 1) принимает входные данные от сенсорной панели 116, и интерфейс 108 HID SPB периферийного датчика 114 обеспечивает взаимодействие сенсорной панели с вычислительной системой 102 посредством простой периферийной шины (SPB) 104 в формате данных HID. Подобным образом, периферийный датчик 118 принимает входные данные от устройства 120 ввода, такого как клавиатура или устройство ввода «мышь», и интерфейс 108 HID SPB периферийного датчика 118 обеспечивает взаимодействие устройства ввода с вычислительной системой 102 посредством простой периферийной шины в формате данных HID. Простая периферийная шина 104 может быть реализована в виде шины данных I2C, последовательной периферийной интерфейсной (SPI) шины данных или в виде маломощной простой периферийной шины любого другого типа, в которой данные передаются в виде структур данных HID.

На этапе 304 в периферийном датчике принимают данные расширения для составляющей собственность функции периферийного устройства. Например, периферийный датчик 114 принимает данные расширения для составляющих собственность функций и/или элементов сенсорной панели 116, и приложение 110 расширения периферийного датчика 114 обеспечивает взаимодействие данных расширения с вычислительной системой 102 посредством простой периферийной шины (SPB) 104. Подобным образом, периферийный датчик 118 принимает данные расширения для составляющих собственность функций и/или элементов устройства 120 ввода, и приложение 110 расширения периферийного датчика 118 обеспечивает взаимодействие данных расширения с вычислительной системой посредством простой периферийной шины.

На этапе 306 входные данные от периферийного устройства и/или данные расширения передают по простой периферийной шине (SPB) в формате данных HID в вычислительной системе. Например, периферийный датчик 114 передает входные данные, принятые от сенсорной панели 116 и/или передает данные расширения для составляющих собственность функций и/или элементов сенсорной панели по простой периферийной шине (SPB) 104 в формате данных HID в вычислительной системе 102. Подобным образом, периферийный датчик 118 передает входные данные, принимаемые от устройства 120 ввода, и/или передает данные расширения для составляющих собственность функций и/или элементов устройства ввода по простой периферийной шине в формате данных HID в вычислительной системе.

На этапе 308 периферийное устройство идентифицируют для вычислительной системы как устройство, совместимое с HID, и на этапе 310 определяют конфигурацию периферийного устройства. Например, периферийный датчик 114 идентифицирует сенсорную панель 116 для вычислительной системы 102 как устройство, совместимое с HID, и определяет информацию конфигурации для сенсорной панели. Подобным образом, периферийный датчик 118 идентифицирует устройство 120 ввода для вычислительной системы как устройство, совместимое с HID, и определяет информацию конфигурации для устройства ввода. Периферийный датчик поддерживает совместимость приложения HID с периферийным устройством.

На этапе 312 данные конфигурации из вычислительной системы передают в периферийное устройство. Например, периферийный датчик 114 принимает данные конфигурации из вычислительной системы 102 и передает данные конфигурации в сенсорную панель 116. Подобным образом, периферийный датчик принимает данные конфигурации из вычислительной системы и передает данные конфигурации в устройство 120 ввода. Передача данных между периферийным устройством и вычислительной системой является двунаправленной через периферийный датчик по простой периферийной шине с использованием протоколов отчетов HID. В качестве альтернативы, передача данных между периферийным датчиком и вычислительной системой может быть двунаправленной, в то время как передача данных между периферийным датчиком и периферийным устройством является однонаправленной.

На этапе 314 данные HID передают между программным стеком HID и периферийным датчиком. Например, драйвер 128 SPB передает данные HID в вычислительной системе 102 между периферийным датчиком 114 и программным стеком 126 HID. Подобным образом, драйвер SPB передает данные HID в вычислительной системе между периферийным датчиком 118 и программным стеком HID.

На Фиг. 4 проиллюстрирован(ы) примерный(е) способ(ы) 400 HID на простых периферийных шинах, и он(и) описан(ы) в отношении периферийного датчика, реализованного в виде датчика, такого как датчик температуры, акселерометр, гироскоп, компас и т.п. Порядок, в котором описаны этапы способа, не следует истолковывать в качестве ограничения, и любое число описанных этапов способа может сочетаться в любом порядке для реализации способа или альтернативного способа.

На этапе 402 формируют данные датчика в периферийном датчике, реализующем интерфейс HID SPB для обеспечения взаимодействия периферийного датчика с вычислительной системой посредством простой периферийной шины (SPB) в формате данных HID. Например, периферийный датчик 112 (Фиг. 1) формирует данные датчика, и интерфейс 108 HID SPB периферийного датчика 112 обеспечивает взаимодействие датчика с вычислительной системой 102 посредством простой периферийной шины (SPB) 104 в формате данных HID. Простая периферийная шина 104 может быть реализована в виде шины данных I2C, последовательной периферийной интерфейсной (SPI) шины данных или в виде маломощной простой периферийной шины любого другого типа, по которой данные передаются в виде структур данных HID.

На этапе 404 данные датчика передают по простой периферийной шине (SPB) в вычислительную систему в формате данных HID. Например, периферийный датчик 112 передает данные датчика по простой периферийной шине (SPB) 104 в вычислительную систему 102 в формате данных HID. На этапе 406 передают в вычислительную систему данные расширения для составляющей собственность функции периферийного датчика. Например, периферийный датчик 112 передает в вычислительную систему данные расширения для составляющих собственность функций и/или элементов датчика по простой периферийной шине в формате данных HID.

На этапе 408 периферийный датчик идентифицируют для вычислительной системы как устройство, совместимое с HID, и на этапе 410 передают в вычислительную систему информацию конфигурации. Например, периферийный датчик 112 идентифицирует датчик для вычислительной системы 102 как устройство, совместимое с HID, и передает информацию конфигурации для датчика в вычислительную систему.

На этапе 412 данные конфигурации принимают из вычислительной системы для конфигурирования периферийного датчика. Например, периферийный датчик 112 принимает данные конфигурации из вычислительной системы 102 для конфигурирования или инициализации датчика. Передача данных между датчиком и вычислительной системой является двунаправленной по простой периферийной шине (SPB). На этапе 414 данные HID передают между программным стеком HID и периферийным датчиком. Например, драйвер 128 передает данные HID в вычислительной системе 102 между периферийным датчиком 112 и программным стеком 126 HID.

Фиг. 5 иллюстрирует различные компоненты примерного устройства 500, которые могут быть реализованы в виде любых из устройств или служб и программного обеспечения, реализуемого устройствами, описанными в отношении предшествующих Фиг. 1-4. В вариантах выполнения устройство может быть реализовано в виде одного или сочетания из стационарного или мобильного устройства, в любой форме пользовательского устройства, компьютера, сервера, портативного устройства, абонентского устройства, устройства связи, телефона, навигационного устройства, телевизионного устройства, бытового прибора, игрового устройства, медиапроигрывателя, камеры и/или электронного устройства. Также устройство может быть ассоциировано с пользователем (т.е. лицом) и/или структурой, которые используют устройство, таким образом, что устройство описывает логические устройства, которые включают в себя пользователей, программное обеспечение, микропрограммное обеспечение, аппаратное обеспечение и/или сочетание устройств.

Устройство 500 включает в себя устройства 502 связи, которые обеспечивают проводную и/или беспроводную передачу данных 504 устройства, таких как принятые данные, принимаемые данные, данные, запланированные для широковещательной передачи, пакеты данных и т.п. Принятые данные или другое содержимое, относящееся к устройству, может включать в себя установки конфигурации устройства, медиасодержимое, сохраненное в устройстве, и/или информацию, ассоциированную с пользователем устройства. Медиасодержимое, сохраненное в устройстве, может включать в себя любой вид аудиоданных, видеоданных и/или данных изображений. Устройство включает в себя один или более входов 506 данных, посредством которых могут быть приняты любые виды данных, медиасодержимого и/или входных данных, таких как выбираемые пользователем входные данные, сообщения, связь, музыка, телевизионное содержимое, записанное видеосодержимое и любой другой тип аудиоданных, видеоданных и/или данных изображений, принятых из любого источника содержимого и/или данных.

Устройство 500 также включает в себя интерфейсы 508 передачи данных, такие как любой один или более из последовательного, параллельного, сетевого или беспроводного интерфейса. Интерфейсы передачи данных обеспечивают соединения и/или соединения передачи данных между устройством и сетью передачи данных, посредством которых другие электронные, вычислительные устройства и устройства связи осуществляют обмен данными с упомянутым устройством.

Устройство 500 включает в себя один или более процессоров 510 (например, любые из микропроцессоров, контроллеров и тому подобного), которые обрабатывают различные машиноисполняемые инструкции для управления работой устройства. В качестве альтернативы или дополнения, устройство может быть реализовано с любым одним или сочетанием из программного обеспечения, аппаратного обеспечения, микропрограммного обеспечения или фиксированной логической схемы, которая реализована в связи со схемами обработки и управления, которые в общем идентифицируются позицией 512. Хотя это и не показано, устройство может включать в себя системную шину или систему передачи данных, которая соединяет различные компоненты в устройстве. Системная шина может включать в себя любое одно или сочетание из различных структур шины, таких как шина памяти или контроллер запоминающего устройства, периферийная шина, универсальная последовательная шина, и/или процессор или локальную шину, которые используют любую из различных архитектур шины.

Устройство 500 также включает в себя одно или более запоминающих устройств 514 (например, машиночитаемый носитель), которые позволяют хранить данные, такие как оперативное запоминающее устройство (RAM), энергонезависимую память (например, постоянное запоминающее устройство (ROM), флэш-память и т.п.) и устройство дискового накопителя. Устройство дискового накопителя может быть реализовано в виде любого типа магнитного или оптического устройства накопителя, такого как накопитель на жестком диске, записываемый и/или перезаписываемый диск и тому подобное. Устройство также может включать в себя устройство съемного накопителя.

Машиночитаемые носители могут представлять собой любой доступный носитель или носители, к которым может осуществить доступ вычислительное устройство. В качестве примера, но не ограничения, машиночитаемые носители могут содержать запоминающие носители и среды связи. Запоминающие носители включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или технологией хранения информации, такой как машиночитаемые команды, структуры данных, программные модули или другие данные. Запоминающие носители включают в себя, не ограничиваясь, RAM, ROM, EEPROM, флэш-память или запоминающие устройства, основанные на других технологиях, CD-ROM, цифровые универсальные диски (DVD) или другие оптические носители, магнитные кассеты, магнитную ленту, дисковые магнитные носители или другие магнитные запоминающие устройства, или любое другое средство, которое может быть использовано для хранения информации и к которому может осуществить доступ компьютер.

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

Запоминающее устройство 514 обеспечивает механизмы хранения данных для хранения данных 504 устройства, других типов информации и/или данных, и различных приложений 516 устройства. Например, операционную систему 518 можно сохранять в запоминающем устройстве в виде программного приложения и выполнять в процессорах. Приложения устройства также могут включать в себя диспетчер устройств, такой как любая форма управляющего приложения, программного приложения, модуля обработки сигналов и управления, кода, который является внутренним для конкретного устройства, абстрактного уровня аппаратных средств для конкретного устройства и так далее. В данном примере устройство включает в себя один или более периферийных датчиков 520, которые реализуют варианты выполнения HID на простых периферийных шинах, описанные в настоящем документе.

Устройство 500 также включает в себя систему 522 обработки аудио- и/или видеоданных, которая формирует аудиоданные для аудиосистемы 524 и/или формирует данные отображения для системы 526 отображения. Аудиосистема и/или система отображения может включать в себя любые устройства, которые обрабатывают, отображают и/или другим образом воспроизводят аудиоданные, видеоданные, данные отображения и/или данные изображений. Данные отображения и аудиосигналы могут быть переданы в аудиоустройство и/или в устройство отображения по RF (радиочастотному) соединению, соединению стандарта S-video, соединению для композитного видеосигнала, соединению для компонентного видеосигнала, DVI (цифровому видеоинтерфейсу), аналоговому аудиосоединению или любому другому соединению передачи данных. В вариантах реализации аудиосистема и/или система отображения являются внешними компонентами по отношению к устройству. В качестве альтернативы, аудиосистема и/или система отображения являются интегрированными компонентами примерного устройства.

Хотя варианты выполнения HID на простых периферийных шинах были описаны терминами, характерными для признаков и/или способов, сущность приложенной формулы изобретения не ограничена конкретными описанными признаками или способами. Напротив, конкретные признаки и способы раскрыты в качестве примерных вариантов реализации HID на простых периферийных шинах.

1. Система для взаимодействия периферийного устройства с вычислительной системой, содержащая:простую периферийную шину (SPB), выполненную с возможностью передачи данных между компонентами в вычислительной системе, причем простая периферийная шина выполнена как одна из шины для соединения интегральных схем (I2C) и последовательной периферийной интерфейсной (SPI) шины данных; ипериферийные датчики, реализованные с интерфейсом HID - устройство взаимодействия с человеком - шины SPB, причем каждый из периферийных датчиков выполнен с возможностью обеспечения взаимодействия периферийного устройства с вычислительной системой посредством простой периферийной шины в формате данных HID.

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

3. Система по п. 1, в которой периферийный датчик дополнительно выполнен с возможностью указания вычислительной системе, что периферийное устройство является устройством, совместимым с HID, и определения конфигурации периферийного устройства.

4. Система по п. 1, в которой периферийный датчик дополнительно выполнен с возможностью двунаправленной передачи данных от периферийного устройства в вычислительную систему и от вычислительной системы в периферийное устройство с использованием протоколов отчетов HID.

5. Система по п. 1, в которой периферийный датчик дополнительно выполнен с возможностью поддержания совместимости приложения HID с периферийным устройством.

6. Система по п. 1, в которой периферийные датчики дополнительно выполнены с возможностью передачи данных посредством простых периферийных шин в виде структур данных HID.

7. Система по п. 1, дополнительно содержащая драйвер SPB, выполненный с возможностью передачи данных HID между периферийным датчиком и программным стеком HID.

8. Реализуе