KR20140020925A - 간단한 주변 버스를 통한 hid - Google Patents

간단한 주변 버스를 통한 hid Download PDF

Info

Publication number
KR20140020925A
KR20140020925A KR1020137024513A KR20137024513A KR20140020925A KR 20140020925 A KR20140020925 A KR 20140020925A KR 1020137024513 A KR1020137024513 A KR 1020137024513A KR 20137024513 A KR20137024513 A KR 20137024513A KR 20140020925 A KR20140020925 A KR 20140020925A
Authority
KR
South Korea
Prior art keywords
peripheral
hid
data
sensor
computing system
Prior art date
Application number
KR1020137024513A
Other languages
English (en)
Inventor
퍼도쉬 케이 베사니아
어빈드 알 아이어
랜달 이 아울
데이비드 아브자리안
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20140020925A publication Critical patent/KR20140020925A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8015One dimensional arrays, e.g. rings, linear arrays, buses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer

Abstract

간단한 주변 버스를 통한 HID의 실시예에서, 주변 센서는 주변 장치로부터 입력을 수신하고, 주변 센서는 주변 장치를 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 장치와 인터페이싱시키기 위한 HID SPB 인터페이스를 구현한다. 주변 센서는 또한 주변 장치의 소유 기능을 위한 확장가능성 데이터를 수신할 수 있고, 컴퓨팅 시스템에서 주변 장치로부터의 입력 및 확장가능성 데이터를 간단한 주변 버스를 통해 통신할 수 있다. 이와 달리 또는 그에 덧붙여, 주변 센서는 센서 데이터를 생성할 수 있고 HID SPB 인터페이스는 간단한 주변 버스(SPB)를 통해 주변 센서를 컴퓨팅 시스템과 인터페이싱시킬 수 있다. 주변 센서는 주변 센서의 소유 기능을 위한 확장가능성 데이터 및 센서 데이터를 간단한 주변 버스를 통해 HID 데이터 포맷으로 컴퓨팅 시스템으로 통신할 수 있다.

Description

