¿Los teclados USB solo envían señales o también las reciben?

La mayoría de nosotros nunca pensamos mucho en nuestros teclados siempre que funcionen bien, pero si te detienes a pensar en ello por un momento, ¿solo envían señales a nuestras computadoras o hay un proceso activo de ida y vuelta en el trabajo? ? La publicación de preguntas y respuestas del superusuario de hoy tiene la respuesta a la pregunta de un lector curioso.

La sesión de preguntas y respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, un grupo de sitios web de preguntas y respuestas impulsado por la comunidad.

La pregunta

El lector de superusuario Ne Mo quiere saber si los teclados USB solo envían señales o si también las reciben:

Un teclado USB no necesita recibir ninguna señal de una computadora, solo energía, ¿verdad? ¿O necesita recibir señales además de enviarlas?

¿Los teclados USB solo envían señales o también las reciben?

La respuesta

Los contribuidores de superusuario LawrenceC y Dmitry Grigoryev tienen la respuesta para nosotros. Primero, LawrenceC:

De la especificación » Definición de clase de dispositivo para dispositivos de interfaz humana (HID) «:

Para cambiar los LED del teclado, el teclado acepta un comando para hacerlo. Por lo tanto, no es un dispositivo de “solo entrada” (lo que significa que solo envía datos al host). Dicho esto, existe un proceso de negociación y enumeración con todos los dispositivos USB que requieren una conversación de ida y vuelta entre el host y el dispositivo. No puede tener un dispositivo USB de «solo lectura». Incluso antes del USB, el controlador del teclado de la computadora aceptaba comandos porque hacía algunas cosas además de leer el teclado ( referencia ):

Seguido de la respuesta de Dmitry Grigoryev:

Cualquier dispositivo USB, independientemente de su clase, requiere comunicación bidireccional para funcionar. Cada dispositivo USB (o función en términos de especificaciones USB) se representa como un conjunto de puntos finales que pueden considerarse como búfer que aceptan o reciben datos. Sin embargo, incluso los puntos finales que solo pueden enviar datos esperan un paquete especial llamado token antes de poder responder:

Los cuadros grises representan el host USB, mientras que los cuadros blancos representan funciones USB ( fuente de gráficos ).

Incluso las llamadas transferencias de interrupción se realizan de esta manera, con el host USB sondeando los dispositivos conectados mediante paquetes token. Lo que difiere entre las transferencias regulares (masivas) y las transferencias de interrupción es que el tiempo de sondeo es pequeño y está garantizado en el último caso. Aún así, todas las transferencias son iniciadas por el anfitrión.


¿Tiene algo que agregar a la explicación? Habla en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Consulte el hilo de discusión completo aquí .

Crédito de la imagen: Luke Jones (Flickr)