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

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

    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å jobben ? 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 så vel som sende dem?

    Send USB-tastaturer bare signaler eller mottar 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:

    For å endre tastaturdiodene, aksepterer tastaturet en kommando for å gjøre det. Så det er ikke en "input-only" -enhet (det betyr at det bare 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 ting i tillegg til å lese tastaturet (referanse):

    Etterfulgt av svaret fra Dmitry Grigoryev:

    Enhver 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 avbryteoverføringer gjøres 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.

    Bilde Kreditt: Luke Jones (Flickr)