간단한 주변 버스를 통한 HID{HID OVER SIMPLE PERIPHERAL BUSES}
휴대용 전화기, 미디어 플레이어, 및 태블릿 컴퓨터와 같은 소비자 장치는 전형적으로 인터-인테그레이티드(inter-integrated) 회로(I2C 2-와이어 인터페이스 버스) 및/또는 직렬 주변 인터페이스(serial peripheral interface: SPI) 버스와 같은 간단한 주변 버스(simple peripheral bus: SPB)를 통해 내부적으로 연결되는 주변 장치들을 위한 플랫폼을 가능하게 한다. 그러나, 이들 간단한 주변 버스들은 터치 스크린 디스플레이, 키보드, 마우스 입력 장치, 센서 및 그 밖의 다른 HID 클래스 장치와 같은 장치들을 구동하기 위한 표준을 정의하지 않았다. 이들 주변 장치들의 제조자는 일반적으로 주변 장치들에 대한 소유 드라이버(proprietary drivers)를 제공하는데, 그 이유는 이들 HID 클래스 장치들이 간단한 주변 버스를 통해 통신할 수 있는 표준 프로토콜이 존재하지 않기 때문이다. 소비자 시스템은 몇몇 다른 제3자 제조자 및 하드웨어 판매사로부터의 내부적으로 연결된 주변장치를 포함할 수 있고, 대응하는 드라이버는 시스템 통합 도전을 제기할 수 있고, 시스템 품질 결함 및 안전성 문제를 야기할 수 있으며, 및/또는 통일된 시스템 드라이버 업데이트 및 드라이버 검증을 수행할 수 있는 능력을 제한할 수 있는 상이한 인터페이스들을 갖는다.
본 요약은 간단한 주변 버스를 통한 HID의 간략화한 개념을 제공하며, 이 개념은 이하의 상세한 설명에 더 기술되고 및/또는 도면에 도시되어 있다. 본 요약은 본 발명의 필수적 특징을 설명하려는 것은 아니며, 또한 본 발명의 범주를 결정 또는 한정하려는 것도 아니다.
간단한 주변 버스를 통한 HID의 실시예가 설명된다. 실시예에서, 주변 센서는 주변 장치로부터 입력을 수신하고, 주변 센서는 주변 장치를 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 장치와 인터페이싱시키기 위한 HID SPB 인터페이스를 구현한다. 데이터는 I2C 데이터 버스, 직렬 주변 인터페이스(SPI) 데이터 버스, 또는 임의의 다른 유형의 간단한 주변 버스일 수 있는 간단한 주변 버스를 통해 HID 데이터 구조로서 통신된다. 주변 센서는 또한 주변 장치의 소유 기능을 위한 확장가능성 데이터를 수신할 수 있고, 컴퓨팅 시스템에서 주변 장치로부터의 입력 및 확장가능성 데이터를 간단한 주변 버스를 통해 통신할 수 있다. 주변 센서는 주변 장치가 컴퓨팅 시스템에 대한 HID 호환가능 장치임을 나타낼 수 있다. 주변 센서는 또한 주변 장치의 구성을 판정할 수 있고, 구성 데이터를 컴퓨팅 시스템으로부터 주변 장치로 통신할 수 있다. 주변 장치와 컴퓨팅 시스템 간의 데이터 통신은 간단한 주변 버스를 통해 주변 센서를 경유하는 양방향 통신이다. 이와 달리, 주변 센서와 컴퓨팅 시스템 간의 데이터 통신은 양방향일 수 있는 반면, 주변 센서와 주변 장치 간의 통신은 단방향일 수 있다.
다른 실시예에서, 주변 센서는 센서 데이터를 생성할 수 있고 주변 센서의 HID SPB 인터페이스는 간단한 주변 버스(SPB)를 통해 주변 센서를 컴퓨팅 시스템과 인터페이싱시킬 수 있다. 주변 센서는 주변 센서의 소유 기능을 위한 확장가능성 데이터 및 센서 데이터를 간단한 주변 버스를 통해 HID 데이터 포맷으로 컴퓨팅 시스템으로 통신할 수 있다. 주변 센서는 센서가 컴퓨팅 시스템에 대한 HID 호환가능한 장치임을 나타낼 수 있다. 주변 센서는 또한 구성 정보를 컴퓨팅 시스템으로 통신할 수 있고, 주변 센서를 구성하기 위한 구성 데이터를 컴퓨팅 시스템으로부터 수신할 수 있다.
간단한 주변 버스를 통한 HID의 실시예가 후속하는 도면을 참조하여 설명된다. 도면에 도시되어 있는 유사한 특징 및 구성요소를 참조하기 위해 동일한 참조번호가 사용될 수 있다.
도 1은 간단한 주변 버스를 통한 HID의 실시예가 구현될 수 있는 예시적인 시스템을 나타내는 도면.
도 2는 간단한 주변 버스를 통한 HID의 실시예가 구현될 수 있는 예시적인 시스템-온-칩(SoC)을 나타내는 도면.
도 3은 하나 이상의 실시예에 따른 간단한 주변 버스를 통한 HID의 예시적인 방법(들)을 나타내는 도면.
도 4는 하나 이상의 실시예에 따른 간단한 주변 버스를 통한 HID의 예시적인 방법(들)을 나타내는 도면.
도 5는 간단한 주변 버스를 통한 HID의 실시예를 구현할 수 있는 예시적인 장치의 다양한 구성요소를 나타내는 도면.
간단한 주변 버스를 통한 HID의 실시예가 개시되며, 이 실시예는 HID 장치가 인터-인테그레이티드(inter-integrated) 회로(I2C 2-와이어 인터페이스 버스) 데이터 버스, 직렬 주변 인터페이스(SPI) 데이터 버스 또는 그 밖의 다른 유형의 간단한 주변 버스와 같은 간단한 주변 버스(SPB)를 통해 컴퓨팅 장치와 통신하는 프로토콜을 제공한다. HID SPB 인터페이스는 센서 및/또는 주변 장치를 컴퓨팅 시스템과 인터페이싱시키기 위해 확장가능성 애플리케이션과 함께 주변 센서에서 구현된다. 실시예에서, 주변 센서는 온도계, 가속도계, 자이로스코프, 컴파스와 같은 센서 또는 그 밖의 다른 센서로서 구현될 수 있다. 또 다른 실시예에서, 주변 센서는 주변 장치를 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템과 인터페이싱시키도록 구현될 수 있다. 주변 센서를 통해 인터페이싱되는 주변 장치들은 태블릿 컴퓨터 터치 스크린 디스플레이와 같은 터치 패널, 및 키보드 또는 마우스 입력 장치와 같은 컴퓨터 입력 장치를 포함할 수 있다. 주변 센서에서의 HID SPB 인터페이스는 센서 및/또는 주변 장치를 컴퓨팅 시스템과 인터페이싱시킬 수 있다.
간단한 주변 버스를 통한 HID의 특징 및 개념은 임의의 수의 상이한 장치, 시스템, 환경, 네트워크 및/또는 구성으로 구현될 수 있지만, 간단한 주변 버스를 통한 HID의 실시예는 후속하는 예시적인 장치, 시스템 및 방법의 상황에서 설명된다.
도 1은 간단한 주변 버스를 통한 HID의 실시예가 구현될 수 있는 예시적인 시스템(100)을 나타낸다. 이 시스템은 컴퓨터, 서버, 통신 장치, 휴대용 장치, 태블릿 컴퓨터, 셀룰러 폰, 네비게이션 장치, 미디어 플레이어, 게이밍 장치 등과 같은 임의의 유형의 컴퓨팅 장치에서 구현될 수 있는 컴퓨팅 시스템(102)을 포함한다. 실시예에서, 컴퓨팅 시스템은 X86-타입 PC에서 구현되는 도 2에 도시된 예를 참조하여 설명된 시스템 온 칩(SoC), 또는 임의의 다른 유형의 컴퓨팅 시스템 설계일 수 있다. 컴퓨팅 시스템(102)을 포함하는 컴퓨팅 장치는 하나 이상의 프로세서 및 메모리 장치와 같은 다양한 구성요소, 및 도 5에 도시되어 있는 예시적인 장치를 참조하여 더 설명되는 상이한 구성요소의 임의의 수 및 조합으로 구현될 수 있다. 또한, 컴퓨팅 시스템은 도 2에 도시되어 있는 예시적인 SoC를 참조하여 더 설명되는 추가적인 구성요소로 구현될 수 있다.
컴퓨팅 시스템(102)은 I2C 데이터 버스, 직렬 주변 버스(SPI) 데이터 버스 또는 그 밖의 다른 유형의 저전력 간단한 주변 버스와 같은 간단한 주변 버스(SPB)(104)를 포함한다. 예시적인 시스템(100)은 또한 확장가능성 애플리케이션(110)과 함께 HID SPB 인터페이스(108)를 구현하는 주변 센서(106)로 표현되는 주변 센서를 포함한다. HID SPB 인터페이스는 센서 및 주변 장치(예를 들어, 사람 인터페이스 장치(human interface device: HID))를 컴퓨팅 시스템과 인터페이싱시킬 수 있다. 실시예에서, 주변 센서(112)는 온도계, 가속도계, 자이로스코프, 컴파스와 같은 센서 또는 그 밖의 다른 센서로 구현될 수 있다. 주변 센서(112)의 HID SPB 인터페이스(108)는 주변 센서를 간단한 주변 버스를 통해 컴퓨팅 시스템과 인터페이싱시킨다.
또 다른 실시예에서, 주변 센서의 HID SPB 인터페이스(108)는 주변 장치를 간단한 주변 버스(SPB)(104)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템(102)과 인터페이싱시키도록 구현될 수 있다. 데이터는 간단한 주변 버스를 통해 HID 데이터 구조로서 통신된다. 예를 들어, 주변 센서(114)는 태블릿 컴퓨터 터치 스크린 디스플레이와 같은 터치 패널(116)을 간단한 주변 버스를 통해 컴퓨팅 시스템과 인터페이싱시킨다. 또 다른 예에서, 주변 센서(118)는 키보드 또는 마우스 입력 장치와 같은 입력 장치를 간단한 주변 버스를 통해 컴퓨팅 시스템과 인터페이싱시킨다.
주변 센서(118)는 또한 센서를 간단한 주변 버스를 통해 컴퓨팅 시스템과 인터페이싱시킬 수 있다. 예를 들어, 주변 센서는 센서 출력을 I2C 인터페이스를 통해 HID 데이터 형식으로 연결(bridge)하도록 구현된다. 장치 제조자는 장치(예를 들어, 터치 패널, 입력 장치, 센서 등)가 HID를 통해 그의 기능을 노출하도록 구현할 수 있다. 예를 들어, 터치 스크린 제어기는 아날로그 센서일 수 있는 미가공 터치 센서를 판독하고, CPU로 통신되는 디지털 신호를 생성하도록 구현될 수 있다. 이들 유형의 제어기는 터치 데이터를 HID 프로토콜에 따라 CPU에 노출시키도록 업데이트될 수 있다.
이 예에서, 컴퓨팅 시스템(102) 내의 소프트웨어 스택은 센서 스택(122), 입력 스택(124) 및 HID 소프트웨어 스택(126)을 포함한다. 컴퓨팅 시스템은 또한 SPB 드라이버(128) 및 I2C 제어기 드라이버(130) 및 SPI 제어기 드라이버(132)를 포함할 수 있다. 실시예에서, 각 주변 센서(106)(예를 들어, 주변 센서(112, 114, 118))는 HID SPB 인터페이스(108)를 포함하고, I2C 제어기에 상관있는 SPB 드라이버는 주변 센서와 HID 소프트웨어 스택 간에 HID 데이터를 통신하도록 구현된다.
주변 센서(106)의 HID SPB 인터페이스(108) 및 확장가능성 애플리케이션(110)은 간단한 주변 버스를 통한 HID의 실시예를 구현하도록 실행가능한 펌웨어와 같은 컴퓨터 실행가능 명령어들로 구현될 수 있다. 이와 달리, 또는 그에 덧붙여, HID SPB 인터페이스는 하드웨어로 구현될 수 있다. 실시예에서, 센서(예를 들어, 온도계, 가속도계, 자이로스코프, 컴파스 등)로 구현되는 주변 센서의 확장가능성 애플리케이션은 센서의 소유 기능 및/또는 특징에 대한 확장가능성 데이터를 간단한 주변 버스(SPB)(104)를 통해 컴퓨팅 시스템(102)과 인터페이싱시킨다. 유사하게, 주변 센서의 확장가능성 애플리케이션은 터치 패널과 같은 주변 장치의 소유 기능 및/또는 특징을 간단한 주변 버스를 통해 컴퓨팅 시스템과 인터페이싱시킨다.
HID SPB 인터페이스(108)는 주변 장치 동작가능성 표준을 수립한다. 제3자의 독립적인 하드웨어 판매사는 주변 센서(106)의 HID SPB 인터페이스(108)를 통해 주변 장치를 인터페이싱시키고, 또한 주변 센서의 확장가능성 애플리케이션(110)을 통해 소유 기능 및/또는 특징을 차별화 및 구현할 수 있다.
실시예에서, 주변 센서(106)의 HID SPB 인터페이스(108)는 주변 장치 및/또는 센서가 컴퓨팅 시스템(102)에 대한 HID 호환가능한 장치임을 나타낼 수 있다(예를 들어, 식별, 노출, 번역, 열거 등을 할 수 있다). 주변 센서는 또한 주변 장치의 구성을 (예를 들어, 데이터 구조, 보고 기술어(report discriptors) 등으로부터) 판정할 수 있고, 센서를 구성하는 구성 데이터를 컴퓨팅 시스템으로부터 수신할 수 있고, 및/또는 구성 데이터를 컴퓨팅 시스템으로부터 주변 장치 또는 센서로 통신할 수 있다. 주변 장치 또는 센서와 컴퓨팅 시스템 간의 HID 데이터 통신은 간단한 주변 버스(SPB)를 통해 주변 버스를 경유하는 양방향 통신이다. 이 양방향 통신은 폴링 기법 및/또는 인터럽트 기반 메카니즘을 이용하여 구현될 수 있다. 이와 달리, 주변 센서와 컴퓨팅 시스템 간의 데이터 통신은 양방향일 수 있는 반면, 주변 센서와 주변 장치 간의 통신은 단방향 통신이다.
도 2는 본 명세서에서 기술한 간단한 주변 버스를 통한 HID의 다양한 실시예를 구현하는 예시적인 시스템 온 칩(SoC)(200)을 나타낸다. SoC는 소비자, 전자, 통신, 네비게이션, 미디어, 컴퓨팅 장치, 및/또는 그 밖의 다른 유형의 전자 장치 중 임의의 하나 또는 그들의 조합과 같은 고정된 또는 이동가능한 장치 내에 구현될 수 있다. SoC(200)는 전자 회로, 마이크로프로세서, 메모리, 입-출력(I/O) 로직 제어, 통신 인터페이스 및 구성요소, 및 컴퓨팅 장치를 구현하는 그 밖의 다른 하드웨어, 펌웨어, 및/또는 소프트웨어와 통합될 수 있다.
이 예에서, SoC(200)는 마이크로프로세서(202)(예를 들어, 임의의 마이크로제어기 또는 디지털 신호 프로세서) 및 입-출력(I/O) 로직 제어(204)(예를 들어, 전자 회로를 포함함)와 통합된다. SoC(200)는 또한 임의의 유형의 비휘발성 메모리 및/또는 다른 적절한 전자 데이터 저장 장치와 같은 메모리 장치(208) 및 메모리 제어기(206)를 포함한다. SoC는 또한 메모리에 의해 유지되고 마이크로프로세서에 의해 실행되는 운영 시스템(210)과 같은 다양한 소프트웨어 및/또는 펌웨어를 포함할 수 있다.
SoC(200)는 예를 들어 컴퓨팅 장치에 설치되는 경우, 장치 또는 다른 주변 구성요소와 인터페이싱하기 위한 장치 인터페이스(212)를 포함한다. SoC(200)는 또한 구성요소들 간의 데이터 통신을 위해 SoC의 다양한 구성요소를 결합시키는 통합 데이터 버스(214)를 포함한다. SoC의 데이터 버스는 I2C 데이터 버스 또는 직렬 주변 인터페이스(SPI) 데이터 버스와 같은 간단한 주변 버스(SPB)로서 구현될 수 있고, 상이한 버스 구조 및/또는 버스 아키텍처 중 임의의 하나 또는 이들의 조합으로서 구현될 수 있다.
간단한 주변 버스를 통한 HOD의 실시예에서, SoC(200)는 도 1에 도시되어 있는 주변 센서의 다양한 예들을 참조하여 설명한 바와 같은 하나 이상의 주변 센서(218)를 인터페이싱시키는 I2C 제어기(216)를 포함한다. 주변 센서는 확장가능성 애플리케이션(222)과 함께 HID SPB 인터페이스(220)를 구현한다. HID SPB 인터페이스 및 확장가능성 애플리케이션, 및 대응하는 기능 및 특징의 예는 도 1에 도시되어 있는 각각의 구성요소를 참조하여 설명된다. 이와 달리, 또는 그에 덧붙여, 주변 센서의 구성요소들은 I/O 로직 제어(204) 및/또는 SoC 또는 주변 센서의 다른 처리 및 제어 회로와 연계하여 구현되는 하드웨어, 펌웨어, 고정된 로직 회로 또는 이들의 임의의 조합으로 구현될 수 있다.
예시적인 방법(300,400)은 간단한 주변 버스를 통한 HID의 하나 이상의 실시예에 따라 도 3 및 도 4를 제각각 참조하여 설명된다. 일반적으로, 본 명세서에서 기술된 임의의 서비스, 기능, 방법, 프로시저, 구성요소 및 모듈은 소프트웨어, 펌웨어, 하드웨어(예를 들어, 고정된 로직 회로), 매뉴얼 프로세싱, 또는 이들의 임의의 조합을 사용하여 구현될 수 있다. 소프트웨어 구현은 컴퓨터 프로세서에 의해 실행되는 경우 특정 작업을 수행하는 프로그램 코드를 나타낸다. 예시적인 방법은 컴퓨터 소프트웨어, 애플리케이션, 루틴, 프로그램, 오브젝트, 구성요소, 데이터 구조, 프로시저, 모듈, 기능 등을 포함할 수 있는 컴퓨터 실행가능 명령어의 일반적인 상황에서 설명될 수 있다. 프로그램 코드는 컴퓨터 프로세서에 로컬 및/또는 원격인 하나 이상의 컴퓨터 판독가능 저장 매체 장치에 저장될 수 있다. 방법은 다수의 컴퓨터 장치에 의해 분산형 컴퓨팅 환경에서 수행될 수 있다. 또한, 본 명세서에서 기술한 특징은 플랫폼 독립적이며, 다양한 프로세서를 구비한 다양한 컴퓨팅 플랫폼 상에서 구현될 수 있다.
도 3은 간단한 주변 버스를 통한 HID의 예시적인 방법(들)(300)을 나타내며, 주변 장치 제어기로서 구현되는 주변 센서를 참조하여 설명된다. 방법 블록들이 설명되는 순서는 그에 국한될 필요는 없으며, 설명한 방법 블록의 임의의 수는 방법, 또는 또 다른 방법을 구현하기 위해 임의의 순서로 결합될 수 있다.
블록(302)에서, 주변 장치를 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 장치와 인터페이싱시키기 위한 HID SPB 인터페이스를 구현하는 주변 센서에서 주변 장치로부터 입력이 수신된다. 예를 들어, 주변 센서(114)(도 1)는 터치 패널(116)로부터 입력을 수신하고, 주변 센서(114)의 HID SPB 인터페이스(108)는 터치 패널을 간단한 주변 버스(SPB)(104)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템(102)과 인터페이싱시킨다. 유사하게, 주변 센서(118)는 키보드 또는 마우스 입력 장치와 같은 입력 장치(120)로부터 입력을 수신하고, 주변 센서(118)의 HID SPB 인터페이스(108)는 입력 장치를 간단한 주변 버스를 통해 HID 데이터 포맷으로 컴퓨팅 시스템(102)과 인터페이싱시킨다. 간단한 주변 버스(104)는 데이터가 HID 데이터 구조로서 통신되는 I2C 데이터 버스, 직렬 주변 버스(SPI) 데이터 버스 또는 그 밖의 다른 유형의 저전력 간단한 주변 버스로서 구현된다.
블록(304)에서, 주변 장치의 소유 기능을 위한 확장가능성 데이터가 주변 센서에서 수신된다. 예를 들어, 주변 센서(114)는 터치 패널(116)의 소유 기능 및/또는 특징을 위한 확장가능성 데이터를 수신하고, 주변 센서(114)의 확장가능성 애플리케이션(110)은 확장가능성 데이터를 간단한 주변 버스(SPB)(104)를 통해 컴퓨팅 시스템(102)과 인터페이싱시킨다. 유사하게, 주변 센서(118)는 입력 장치(120)의 소유 기능 및/또는 특징을 위한 확장가능성 데이터를 수신하고, 주변 센서(118)의 확장가능성 애플리케이션(110)은 확장가능성 데이터를 간단한 주변 버스를 통해 컴퓨팅 시스템과 인터페이싱시킨다.
블록(306)에서, 주변 장치로부터의 입력 및/또는 확장가능성 데이터는 컴퓨팅 시스템에서 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 통신된다. 예를 들어, 주변 센서(114)는 컴퓨팅 시스템(102)에서 터치 패널(116)로부터 수신된 입력 및/또는 터치 패널의 소유 기능 및/또는 특징을 위한 확장가능성 데이터를 간단한 주변 버스(SPB)(104)를 통해 HID 데이터 포맷으로 통신한다. 유사하게, 주변 센서(118)는 컴퓨팅 시스템에서 입력 장치(120)로부터 수신된 입력 및/또는 입력 장치의 소유 기능 및/또는 특징을 위한 확장가능성 데이터를 간단한 주변 버스를 통해 HID 데이터 포맷으로 통신한다.
블록(308)에서, 주변 장치는 컴퓨팅 시스템에 대해 HID 호환가능한 장치로서 식별되고, 블록(310)에서, 주변 장치의 구성이 판정된다. 예를 들어, 주변 센서(114)는 터치 패널(116)을 컴퓨팅 시스템(102)에 대해 HID 호환가능한 장치로서 식별하고 터치 패널에 대한 구성 정보를 판정한다. 유사하게, 주변 센서(118)는 입력 장치(120)를 컴퓨팅 시스템에 대해 HID 호환가능한 장치로서 식별하고 입력 장치에 대한 구성 정보를 판정한다. 주변 센서는 주변 장치와의 HID 애플리케이션 호환성을 유지한다.
블록(312)에서, 구성 데이터가 컴퓨팅 시스템으로부터 주변 장치로 통신된다. 예를 들어, 주변 센서(114)는 컴퓨팅 시스템(102)으로부터 구성 데이터를 수신하고 이 구성 데이터를 터치 패널(116)로 통신한다. 유사하게, 주변 센서(118)는 컴퓨팅 시스템(102)으로부터 구성 데이터를 수신하고 이 구성 데이터를 입력 장치(120)로 통신한다. 주변 장치와 컴퓨팅 시스템 간의 데이터 통신은 HID 보고 프로토콜을 사용하여 간단한 주변 버스를 통해 주변 센서를 경유하는 양방향 통신이다. 이와 달리, 주변 센서와 컴퓨팅 시스템 간의 데이터 통신은 양방향일 수 있는 반면, 주변 센서와 주변 장치 간의 통신은 단방향 통신이다.
블록(314)에서, HID 데이터는 HID 소프트웨어 스택과 주변 센서 간에 통신된다. 예를 들어, SPB 드라이버(128)는 컴퓨팅 시스템(102)에서의 HID 데이터를 주변 센서(114)와 HID 소프트웨어 스택(126) 간에 통신한다. 유사하게, SPB 드라이버는 컴퓨팅 시스템에서의 HID 데이터를 주변 센서(118)와 HID 소프트웨어 스택 간에 통신한다.
도 4는 간단한 주변 버스를 통한 HID의 예시적인 방법(들)(400)을 나타내며, 온도 센서, 가속도계, 자이로스코프, 컴파스 등과 같은 센서로서 구현되는 주변 센서를 참조하여 설명된다. 방법 블록들이 설명되는 순서는 그에 국한될 필요는 없으며, 설명한 방법 블록의 임의의 수는 방법, 또는 또 다른 방법을 구현하기 위해 임의의 순서로 결합될 수 있다.
블록(402)에서, 주변 센서를 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템과 인터페이싱시키기 위한 HID SPB 인터페이스를 구현하는 주변 센서에서 센서 데이터가 생성된다. 예를 들어, 주변 센서(112)(도 1)는 센서 데이터를 생성하고, 주변 센서(112)의 HID SPB 인터페이스(108)는 센서를 간단한 주변 버스(SPB)(104)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템(102)과 인터페이싱시킨다. 간단한 주변 버스(104)는 데이터가 HID 데이터 구조로서 통신되는 I2C 데이터 버스, 직렬 주변 버스(SPI) 데이터 버스 또는 그 밖의 임의의 다른 유형의 저전력 간단한 주변 버스로서 구현될 수 있다.
블록(404)에서, 센서 데이터가 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템으로 통신된다. 예를 들어, 주변 센서(112)는 센서 데이터를 간단한 주변 버스(SPB)(104)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템(102)으로 통신한다. 블록(406)에서, 주변 센서의 소유 기능을 위한 확장가능성 데이터가 컴퓨팅 시스템으로 통신된다. 예를 들어, 주변 센서(112)는 컴퓨팅 시스템에서 간단한 주변 버스를 통해 HID 데이터 포맷으로 센서의 소유 기능 및/또는 특징을 위한 확장가능성 데이터를 통신한다.
블록(408)에서, 주변 센서는 컴퓨팅 시스템에 대해 HID 호환가능한 장치로서 식별되고, 블록(410)에서, 구성 정보가 컴퓨팅 시스템으로 통신된다. 예를 들어, 주변 센서(112)는 센서를 컴퓨팅 시스템(102)에 대해 HID 호환가능한 장치로서 식별하고 센서에 대한 구성 정보를 컴퓨팅 시스템으로 통신한다.
블록(412)에서, 주변 센서를 구성하는 구성 데이터가 컴퓨팅 시스템으로부터 수신된다. 예를 들어, 주변 센서(102)는 센서를 구성 또는 초기화하기 위한 구성 데이터를 컴퓨팅 시스템(102)으로부터 수신한다. 센서와 컴퓨팅 시스템 간의 데이터 통신은 간단한 주변 버스(SPB)를 통한 양방향 통신이다. 블록(414)에서, HID 데이터가 HID 소프트웨어 스택과 주변 센서 간에 통신된다. 예를 들어, SPB 드라이버(128)는 컴퓨팅 시스템(102)에서의 HID 데이터를 주변 센서(112)와 HID 소프트웨어 스택(126) 간에 통신한다.
도 5는 도 1 내지 도 4를 참조하여 설명한, 임의의 장치 또는 서비스 및 장치에 의해 구현되는 소프트웨어로서 구현될 수 있는 예시적인 장치(500)의 다양한 구성요소를 나타낸다. 실시예에서, 장치는 소비자, 컴퓨터, 서버, 휴대용, 사용자, 통신, 전화, 네비게이션, 텔레비전, 기구, 게이밍, 미디어 플레이백, 카메라 및/또는 전자 장치 중 임의의 형태의 고정된 장치 및 이동 장치 중 임의의 하나 또는 이들의 조합으로서 구현될 수 있다. 장치는 장치가 사용자, 소프트웨어, 펌웨어, 하드웨어 및/또는 장치들의 조합을 포함하는 논리 장치를 설명하도록 장치를 동작시키는 사용자(즉, 사람) 및/또는 엔티티와 연관될 수 있다.
장치(500)는 수신된 데이터, 수신되는 데이터, 방송될 계획이 있는 데이터, 데이터의 데이터 패킷 등과 같은 장치 데이터(504)의 유선 및/또는 무선 통신을 가능하게 하는 통신 장치(502)를 포함한다. 장치 데이터 또는 다른 장치 콘텐츠는 장치의 구성 설정, 장치 상에 저장된 미디어 콘텐츠, 및/또는 장치의 사용자와 연관된 정보를 포함할 수 있다. 장치에 저장된 미디어 콘텐츠는 오디오, 비디오 및/또는 이미지 데이터의 임의의 유형을 포함할 수 있다. 장치는 데이터, 미디어 콘텐츠, 및/또는 사용자 선택가능 입력, 메시지, 통신, 음악, 텔레비전 콘텐츠, 녹화된 비디오 콘텐츠, 및 임의의 콘텐츠 및/또는 데이터 소스로부터 수신된 오디오, 비디오, 및/또는 이미지 데이터의 임의의 유형과 같은 입력이 수신될 수 있는 하나 이상의 데이터 입력(506)을 포함한다.
장치(500)는 직렬, 병렬, 네트워크 또는 무선 인터페이스 중 임의의 하나 이상과 같은 통신 인터페이스(508)를 포함한다. 통신 인터페이스는 다른 전자, 컴퓨팅 및 통신 장치가 장치와 데이터를 통신할 수 있게 해주는 장치와 통신 네트워크 간의 접속 및/또는 통신 링크를 제공한다.
장치(500)는 장치의 동작을 제어하기 위해 다양한 컴퓨터 실행가능 명령어들을 처리하는 하나 이상의 프로세서(510)(예를 들어, 임의의 마이크로프로세서, 제어기 등)를 포함한다. 이와 달리, 또는 그에 덧붙여, 장치는 소프트웨어, 하드웨어, 펌웨어, 또는 일반적으로 참조번호(512)로 식별되는 처리 및 제어 회로와 연계하여 구현되는 고정된 로직 회로 중 임의의 하나 또는 이들의 조합으로 구현될 수 있다. 비록 도시되어 있지는 않지만, 장치는 다양한 구성요소를 장치와 결합시키는 시스템 버스 또는 데이터 전달 시스템을 포함할 수 있다. 시스템 버스는 메모리 버스 또는 메모리 제어기, 주변 버스, 유니버셜 직렬 버스, 및/또는 임의의 다양한 버스 아키텍처를 이용하는 프로세서 또는 로컬 버스와 같은 상이한 버스 구조 중 임의의 하나 또는 이들의 조합을 포함할 수 있다.
장치(500)는 또한 랜덤 액세스 메모리(RAM), 비휘발성 메모리(예를 들어, 판독 전용 메모리(ROM), 플래시 메모리 등) 및 디스크 저장 장치와 같이 데이터 저장을 가능하게 하는 하나 이상의 메모리 장치(514)(예를 들어, 컴퓨터 판독가능 저장 매체)를 포함한다. 디스크 저장 장치는 하드 디스크 드라이브, 기록가능 및/또는 재기록가능 디스크 등과 같은 자기 또는 광학 저장 장치 중 임의의 유형으로서 구현될 수 있다. 장치는 또한 대용량 저장 매체 장치를 포함할 수 있다.
컴퓨터 판독가능 매체는 컴퓨팅 장치에 의해 액세스되는 임의의 이용가능한 매체 또는 매체들일 수 있다. 제한이 아닌 예시로서, 컴퓨터 판독가능 매체는 저장 매체 및 통신 매체를 포함할 수 있다. 저장 매체는 컴퓨터 판독가능 명령어들, 데이터 구조, 프로그램 모듈 또는 그 밖의 데이터와 같은 정보를 저장하기 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 착탈가능한 및 착탈가능하지 않은 매체를 포함한다. 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 그 밖의 다른 메모리 기술, CD-ROM, DVD 또는 그 밖의 다른 광학 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 그 밖의 다른 자기 저장 장치, 또는 정보를 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함하나, 이들에 국한되지는 않는다.
통신 매체는 전형적으로 컴퓨터 판독가능 명령어들, 데이터 구조, 프로그램 모듈, 또는 그 밖의 데이터를 반송파 또는 다른 전송 메카니즘과 같은 변조된 데이터 신호로 구현한다. 통신 매체는 임의의 정보 전달 매체를 포함한다. 변조된 데이터 신호라는 용어는 하나 이상의 신호의 특성 세트를 가지는 신호를 의미하거나, 신호 내에 정보를 인코딩하는 방식으로 변경된 신호를 의미한다. 제한이 아닌 예시로서, 통신 매체는 유선 네트워크 또는 직도선(direct wired) 접속과 같은 유선 매체, 및 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다.
메모리 장치(514)는 장치 데이터(504), 다른 유형의 정보 및/또는 데이터, 다양한 장치 애플리케이션(516)을 저장하는 데이터 저장 메카니즘을 제공한다. 예를 들어, 운영 시스템(518)은 메모리 장치를 통해 소프트웨어 애플리케이션으로서 유지될 수 있고 프로세서에 의해 실행될 수 있다. 장치 애플리케이션은 또한 임의의 형태의 제어 애플리케이션, 소프트웨어 애플리케이션, 신호 처리 및 제어 모듈, 특정 장치에 고유한 코드, 특정 장치에 대한 하드웨어 추상화 계층 등과 같은 장치 관리자를 포함할 수 있다. 이 예에서, 장치는 본 명세서에서 기술한 간단한 주변 버스를 통한 HID의 실시예를 구현하는 하나 이상의 주변 버스(520)를 포함한다.
장치(500)는 오디오 시스템(524)에 대한 오디오 데이터를 생성하고 및/또는 디스플레이 시스템(526)에 대한 디스플레이 데이터를 생성하는 오디오 및/또는 비디오 처리 시스템(522)도 포함한다. 오디오 시스템 및/또는 비디오 시스템은 오디오, 비디오, 디스플레이 및/또는 이미지 데이터를 처리, 디스플레이 및/또는 렌더링하는 임의의 장치를 포함할 수 있다. 디스플레이 데이터 및 오디오 신호는 RF(무선 주파수) 링크, S-비디오 링크, 컴포지트 비디오 링크, 컴포넌트 비디오 링크, DVI(디지털 비디오 인터페이스), 아날로그 오디오 접속, 또는 그 밖의 다른 유사한 통신 링크를 통해 오디오 장치 및/또는 디스플레이 장치로 통신될 수 있다. 실시예에서, 오디오 시스템 및/또는 디스플레이 시스템은 장치에 대해 외부적인 구성요소이다. 이와 달리, 오디오 시스템 및/또는 비디오 시스템은 예시적인 장치의 통합형 구성요소이다.
간단한 주변 버스를 통한 HID의 실시예는 특징 및/또는 방법에 특정한 언어로 설명되었지만, 첨부한 청구항의 주제는 설명되어 있는 특정 특징 또는 방법에 반드시 국한될 필요는 없다. 그 보다, 특정 특징 및 방법은 간단한 주변 버스를 통한 HID의 예시적인 실시예로서 개시된 것이다.

