Skip to content

Czy klawiatury USB wysyłają tylko sygnały, czy też je odbierają?

28 de lipiec de 2021
do usb keyboards only send signals or do they receive them too 00

Większość z nas nigdy nie myśli o naszych klawiaturach, o ile działają dobrze, ale jeśli przestaniesz się nad tym zastanawiać, czy wysyłają one tylko sygnały do ​​naszych komputerów, czy też działa aktywny proces tam iz powrotem ? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedź na ciekawe pytanie czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser — pododdziału Stack Exchange, społecznościowej grupy witryn internetowych z pytaniami i odpowiedziami.

Pytanie

Czytnik SuperUser Ne Mo chce wiedzieć, czy klawiatury USB wysyłają tylko sygnały, czy też je odbierają:

Klawiatura USB nie musi odbierać żadnych sygnałów z komputera, wystarczy zasilanie, prawda? A może musi odbierać sygnały, a nie je wysyłać?

Czy klawiatury USB wysyłają tylko sygnały, czy też je odbierają?

Odpowiedź

Współtwórcy SuperUser LawrenceC i Dmitry Grigoryev mają dla nas odpowiedź. Po pierwsze, Lawrence C:

Od „Definicja klasy urządzeń dla urządzeń interfejsu HID (HID)” specyfikacja:

1627454326 766 Czy klawiatury USB wysylaja tylko sygnaly czy tez je odbieraja

Aby zmienić diody LED klawiatury, klawiatura akceptuje odpowiednie polecenie. Nie jest to więc urządzenie „tylko wejście” (co oznacza, że ​​wysyła tylko dane do hosta). Biorąc to pod uwagę, istnieje proces negocjacji i wyliczania ze wszystkimi urządzeniami USB, które wymagają konwersacji między hostem a urządzeniem. Nie można mieć urządzenia USB „tylko do odczytu”. Jeszcze przed USB kontroler klawiatury komputera akceptował polecenia, ponieważ robił kilka rzeczy poza odczytywaniem klawiatury (odniesienie):

1627454326 759 Czy klawiatury USB wysylaja tylko sygnaly czy tez je odbieraja

Następnie odpowiedź Dmitrija Grigoriewa:

Każde urządzenie USB, niezależnie od jego klasy, wymaga do działania komunikacji dwukierunkowej. Każde urządzenie USB (lub funkcja pod względem specyfikacji USB) jest reprezentowane jako zestaw punktów końcowych, które można traktować jako bufory, które akceptują lub odbierają dane. Jednak nawet punkty końcowe, które mogą tylko wysyłać dane, czekają na specjalny pakiet zwany tokenem, zanim będą mogły odpowiedzieć:

1627454326 792 Czy klawiatury USB wysylaja tylko sygnaly czy tez je odbieraja

Szare ramki reprezentują hosta USB, a białe ramki reprezentują funkcje USB (źródło wykresu).

W ten sposób wykonywane są nawet tak zwane transfery przerwań, a host USB odpytuje podłączone urządzenia za pomocą pakietów tokenów. To, co różni zwykłe (zbiorcze) transfery od transferów przerywanych, polega na tym, że czas odpytywania jest krótki i gwarantowany w tym drugim przypadku. Mimo to wszystkie transfery są inicjowane przez hosta.

Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych doświadczonych technologicznie użytkowników Stack Exchange? Sprawdź pełny wątek dyskusji tutaj.

Źródło obrazu: Luke Jones (Flickr)

Czy ten post był pomocny?