鍵盤上的usb介面有什麼用(鍵盤的usb介面插電腦主機哪裡)

這次,我們將使用一個示波器來分析電訊號,看看USB鍵盤是如何工作的。首先,連線USB鍵盤之前的示波器顯示兩條訊號線,“D (黃色)”和“D-(綠色)”。

當將戴爾USB鍵盤插入示波器時,D 保持相對較低,但D-移動到更高的位置。

低 D 和高 D- 表示 USB 鍵盤在“低速”下處於空閒狀態。

換句話說,這種訊號變化表明USB鍵盤已連線到裝置,並且連線處於低速狀態。

當嘗試連線另一個USB鍵盤時,這似乎是“高速(最大傳輸速度為480 Mbps)”,D 移動到高位置,D-移動到低位置。

按下一個鍵不會改變示波器波形,因為USB鍵盤通訊可以從PC端開始。但這一次,將它連線到一根特殊的電纜上,以便示波器可以反射來自USB鍵盤的訊號。

然後在示波器上產生訊號。

縮放時看起來像這樣。

將縮放後的波形記錄為螢幕截圖,以詳細分析波形...

在Photoshop中合併。

當把它列印在紙上時,它看起來像這樣。

大多數部件的波形向相反方向移動,例如“D 高,D-低”或“D 低,D-高”,但在某些地方“D 低,D-也低”。有一個部分在狀態中。

這是一個稱為單端零 (SE0) 的條件。

當SE0顯示在波形中時,它看起來像這樣。

據說SE0繼續2位的事實表明“資料包結束”......

可以看到此波形包含三個主要資料包。

此外,D 為低且D-為高的狀態稱為“J狀態”,D 為高且D-為低的狀態稱為“K狀態”...

如果為每個位輸入 J 狀態和 K 狀態,則如下所示。

J 狀態在資料包結束後持續一段時間,K 狀態是資料包的起點。起初,它總是以模式“KJKJKJKK”開頭,但由於這顯示了訊號的同步部分,稱為“同步資料包”,因此實際資料包含在後續部分中。

資料包中的資料由重複的“0”和“1”表示,但此波形並不意味著“K”或“J”對應於“0”或“1”。在此波形中,“與前一個狀態不同 = 0”和“與前一個狀態相同 = 1”,並且第一個“KJKJKJ”旁邊的“K”...KK“ 是 ”1”。'.您可以將 0 和 1 分配給下一個“J”作為“0”,將下一個“K”指定為“0”,將下一個“K”指定為“1”,依此類推。

當手動解密資料包時,發現第一個資料包表示裝置ID輸入命令“IN”,USB鍵盤裝置ID“24”和確認命令。

下一個資料包看起來像這樣很長一段時間。它是一個資料輸入命令“DATA0”,8位資料“00”“00”“00”“00”“00”“00”“00”“00”“00”“00”和一個確認命令。

最後一個資料包是要傳送的資料的確認資料包。

這裡重要的是第二個資料包“00”“00”“00”“00”“00”“00”“00”“00”“00”“00”,這意味著“沒有金鑰”。沒有按它。'

現在,將 USB 鍵盤連線到更復雜的示波器,並在按下某個鍵時檢視資料包。

連線並調整後,手動解碼的資料包現在直接顯示在示波器上。未按下鍵時的資料包仍然是'00''00''00''00''00''00''00''00''00''00'...10>100''00''00''00''00''00''00''00''00''00''00''00''00''00''00''00''00''00'0

當您按“Windows鍵”,“Shift鍵”,“Ctrl鍵”等時,第一個位將更改為對應於每個鍵的值。例如,“Ctrl 鍵”顯示為“01”,“Alt 鍵”顯示為“04”。

當同時按下多個鍵時,將顯示與每個鍵對應的值的總和,並且可以確定同時按下哪個鍵。這一次,由於同時按下了“Ctrl鍵”和“Alt鍵”,因此顯示“05”,即“01”和“04”的總和。

開頭的第二位不用於任何事情,並且始終處於“00”狀態,其他鍵(如“A”和“B”)顯示為其餘6位的組合。

當按下多個鍵時,6位中的每一個都採用不同的值,並且可以識別出最多6個鍵“同時按下”。Eater表示,這種輸入鍵的識別能力因USB鍵盤的效能而異,因此根據物件的不同,可以通過同時按更多鍵來識別。