Claims (10)

  1. 컴퓨팅 시스템 내의 구성요소들 간의 데이터 통신용으로 구성된 간단한 주변 버스(simple peripheral bus: SPB); 및
    HID SPB 인터페이스를 이용하여 구현된 주변 센서- 상기 주변 센서 각각은 주변 장치를 상기 간단한 주변 버스를 통해 HID 데이터 포맷으로 상기 컴퓨팅 시스템과 인터페이싱시키도록 구성됨 -를
    포함하는 시스템.
  2. 제1항에 있어서,
    상기 주변 센서는 상기 컴퓨팅 시스템에서 상기 주변 장치의 소유 기능(proprietary function)을 위한 확장가능성 데이터를 상기 간단한 주변 버스를 통해 통신하도록 더 구성되는, 시스템.
  3. 제1항에 있어서,
    상기 주변 센서는 상기 주변 장치가 상기 컴퓨팅 시스템에 대해 HID 호환가능 장치임을 나타내고, 상기 주변 장치의 구성을 판정하도록 더 구성되는, 시스템.
  4. 제1항에 있어서,
    상기 주변 센서는 HID 보고 프로토콜을 사용하여 상기 주변 장치로부터 상기 컴퓨팅 시스템으로, 또한 상기 컴퓨팅 시스템으로부터 상기 주변 장치로 데이터를 양방향 통신하도록 더 구성되는, 시스템.
  5. 제1항에 있어서,
    상기 주변 센서는 주변 장치와의 HID 애플리케이션 호환성을 유지하도록 더 구성되는, 시스템.
  6. 제1항에 있어서,
    상기 주변 센서는 데이터를 상기 간단한 주변 버스를 통해 HID 데이터 구조로서 통신하도록 더 구성되는, 시스템.
  7. 제1항에 있어서,
    주변 센서와 HID 소프트웨어 스택 간에 HID 데이터를 통신하도록 구성된 SPB 드라이버를 더 포함하는 시스템.
  8. 주변 장치를 간단한 주변 버스(SPB)를 통해 HID 데이터 포맷으로 컴퓨팅 시스템과 인터페이싱시키는 HID SPB 인터페이스를 구현하는 주변 센서에서 상기 주변 장치로부터 입력을 수신하는 단계;
    상기 주변 센서에서 상기 주변 장치의 소유 기능을 위한 확장가능성 데이터를 수신하는 단계; 및
    상기 주변 장치로부터의 입력 및 상기 확장가능성 데이터를 상기 컴퓨팅 시스템에서 상기 간단한 주변 버스를 통해 상기 HID 데이터 포맷으로 통신하는 단계
    를 포함하는 컴퓨터 구현 방법.
  9. 제8항에 있어서,
    상기 주변 장치가 상기 컴퓨팅 시스템에 대해 HID 호환가능한 장치임을 나타내는 단계를 더 포함하는 컴퓨터 구현 방법.
  10. 제8항에 있어서,
    상기 주변 장치의 구성을 판정하는 단계를 더 포함하는 컴퓨터 구현 방법.
KR1020137024513A 2011-03-21 2012-03-11 간단한 주변 버스를 통한 hid KR20140020925A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/053,104 2011-03-21
US13/053,104 US8521942B2 (en) 2011-03-21 2011-03-21 HID over simple peripheral buses
PCT/US2012/028666 WO2012128977A2 (en) 2011-03-21 2012-03-11 Hid over simple peripheral buses

Publications (1)

Publication Number Publication Date
KR20140020925A true KR20140020925A (ko) 2014-02-19

Family

ID=46878287

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137024513A KR20140020925A (ko) 2011-03-21 2012-03-11 간단한 주변 버스를 통한 hid

Country Status (11)

Country Link
US (2) US8521942B2 (ko)
EP (1) EP2689337A4 (ko)
JP (1) JP5989758B2 (ko)
KR (1) KR20140020925A (ko)
CN (1) CN102707792B (ko)
AU (1) AU2012231346B2 (ko)
BR (1) BR112013024141A2 (ko)
CA (1) CA2830475A1 (ko)
MX (1) MX2013010825A (ko)
RU (1) RU2599543C2 (ko)
WO (1) WO2012128977A2 (ko)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9201185B2 (en) 2011-02-04 2015-12-01 Microsoft Technology Licensing, Llc Directional backlighting for display panels
US8521942B2 (en) 2011-03-21 2013-08-27 Microsoft Corporation HID over simple peripheral buses
US8725916B2 (en) 2012-01-07 2014-05-13 Microsoft Corporation Host side implementation for HID I2C data bus
US9052414B2 (en) 2012-02-07 2015-06-09 Microsoft Technology Licensing, Llc Virtual image device
US9354748B2 (en) 2012-02-13 2016-05-31 Microsoft Technology Licensing, Llc Optical stylus interaction
US8749529B2 (en) 2012-03-01 2014-06-10 Microsoft Corporation Sensor-in-pixel display system with near infrared filter
US9460029B2 (en) 2012-03-02 2016-10-04 Microsoft Technology Licensing, Llc Pressure sensitive keys
USRE48963E1 (en) 2012-03-02 2022-03-08 Microsoft Technology Licensing, Llc Connection device for computing devices
US8873227B2 (en) 2012-03-02 2014-10-28 Microsoft Corporation Flexible hinge support layer
US9426905B2 (en) 2012-03-02 2016-08-23 Microsoft Technology Licensing, Llc Connection device for computing devices
US9360893B2 (en) 2012-03-02 2016-06-07 Microsoft Technology Licensing, Llc Input device writing surface
US9064654B2 (en) 2012-03-02 2015-06-23 Microsoft Technology Licensing, Llc Method of manufacturing an input device
US9075566B2 (en) 2012-03-02 2015-07-07 Microsoft Technoogy Licensing, LLC Flexible hinge spine
US9870066B2 (en) 2012-03-02 2018-01-16 Microsoft Technology Licensing, Llc Method of manufacturing an input device
US9298236B2 (en) 2012-03-02 2016-03-29 Microsoft Technology Licensing, Llc Multi-stage power adapter configured to provide a first power level upon initial connection of the power adapter to the host device and a second power level thereafter upon notification from the host device to the power adapter
US20130300590A1 (en) 2012-05-14 2013-11-14 Paul Henry Dietz Audio Feedback
US10031556B2 (en) 2012-06-08 2018-07-24 Microsoft Technology Licensing, Llc User experience adaptation
US8947353B2 (en) 2012-06-12 2015-02-03 Microsoft Corporation Photosensor array gesture detection
US9019615B2 (en) 2012-06-12 2015-04-28 Microsoft Technology Licensing, Llc Wide field-of-view virtual image projector
US9459160B2 (en) 2012-06-13 2016-10-04 Microsoft Technology Licensing, Llc Input device sensor configuration
US9073123B2 (en) 2012-06-13 2015-07-07 Microsoft Technology Licensing, Llc Housing vents
US9684382B2 (en) 2012-06-13 2017-06-20 Microsoft Technology Licensing, Llc Input device configuration having capacitive and pressure sensors
US9256089B2 (en) 2012-06-15 2016-02-09 Microsoft Technology Licensing, Llc Object-detecting backlight unit
US9355345B2 (en) 2012-07-23 2016-05-31 Microsoft Technology Licensing, Llc Transparent tags with encoded data
US8964379B2 (en) 2012-08-20 2015-02-24 Microsoft Corporation Switchable magnetic lock
US9152173B2 (en) 2012-10-09 2015-10-06 Microsoft Technology Licensing, Llc Transparent display device
US8654030B1 (en) 2012-10-16 2014-02-18 Microsoft Corporation Antenna placement
CN104870123B (zh) 2012-10-17 2016-12-14 微软技术许可有限责任公司 金属合金注射成型突起
WO2014059618A1 (en) 2012-10-17 2014-04-24 Microsoft Corporation Graphic formation via material ablation
EP2908971B1 (en) 2012-10-17 2018-01-03 Microsoft Technology Licensing, LLC Metal alloy injection molding overflows
US8952892B2 (en) 2012-11-01 2015-02-10 Microsoft Corporation Input location correction tables for input panels
US8786767B2 (en) 2012-11-02 2014-07-22 Microsoft Corporation Rapid synchronized lighting and shuttering
US9513748B2 (en) 2012-12-13 2016-12-06 Microsoft Technology Licensing, Llc Combined display panel circuit
US9176538B2 (en) 2013-02-05 2015-11-03 Microsoft Technology Licensing, Llc Input device configurations
US10578499B2 (en) 2013-02-17 2020-03-03 Microsoft Technology Licensing, Llc Piezo-actuated virtual buttons for touch surfaces
US9638835B2 (en) 2013-03-05 2017-05-02 Microsoft Technology Licensing, Llc Asymmetric aberration correcting lens
US9542347B2 (en) 2013-03-16 2017-01-10 Intel Corporation Host interface crossbar for sensor hub
US9430414B2 (en) 2013-03-16 2016-08-30 Intel Corporation Bus independent platform for sensor hub peripherals to provide coalescing of multiple reports
US9304549B2 (en) 2013-03-28 2016-04-05 Microsoft Technology Licensing, Llc Hinge mechanism for rotatable component attachment
US9552777B2 (en) 2013-05-10 2017-01-24 Microsoft Technology Licensing, Llc Phase control backlight
CN105593786B (zh) 2013-11-07 2019-08-30 英特尔公司 对象位置确定
US9495017B2 (en) * 2013-11-20 2016-11-15 Intel Corporation Computing systems for peripheral control
US9448631B2 (en) 2013-12-31 2016-09-20 Microsoft Technology Licensing, Llc Input device haptics and pressure sensing
US9317072B2 (en) 2014-01-28 2016-04-19 Microsoft Technology Licensing, Llc Hinge mechanism with preset positions
US9759854B2 (en) 2014-02-17 2017-09-12 Microsoft Technology Licensing, Llc Input device outer layer and backlighting
US10120420B2 (en) 2014-03-21 2018-11-06 Microsoft Technology Licensing, Llc Lockable display and techniques enabling use of lockable displays
EP3123348B1 (en) * 2014-03-24 2018-08-22 INESC TEC - Instituto de Engenharia de Sistemas e Computadores, Tecnologia e Ciencia Control module for multiple mixed-signal resources management
US9569375B2 (en) 2014-05-19 2017-02-14 Microchip Technology Incorporated Unifying class device interface with one host interface by using embedded controller
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US9424048B2 (en) 2014-09-15 2016-08-23 Microsoft Technology Licensing, Llc Inductive peripheral retention device
US9447620B2 (en) 2014-09-30 2016-09-20 Microsoft Technology Licensing, Llc Hinge mechanism with multiple preset positions
WO2016164822A1 (en) * 2015-04-10 2016-10-13 Measurement Ltd. Physical parameter sensing and input device
US10416799B2 (en) 2015-06-03 2019-09-17 Microsoft Technology Licensing, Llc Force sensing and inadvertent input control of an input device
US10222889B2 (en) 2015-06-03 2019-03-05 Microsoft Technology Licensing, Llc Force inputs and cursor control
US9752361B2 (en) 2015-06-18 2017-09-05 Microsoft Technology Licensing, Llc Multistage hinge
US9864415B2 (en) 2015-06-30 2018-01-09 Microsoft Technology Licensing, Llc Multistage friction hinge
US10061385B2 (en) 2016-01-22 2018-08-28 Microsoft Technology Licensing, Llc Haptic feedback for a touch input device
US10344797B2 (en) 2016-04-05 2019-07-09 Microsoft Technology Licensing, Llc Hinge with multiple preset positions
US10037057B2 (en) 2016-09-22 2018-07-31 Microsoft Technology Licensing, Llc Friction hinge
SG11202113228UA (en) * 2019-06-18 2021-12-30 Razer Asia Pacific Pte Ltd Method and apparatus for optimizing input latency in a wireless human interface device system

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892933A (en) 1997-03-31 1999-04-06 Compaq Computer Corp. Digital bus
US6311228B1 (en) 1997-08-06 2001-10-30 Microsoft Corporation Method and architecture for simplified communications with HID devices
US6263392B1 (en) 1999-01-04 2001-07-17 Mccauley Jack J. Method and apparatus for interfacing multiple peripheral devices to a host computer
US6363437B1 (en) 1999-01-07 2002-03-26 Telefonaktiebolaget Lm Ericsson (Publ) Plug and play I2C slave
US10216259B2 (en) 2000-02-14 2019-02-26 Pierre Bonnat Method and system for processing signals that control a device using human breath
US6678830B1 (en) 1999-07-02 2004-01-13 Hewlett-Packard Development Company, L.P. Method and apparatus for an ACPI compliant keyboard sleep key
US6899627B2 (en) 1999-10-06 2005-05-31 Igt USB device protocol for a gaming machine
US6813650B1 (en) 1999-10-26 2004-11-02 International Business Machines Corporation Multimode non-standard universal serial bus computer input device
US20060015669A1 (en) * 2004-06-30 2006-01-19 Engler Michael G System for extending length of a connection to a USB device
US6725320B1 (en) 2001-02-08 2004-04-20 International Business Machines Corporation I2C bus switching devices interspersed between I2C devices
US7209470B2 (en) 2001-03-16 2007-04-24 Intel Corporation Method and apparatus for encapsulating universal serial bus messaging over link layer communication protocol
US7287273B2 (en) 2002-02-15 2007-10-23 Science Park Corporation Individual authentication method using input characteristic of input apparatus by network, program thereof, and recording medium containing the program
US6792506B2 (en) 2002-03-29 2004-09-14 Emc Corporation Memory architecture for a high throughput storage processor
US7313678B2 (en) 2003-03-05 2007-12-25 Broadcom Corporation Installation procedure for wireless human interface device
US20040203363A1 (en) 2002-04-19 2004-10-14 Carlton Stephen J. Portable communication apparatus and method for match-making with unique user ID
US7032039B2 (en) 2002-10-30 2006-04-18 Atmel Corporation Method for identification of SPI compatible serial memory devices
US7240223B2 (en) 2003-05-07 2007-07-03 Apple Inc. Method and apparatus for dynamic power management in a processor system
US7047343B2 (en) 2003-11-26 2006-05-16 Dell Products L.P. System and method for communication of keyboard and touchpad inputs as HID packets embedded on a SMBus
US20050182978A1 (en) 2004-02-17 2005-08-18 Anderson Jason M. Always ready computing device
US7660611B1 (en) 2004-03-25 2010-02-09 Cypress Semiconductor Corporation Wireless human interface device packet compression system and method for reducing power consumption
US7511682B2 (en) * 2004-05-03 2009-03-31 Microsoft Corporation Context-aware auxiliary display platform and applications
KR100686366B1 (ko) * 2004-06-04 2007-02-22 주식회사 애트랩 휴먼입력장치의 스크롤 장치 및 이를 이용하는 휴먼입력장치
JP2006024155A (ja) * 2004-07-09 2006-01-26 Workbit Corp 周辺装置
US7369046B2 (en) * 2004-10-05 2008-05-06 Broadcom Corporation Wireless human interface device with integrated temperature sensor
US8401588B2 (en) 2004-10-28 2013-03-19 Broadcom Corporation Dual mode human interface device
KR100668976B1 (ko) 2005-01-13 2007-01-16 삼성전자주식회사 버스확장장치
KR20070020998A (ko) 2005-08-17 2007-02-22 삼성전자주식회사 I2c통신을 통해 튜너를 공용화하는 영상수신장치 및튜너공용화방법
JP2007124517A (ja) * 2005-10-31 2007-05-17 Toshiba Corp 無線通信装置
US7952937B2 (en) 2006-03-16 2011-05-31 Freescale Semiconductor, Inc. Wordline driver for a non-volatile memory device, a non-volatile memory device and method
US8144125B2 (en) * 2006-03-30 2012-03-27 Cypress Semiconductor Corporation Apparatus and method for reducing average scan rate to detect a conductive object on a sensing device
CN201004221Y (zh) * 2006-11-14 2008-01-09 中国船舶重工集团公司第七○九研究所 Ps/2接口键盘及鼠标批量检测设备
US20090054069A1 (en) 2007-08-24 2009-02-26 Zeetoo, Inc. Platform Independent Communication Protocol
US7664894B2 (en) 2007-09-14 2010-02-16 Broadcom Corporation Wireless human interface device (HID) coordination
US7873764B2 (en) 2008-08-15 2011-01-18 Video Products, Inc. Switch with enhanced human interface device support
US20100180067A1 (en) 2009-01-14 2010-07-15 International Business Machines Corporation System for emulating and expanding a spi configuration rom for io enclosure
US8180933B2 (en) * 2009-01-21 2012-05-15 Microsoft Corporation Dynamic call handling from multiple attached devices wherein devices advertize its capabililes before facilitating call through appropriate device
US20100262929A1 (en) * 2009-04-08 2010-10-14 Panasonic Automotive Systems Company Of America, Division Of Panasonic Corporation Of North America Method and system for dynamic configuration of remote control inputs
CN101901058B (zh) * 2009-05-26 2012-07-18 华中师范大学 无线键盘及鼠标收发装置
CN101655823B (zh) * 2009-06-12 2012-12-19 中兴通讯股份有限公司 免安装数据卡驱动的实现方法、操作方法及系统
US8521942B2 (en) 2011-03-21 2013-08-27 Microsoft Corporation HID over simple peripheral buses
US8725916B2 (en) 2012-01-07 2014-05-13 Microsoft Corporation Host side implementation for HID I2C data bus

