Bàn phím USB chỉ gửi tín hiệu hoặc họ có nhận được tín hiệu đó không?

Mục lục:

Bàn phím USB chỉ gửi tín hiệu hoặc họ có nhận được tín hiệu đó không?
Bàn phím USB chỉ gửi tín hiệu hoặc họ có nhận được tín hiệu đó không?

Video: Bàn phím USB chỉ gửi tín hiệu hoặc họ có nhận được tín hiệu đó không?

Video: Bàn phím USB chỉ gửi tín hiệu hoặc họ có nhận được tín hiệu đó không?
Video: Các câu lệnh hay dùng Terminal - Code nhanh by CodersX - YouTube 2024, Tháng mười một
Anonim
Hầu hết chúng ta không bao giờ suy nghĩ nhiều về bàn phím của chúng tôi miễn là chúng hoạt động tốt, nhưng nếu bạn dừng lại để suy nghĩ về nó một lúc, chúng chỉ gửi tín hiệu đến máy tính của chúng tôi hay không. ? Bài đăng Hỏi & Đáp của SuperUser hôm nay có câu trả lời cho câu hỏi của người đọc tò mò.
Hầu hết chúng ta không bao giờ suy nghĩ nhiều về bàn phím của chúng tôi miễn là chúng hoạt động tốt, nhưng nếu bạn dừng lại để suy nghĩ về nó một lúc, chúng chỉ gửi tín hiệu đến máy tính của chúng tôi hay không. ? Bài đăng Hỏi & Đáp của SuperUser hôm nay có câu trả lời cho câu hỏi của người đọc tò mò.

Phiên Hỏi & Đáp hôm nay đến với chúng tôi theo lịch sự của SuperUser - một phân khu của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều hành.

Câu hỏi

Người đọc siêu người dùng Ne Mo muốn biết liệu bàn phím USB chỉ gửi tín hiệu hay họ cũng nhận được tín hiệu:

A USB keyboard does not need to receive any signals from a computer, just power, right? Or does it need to receive signals as well as send them?

Bàn phím USB chỉ gửi tín hiệu hoặc chúng có nhận được tín hiệu đó không?

Câu trả lời

Những người đóng góp của SuperUser LawrenceC và Dmitry Grigoryev có câu trả lời cho chúng tôi. Đầu tiên, LawrenceC:

From the “Device Class Definition for Human Interface Devices (HID)” specification:

To change the keyboard LEDs, the keyboard accepts a command to do so. So it is not an “input-only” device (meaning it only outputs data to the host). That being said, there is a negotiation and enumeration process with all USB devices that require a back-and-forth conversation between the host and the device. You cannot have a “read-only” USB device. Even before USB, the computer’s keyboard controller would accept commands because it did a few things besides read the keyboard (reference):
To change the keyboard LEDs, the keyboard accepts a command to do so. So it is not an “input-only” device (meaning it only outputs data to the host). That being said, there is a negotiation and enumeration process with all USB devices that require a back-and-forth conversation between the host and the device. You cannot have a “read-only” USB device. Even before USB, the computer’s keyboard controller would accept commands because it did a few things besides read the keyboard (reference):
Image
Image

Tiếp theo là câu trả lời từ Dmitry Grigoryev:

Any USB device regardless of its class requires bidirectional communication to function. Every USB device (or function in terms of USB specifications) is represented as a set of endpoints which can be thought of as buffers which accept or receive data. However, even endpoints which can only send data wait for a special packet called a token before they can reply:

The gray boxes represent the USB host while the white boxes represent USB functions (chart source).
The gray boxes represent the USB host while the white boxes represent USB functions (chart source).

Even so-called interrupt transfers are done in this way, with the USB host polling connected devices using token packets. What differs between regular (bulk) transfers and interrupt transfers is that the polling time is small and guaranteed in the latter case. Still, all transfers are initiated by the host.

Có cái gì để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange có hiểu biết công nghệ khác? Xem toàn bộ chuỗi thảo luận tại đây.

Hình ảnh tín dụng: Luke Jones (Flickr)

Đề xuất: