23Aug

Send USB-tastaturer bare signaler eller mottar de dem også?

click fraud protection

De fleste av oss gir aldri mye tanke på tastaturene våre så lenge de fungerer bra, men hvis du slutter å tenke på det for et øyeblikk, sender de bare signaler til våre datamaskiner eller er det en aktiv frem og tilbake prosess påarbeid? Dagens SuperUser Q & A-innlegg har svaret på en nysgjerrig leser spørsmål.

Dagens spørsmål &Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.

Spørsmålet

SuperUser leser Ne Mo vil vite om USB-tastaturer bare sender signaler, eller hvis de mottar dem også:

Et USB-tastatur trenger ikke å motta signaler fra en datamaskin, bare strøm, ikke sant? Eller trenger den å motta signaler samt sende dem?

Har USB-tastaturer bare sende signaler eller mottar de dem også?

Svaret

SuperUser-bidragsytere LawrenceC og Dmitry Grigoryev har svaret for oss. Først opp, LawrenceC:

Fra "Device Class Definition for Human Interface Devices( HID)" -spesifikasjon:

instagram viewer

For å endre tastaturdiodene, aksepterer tastaturet en kommando for å gjøre det. Så det er ikke en "input-only" -enhet( det betyr at det kun utdataer data til verten).Når det er sagt, er det en forhandlings- og oppsummeringsprosess med alle USB-enheter som krever en frem og tilbake samtale mellom verten og enheten. Du kan ikke ha en "skrivebeskyttet" USB-enhet. Selv før USB, ville datamaskinens tastaturkontroller akseptere kommandoer fordi det gjorde noen få ting i tillegg til å lese tastaturet( referanse):

Etterfulgt av svaret fra Dmitry Grigoryev:

En hvilken som helst USB-enhet uavhengig av sin klasse krever toveiskommunikasjon for å fungere. Hver USB-enhet( eller funksjon i form av USB-spesifikasjoner) er representert som et sett med endepunkter som kan betraktes som buffere som aksepterer eller mottar data. Men selv endepunkter som bare kan sende data, venter på en spesiell pakke kalt et token før de kan svare:

De grå boksene representerer USB-verten, mens de hvite boksene representerer USB-funksjoner( diagramkilde).

Selv såkalte avbruddstransfer blir gjort på denne måten, med USB-vertspollingstilkoblede enheter som bruker token-pakker. Det som er forskjellig mellom vanlige( bulk) overføringer og avbryte overføringer er at avstemningstiden er liten og garantert i sistnevnte tilfelle. Likevel blir alle overføringer initiert av verten.

Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.

Image Credit: Luke Jones( Flickr)