Also Published As

Publication number Publication date
RU2013143012A (ru) 2015-03-27
BR112013024141A2 (pt) 2016-12-20
EP2689337A4 (en) 2014-08-20
AU2012231346B2 (en) 2015-05-14
MX2013010825A (es) 2013-10-17
JP2014514640A (ja) 2014-06-19
EP2689337A2 (en) 2014-01-29
WO2012128977A3 (en) 2012-12-27
US8521942B2 (en) 2013-08-27
US20120246377A1 (en) 2012-09-27
CN102707792B (zh) 2016-08-24
CA2830475A1 (en) 2012-09-27
CN102707792A (zh) 2012-10-03
RU2599543C2 (ru) 2016-10-10
AU2012231346A1 (en) 2013-09-12
US8738835B2 (en) 2014-05-27
US20130332643A1 (en) 2013-12-12
JP5989758B2 (ja) 2016-09-07
WO2012128977A2 (en) 2012-09-27

Similar Documents

Publication Publication Date Title
KR20140020925A (ko) 간단한 주변 버스를 통한 hid
US10880425B2 (en) User terminal device and control method therefor
CN109074158B (zh) 电子设备及其启动应用的方法
US10045061B2 (en) Electronic device, adapter device, and video data processing method thereof
CN108235754B (zh) 一种提示用户更新应用版本的方法及设备
JP2006268025A (ja) 表示装置
KR102024959B1 (ko) Hid i2c 데이터 버스를 위한 호스트 측 구현 기법
JP2010283719A (ja) マイクロフォンのミュート・コントロール
KR102456456B1 (ko) 복수 개의 디스플레이를 가지는 전자 장치 및 제어 방법
KR102193704B1 (ko) 전자 장치의 락 스크린 디스플레이 방법 및 그 전자 장치
KR20170096510A (ko) 데이터 송수신 방법 및 장치
JP2003076651A (ja) コンピュータ及びコンピュータの外部機器の動作状態の表示方法
KR20160042739A (ko) 화면을 공유하기 위한 방법 및 그 전자 장치
US20150207493A1 (en) Method and apparatus for shifting display driving frequency to avoid noise of electronic sensor module
US11656894B2 (en) Electronic device and method for providing in-vehicle infotainment service
KR20210137107A (ko) 낮은 컴퓨팅 능력을 갖는 디바이스를 동작시키기 위한 시스템, 방법, 컴퓨터 프로그램, 모바일 디바이스 및 키트
TW200848297A (en) Car-use extended device and setting method for operation interface of car-use control system
WO2018034446A1 (ko) 전자장치, 이를 활용한 음성 신호의 노이즈 저감 방법
KR20190017143A (ko) 모바일 기기 및 모바일 기기를 활용한 가상현실 기기 컨트롤러 구동 방법.
KR20170098100A (ko) 전자 장치 및 전자 장치에서 오디오 정보의 출력을 제어하기 위한 방법
KR20170055983A (ko) 컴퓨터에서의 개별 디바이스 리셋 및 복구
CN117170603A (zh) 终端控制方法、电子设备及可读存储介质
Bhesania et al. Host side implementation for HID I 2 C data bus
CN111246281A (zh) 信息处理方法、信息处理设备和用于信息处理的产品
KR20070110712A (ko) 영상기기와 모바일 멀티미디어 플레이어의 통신 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right