求問滑鼠是如何做到一插USB就安裝驅動的?我應該怎麼找這方面的資料?怎麼找USB上的電路圖?

時間 2021-06-03 07:59:38

1樓:北極

題主要點專業的東西,那我就上點專業的東西吧:

求問滑鼠是如何做到一插USB就安裝驅動的?

因為USB滑鼠是Class Specific裝置,這種USB裝置的驅動大部分都是通用的,所以凡是Class Specific裝置,都可以用乙份驅動搞定,滑鼠以插上去就能用,是因為Windows預先內建了這個Class的驅動,當然,不是所有USB裝置都是Class Specific的,有很多都不是,比如USB無線網絡卡、USB轉串列埠,這些裝置就需要廠商提供驅動才行。

USB鍵盤和滑鼠都屬於HID Class,ClassID是03,SubClassID是01,其中鍵盤的ProtocolID是01,滑鼠的ProtocolID是02.

想知道有哪些USB Class以及技術規範,需要訪問以下位置獲得文件:

USB.org - USB Device Class Specifications

其中HID Class的:

USB.org - HID Tools

技術規範:

全英文。

如果Windows沒有內建USB HID的Class驅動,那麼鍵盤滑鼠接上去就不能用,必須另外裝驅動才行。

同樣的,也可以想辦法把Windows裡的USB HID驅動解除安裝,這樣鍵盤滑鼠也不能用了,在Linux裡也可以做類似的事情。

在嵌入式開發中,需要單獨做鍵盤滑鼠驅動是很常見的事情。

你想獲得USB的電路圖,恐怕有困難。

USB電路中要有十分穩定的晶振等,你自己設計電路很麻煩,一般來說裝置端的控制晶元都是批量生產做好的,很少有人單獨做,因為自己做電路的話,高頻訊號很難保證。

一般來說USB鍵盤、滑鼠都是把鍵位、移動資料放到乙個USB中斷傳輸裡(跟CPU中斷不是乙個概念),主機端採用polling的方式獲得裝置狀態。

電路層面上,一般都是乙個USB控制晶元搞定,滑鼠把狀態報給USB裝置端的控制晶元,然後剩下的都是控制晶元完成的,各個廠商的控制晶元略有不同,比如羅技的是CP5919AM,一般都是廠商量產的。

如果做開發,那麼一般是用OTG做模擬,但這個開發成本極高,需要學習OTG相關的文件:

USB.org - USB On-The-Go

當然了,一切的前提是要熟讀USB2.0基礎規範:

USB.org - USB 2.0 Documents

補充一下,如果題主要了解,裝置一插上就能用,需要學習Windows驅動開發;

如果題主要了解USB,需要學習USB規範;

這兩個是不同的東西。

常年日復一日堅持跑步是如何做到的

歡苦HH 我就是這樣的.今年33歲了.我每天都堅持很多事情.從25歲開始,我再也沒有熬夜,每天堅持在十點左右睡覺,一到那個點,再好看的電視都停下,我每天喝蜂蜜水,吃個蘋果.每天用防曬霜,每天倒立六分鐘,每週跑步兩次.我生完兩個孩子,但是人家說我象90後.真正能堅持的很少,但是想到自己的精神和身體狀態...

喜歡做飯的人,是如何做到日復一日,並從中得到快樂呢?

李楠 因為有好處 1 日常料理比外賣快 便宜 要點就是增加一桌子菜裡乾糧和蒸菜的比重 比如在煮好的飯裡拌炸花生公尺,蒸飯的同時蒸玉公尺 番薯 增加調味料的種類 胡椒,孜然,味精,蜂蜜 練習刀工 2 心儀料理比外邊好吃 我做出來的酥肉和反沙芋頭比外邊的好吃很多.3 做飯是一種休息 做飯轉移注意力 蔡南...

一些病原體是如何做到操控宿主行為的?

上大學不是上學 病毒把自己的DNA或是逆轉錄出的DNA,整合到宿主細胞的DNA中,再通過宿主細胞自身的基因表達來控制宿主細胞的行為。只知道這些。 切格瓦斯 鐵線蟲,成蟲在水中生活,而幼蟲寄宿在蟋蟀 螞蚱之類的節肢動物體內。幼蟲長大了,為了回到水裡生活 繁殖,會驅使宿主往水裡跳,宿主淹死在水裡,鐵線蟲...