USB emberi interfész eszközosztály - USB human interface device class
A számítás során az USB emberi interfész eszközosztály ( USB HID osztály ) a számítógépes perifériákra vonatkozó USB specifikáció része : megadja az eszköz interfészt ( számítógépes hardver típusát ) az emberi interfész eszközökhöz , például billentyűzetekhez , egerekhez , játékvezérlőkhöz és alfanumerikus megjelenítő eszközök .
Az USB HID osztály számos dokumentumban van meghatározva, amelyet az USB Implementers Forum fórum eszköz munkacsoportja adott át. Az USB HID osztály leírására használt elsődleges dokumentum a HID 1.11 eszközosztály-meghatározása.
Eszközök
Az USB HID osztály szinte minden modern számítógéppel használt eszközöket írja le. Számos előre definiált funkció létezik az USB HID osztályban. Ezek a funkciók lehetővé teszik a hardvergyártók számára, hogy termékeiket az USB HID osztály specifikációi szerint tervezzék meg, és elvárják, hogy minden olyan szoftverrel együtt működjön, amely szintén megfelel ezeknek a specifikációknak.
Ugyanazt a HID protokollt használják módosítatlanul a Bluetooth emberi interfész eszközökben. A Bluetooth profil specifikáció csak az USB HID dokumentációra irányítja az olvasókat. Ebben az értelemben ezek az eszközök az USB HID osztályba is tartoznak.
Billentyűzetek
A billentyűzetek az USB HID osztályú eszközök általános típusai. Az USB HID osztályú billentyűzetet általában olyan IN végponttal tervezik, amely a billentyűleütéseket közli a számítógéppel, és egy OUT végpontot, amely a billentyűzet LED-jei állapotát közli a számítógépről a billentyűzetre. A PC 97 szabvány megköveteli, hogy a számítógép BIOS - ának észlelnie és működnie kell az USB HID osztályú billentyűzetekkel, amelyeket a rendszerindítási folyamat során használnak.
Egyes billentyűzetek megvalósítják az USB Boot Keyboard profilt, amelyet a HID (Human Interface Devices, HID) v1.11 USB eszközosztály- meghatározásban határoztak meg, és kifejezetten a rendszerindítási protokoll használatára vannak konfigurálva. Ezek korlátozódnak 6-kulcs borulás (6KRO), és megszakítja a CPU minden alkalommal a billentyűzet megkérdezett (akkor is, ha nincs állami változás), kivéve, ha az USB-vezérlő felülbírálja ezt a viselkedést. Ez a profil lehetővé teszi a BIOS számára, hogy USB-billentyűzetet kezeljen USB-tudatos operációs rendszer hiányában. Az ebben a specifikációban nem indítási módban lévő billentyűzetek számára ajánlott profil a billentyűzetet 6KRO-ra korlátozza, és arra készteti őket, hogy a megszakításra legalább fél másodpercenként állapotjelentéssel válaszoljanak (még akkor is, ha nincs állapotváltozás). tipikus (a scancode megismétlése, ha a gombot elég hosszan megnyomják), hacsak az USB vezérlő nincs beprogramozva arra, hogy a billentyűzetnek ne tegye. A nem boot módban lévő billentyűzetek azonban szabadon alkalmazhatnak egy alternatív HID profilt.
A fent említett viselkedés ellentétben áll a PS / 2 (nem tévesztendő össze a PlayStation 2-vel) interfésszel, amely támogatja az n -key rollover (NKRO) használatát az ezt támogató billentyűzetek számára. A PS / 2 interfész egyáltalán nem szakítja meg a CPU-t, ha nincs állapotváltozás, kivéve, ha egy gombot elég hosszú ideig tartanak a tipematika aktiválásához. Ha nem kell válaszolnia az ismételt szavazásra, energiát takarít meg, ezért a PS / 2 interfészt gyakran használják a laptopok belső billentyűzeteiben.
Egerek
A számítógépes egerek egy másik gyakori USB HID osztályú eszköz. Az USB HID egerek az egygombos egyszerű eszközöktől a többgombos összetett eszközökig terjedhetnek. A legtöbb modern operációs rendszer a szokásos HID egérkialakításhoz szállítja az illesztőprogramokat (a legelterjedtebb modern egértervezés két dedikált gombbal és egy egérkerékkel rendelkezik, amely harmadik gombként működik); a kibővített funkcionalitású egerekhez egyedi illesztőprogramokra van szükség a gyártótól.
Az USB egerek késleltetési ideje alacsonyabb, mint a PS / 2 egereké, mert a szokásos USB egerek gyakran alapértelmezett 125 Hz-es frekvenciával vannak lekérdezve, míg a szokásos PS / 2 egerek 100 Hz-es alapértelmezett frekvenciával küldenek megszakításokat, ha adataik vannak a számítógépre. Ezenkívül az USB egerek nem okozzák az USB vezérlő megszakítását a rendszerben, ha nincs állapotváltozásuk, hogy jelentést tegyenek az USB HID specifikáció alapértelmezett profiljának megfelelően az egéreszközök számára. A PS / 2 és az USB egyaránt lehetővé teszi a mintavételi frekvencia felülírását, a PS / 2 támogatja a 200 Hz-es mintavételi frekvenciát, az USB pedig 1 kHz-ig terjedő lekérdezési frekvenciát, mindaddig, amíg az USB egér teljes sebességgel vagy magasabb sebességgel fut USB sebesség.
A PS / 2 egér interfész megszakításvezérelt jellege miatt, amely nem igényel időszakos lekérdezést, a PS / 2 interfész energiát takarít meg, ami miatt népszerű választás a laptopokba integrált mutatóeszközök számára.
Játékvezérlők
A modern játékvezérlők és joystickok gyakran USB HID osztályú eszközök. A régi játékport eszközökkel ellentétben az USB HID osztályú játékeszközök működéséhez általában nincs szükség saját illesztőprogramokra. Szinte az összes játékeszköz fedélzeti illesztőprogramokkal fog működni, amennyiben az eszközt az illesztőprogramok és az USB HID osztály specifikációi alapján tervezték.
Egyéb eszközök
Az USB HID osztály specifikációi számtalan más eszközt tesznek lehetővé az USB HID osztály alatt. Néhány példa erre az autószimulációs vezérlők, edzőgépek, telefonkészülékek , hőmérők, hangvezérlők és orvosi műszerek. Még a szünetmentes tápegységek és a szoftvervédelmi hardverkulcsok is ebbe az osztályba sorolják magukat, annak ellenére, hogy gyakran egyáltalán nincsenek emberi interfészeik. Bármely eszköz lehet USB HID osztályú eszköz, amennyiben a tervező megfelel az USB HID osztály logikai specifikációinak. Ez nem azt jelenti, hogy nincs szükség illesztőprogramok szállítására ezekhez az eszközökhöz, sem az, hogy egy operációs rendszer azonnal felismeri az eszközt. Ez csak azt jelenti, hogy az eszköz az emberi interfész eszközosztálya alatt deklarálhatja magát.
Biztonsági rések
Az USB interfész kiszolgáltatott az olyan biztonsági kihasználásoknak, mint a BadUSB, amelyek visszaélnek az USB sokféle eszköz csatlakoztatására való képességének kombinációjával, annak képtelenségével ellenőrizni, hogy az eszközök valójában olyanok, mint amilyennek állítják magukat, az USB eszközök lehetősége megváltoztatni a típusukat vagy bejelenti, hogy csatlakoztatva vannak-e további alegységek, valamint az alapértelmezett viselkedését, amely szerint minden olyan eszközt elfogad, amely csatlakozik hozzá. Részleges ellenintézkedésként PS / 2 perifériák használhatók az összes USB-port letiltásával együtt.
Illesztőprogramok
Az olyan jól definiált specifikációk előnyei, mint az USB HID osztály, a legtöbb modern operációs rendszerben elérhető eszközillesztők bősége . Az USB HID osztályú eszközöket és azok alapvető funkcióit az USB-IF dokumentációja határozza meg, különösebb szoftverre való tekintettel. Ezen általános leírások miatt az operációs rendszerek tervezői könnyen felvehetik a működő illesztőprogramokat olyan eszközökhöz, mint a billentyűzetek, egerek és más általános emberi interfész eszközök. Ezeknek az általános illesztőprogramoknak a beépítése lehetővé teszi az eszközök gyorsabb telepítését és a végfelhasználók könnyebb telepítését.
Logikai előírások
Funkcionális jellemzők
Az USB emberi interfész eszközosztály mind az eszköz, mind az interfész osztályok leírására használható. Az interfész osztály akkor használható, ha az USB eszköz egynél több funkciót tartalmazhat. Ezért lehetséges, hogy egyszerre két különböző interfésszel rendelkező USB-eszközök legyenek (például egy USB-telefon használhatja a HID osztályba tartozó billentyűzetet és az USB kommunikációs eszközosztályba tartozó hangszórót ).
Az interfész eszközöket alosztályleírókkal is definiálják. Az alosztályleíró az eszköz indíthatóvá nyilvánítására szolgál. A rendszerindító eszköz megfelel az alapprotokoll minimális betartásának, és a számítógép BIOS - ja fel fogja ismerni .
Mindegyik USB HID interfész vagy vezérlő, vagy megszakító cső segítségével kommunikál a gazdával . Az izokron és ömlesztett csöveket nem használják a HID osztályú készülékekben. Az IN és az OUT vezérlés átvitele egyaránt szükséges a felsoroláshoz; csak IN megszakítás átvitele szükséges a HID jelentésekhez. Az OUT megszakítás átvitele opcionális a HID-osztályú eszközöknél.
Jelentések
Az USB HID osztály megköveteli, hogy minden eszköz leírja, hogyan fog kommunikálni a gazdaeszközzel annak érdekében, hogy pontosan megjósolja és meghatározza az összes jelenlegi és jövőbeli emberi interfész eszközt. A felsorolás során az eszköz leírja a jelentések felépítését, hogy a gazdagép megfelelően fel tudjon készülni ezen információk fogadására.
A gazdagép rendszeresen lekérdezi az eszköz megszakításának IN végpontját működés közben. Ha az eszköz rendelkezik adatokkal a küldéshez, jelentést készít, és válaszként elküldi a szavazási tokenre. Az olyan általános eszközök, mint a billentyűzetek és az egerek, jelentéseket küldenek, amelyek megfelelnek az USB Implementers Forum (USB-IF) által meghatározott szabványoknak . Amikor egy szállító egyedi USB HID osztályú eszközt készít, az eszköz által létrehozott jelentéseknek meg kell egyezniük a felsorolás során megadott jelentésleírással és a gazdagépre telepített illesztőprogrammal. Ily módon lehetséges, hogy az USB HID osztály rendkívül rugalmas legyen.
USB HID API
Az USB HID-hez kétféle API kapcsolódik: az USB szint és az operációs rendszer szintje. USB szinten van egy protokoll, amellyel az eszközök bejelenthetik képességeiket, és az operációs rendszer elemzi a kapott adatokat. Ezután az operációs rendszer magasabb szintű nézetet kínál az alkalmazások számára, amelyeknek nem az egyes eszközök, hanem az eszközosztályok támogatását kell tartalmazniuk. Ez az absztrakciós réteg lehetővé teszi, hogy a játék bármilyen USB vezérlővel működjön, például a játék után létrehozottakkal is.
Lásd még
- USB On-The-Go (OTG)
Hivatkozások
Külső linkek
- USB.org : az USB Implementers Forum, Inc. honlapja
- USB dióhéjban
- USB-IF HID eszközök : Az USB-IF emberi interfész eszközöknek szánt oldala tartalmazza az összes jóváhagyott dokumentációt
- Lakeview Research HID Page : cikkgyűjtemény és példakód az USB HID eszközökről.
- PC rendszer útmutatók : A Microsoft PC rendszer specifikációi (pl. PC '97, PC '98)