作者andyzeta (暱稱)
看板Key_Mou_Pad
標題Re: [鍵盤] DK2108s青軸 心得
時間Thu Jun 13 23:49:16 2013
: 順便問個蠢問題好了... 切換USB 6-Key Rollover 與 N-Key Rollover
: 這個是可以幹嘛啊!?
偶爾回答一下比較需要篇幅的問題...
這問題一點都不蠢
我當年也很好奇Ducky的USB N-key是怎麼做到的
所以在我開始現在這份工作後不久
就把這隻鍵盤帶去用儀器錄USB上傳輸的訊號了
在USB Device剛接上電腦主機時,主機端會向Device要求許多Descriptor
其中會記載這Device是怎樣的Device,廠商ID、產品ID等等的資訊
如果是走Interrupt Transfer
會記載主機端每隔多少時間要去問Device有沒有變化之類的
USB HID (Human Interface Device,簡單說就是鍵盤滑鼠這些人能碰到的東西)
主機端會要求一份Report Descriptor,記載Device會怎樣回報變化
像是鍵盤的哪個按鍵被按下、滑鼠的移動距離等
這份規範中提到預設的鍵盤訊號一次傳輸量
不包含特殊按鍵的話只有六個欄位可以填是哪個按鍵
所以一般的的USB HID鍵盤就只能做到6-key rollover
那Ducky的鍵盤是回報的這份Report Descriptor內容比較特殊
要依據這份Report Descriptor去解碼才能正確解出內容
所以不受到6-key的限制
但也因為這不是一般最常見的規格,所以有時候會不能正常使用
像是之前版上有人回報過在BIOS下無法使用USB N-key rollover
這種情形下切換回USB HID規範內提到的一般鍵盤回報方式
就可以正常使用了
--
感謝sitos大、leiyanYO大、與老貓大的文章
又多學點東西
--
CPU:Intel Xeon E3-1230v2 + COGAGE TRUE Spirit
MB:ASRock Z77 Extreme4
[遊戲下載機]
RAM:Transcend JETRAM DDR3-1600 8GB * 4
DVD-RW:SONY V-200S
HDD:Intel SSD 320 SERIES 160GB + etc.
Case:Lian-li PC-B25F
VGA:Powercolor AX7850 2GBD5-2DHPP
SOUND:ASUS Xonar DX
Monitor:DELL U2410 + SAMSUNG SyncMaster 740B
PSU:CM Silent Pro Gold 600W
Mouse:ZOWIE EC2 + SWIFT
Keyboard:ZOWIE CELERITAS
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.36.222
推 yorunosora:推 06/14 00:03
推 luisak:這就專業了XD 06/14 00:19
推 SR498:看了一堆特價文 這篇不推不行阿 06/14 00:31
推 stu60284x1:這篇比990超值 06/14 00:41
推 jack089452:有看有推長知識 06/14 00:45
→ sitos:這篇對於 HID protocol 的理解有錯誤 06/14 02:38
→ h4224785:樓上有八卦?! 06/14 05:54
→ andyzeta:感謝sitos大,我是做USB驅動,HID不是很懂,請sitos大不 06/14 07:41
→ andyzeta:吝指教 06/14 07:41
→ andyzeta:我今天會再找些USB HID的資料來研究一下 06/14 08:25
→ leiyanYO:DUCKY目前USB N-KEY rollover是採重新定義封包的方式 06/14 12:30
→ leiyanYO:所以譬如使用MAC系統~因為封包定義不同~ 06/14 12:35
→ leiyanYO:使用USB N-KEY rollover操作時會有問題 06/14 12:37
→ leiyanYO:如果跟模擬多把鍵盤的方式相比~ 06/14 12:46
→ leiyanYO:應該是模擬多把的方式造成主機負擔比較大~這樣對嗎@@? 06/14 12:46
→ leiyanYO:麻煩andyzeta大大幫忙回答一下~謝謝 06/14 12:47
推 leiyanYO:補推~~~~~~~~~~~~~ 06/14 13:14
→ andyzeta:淚眼大說的對,我晚點回去用電腦修文…昨晚寫的是錯誤的 06/14 16:07
→ andyzeta:,真是不好意思 06/14 16:07
※ 編輯: andyzeta 來自: 118.171.247.45 (06/14 23:12)
→ andyzeta:修正一些內容,如果還有問題請再提出,謝謝! 06/14 23:13