本發(fā)明屬于usb設(shè)備驅(qū)動(dòng),具體是一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法。
背景技術(shù):
1、usb(universal?serial?bus)是一種常用的外部設(shè)備連接標(biāo)準(zhǔn),它提供了一種可靠、高速和通用的數(shù)據(jù)傳輸接口。usb設(shè)備通常需要驅(qū)動(dòng)程序來(lái)與計(jì)算機(jī)進(jìn)行通信和交互。傳統(tǒng)上,為了與usb設(shè)備進(jìn)行通信,需要安裝特定的設(shè)備驅(qū)動(dòng)程序,以便操作系統(tǒng)能夠正確識(shí)別和控制設(shè)備。
2、現(xiàn)有技術(shù)通過(guò)為usb設(shè)備編寫(xiě)并安裝對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序,實(shí)現(xiàn)了usb設(shè)備與windows操作系統(tǒng)之間的通信;然而,現(xiàn)有技術(shù)的方案對(duì)于不同的usb設(shè)備通常需要不同的驅(qū)動(dòng)程序,這使得在使用不同設(shè)備時(shí)需要安裝和管理多個(gè)驅(qū)動(dòng)程序,導(dǎo)致驅(qū)動(dòng)程序的沖突和不兼容性問(wèn)題;同時(shí),隨著windows操作系統(tǒng)的更新,usb設(shè)備的驅(qū)動(dòng)程序需要更新以確保與新版本的操作系統(tǒng)兼容;此外,安裝特定的usb設(shè)備驅(qū)動(dòng)程序通常需要管理員權(quán)限,增加了用戶設(shè)置和部署usb設(shè)備的難度。
3、本發(fā)明提供了一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,以解決以上技術(shù)問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明旨在至少解決現(xiàn)有技術(shù)中存在的技術(shù)問(wèn)題之一;為此,本發(fā)明提出了一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,用于解決現(xiàn)有技術(shù)的方案對(duì)于不同的usb設(shè)備通常需要不同的驅(qū)動(dòng)程序,這使得在使用不同設(shè)備時(shí)需要安裝和管理多個(gè)驅(qū)動(dòng)程序,導(dǎo)致驅(qū)動(dòng)程序的沖突和不兼容性問(wèn)題;同時(shí),隨著windows操作系統(tǒng)的更新,usb設(shè)備的驅(qū)動(dòng)程序需要更新以確保與新版本的操作系統(tǒng)兼容;此外,安裝特定的usb設(shè)備驅(qū)動(dòng)程序通常需要管理員權(quán)限,增加了用戶設(shè)置和部署usb設(shè)備的難度的技術(shù)問(wèn)題。
2、為實(shí)現(xiàn)上述目的,本發(fā)明的第一方面提供了一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,包括:
3、步驟一:將自定義usb設(shè)備識(shí)別為wcid設(shè)備;其中,wcid(windows?compatible?id)指兼容id,wcid設(shè)備具有wcid值;
4、步驟二:將wcid設(shè)備對(duì)應(yīng)的wcid值上傳至windows操作系統(tǒng);
5、步驟三:將通信接口的guid注冊(cè)到windows操作系統(tǒng)的注冊(cè)表中;其中,guid(globally?unique?identifier)為windows操作系統(tǒng)中的全局唯一標(biāo)識(shí)符,通信接口為自定義usb設(shè)備與windows操作系統(tǒng)之間通信所用的接口;
6、步驟四:將自定義usb設(shè)備接入運(yùn)行有windows操作系統(tǒng)的計(jì)算機(jī)中,windows操作系統(tǒng)自動(dòng)為自定義usb設(shè)備安裝winusb通用驅(qū)動(dòng)程序;
7、步驟五:windows操作系統(tǒng)通過(guò)usb?api與自定義usb設(shè)備進(jìn)行通信;其中,usb?api由windows操作系統(tǒng)提供,usb?api包括打開(kāi)設(shè)備函數(shù)、讀取數(shù)據(jù)函數(shù)和寫(xiě)入數(shù)據(jù)函數(shù)。
8、優(yōu)選的,windows操作系統(tǒng)的版本為windows8以及之后的版本。
9、優(yōu)選的,所述將自定義usb設(shè)備識(shí)別為wcid設(shè)備,包括:
10、在自定義usb設(shè)備中編寫(xiě)第一描述符,將第一描述符的內(nèi)容按照wcid的規(guī)范進(jìn)行設(shè)置,設(shè)置完成后自定義usb設(shè)備被識(shí)別為wcid設(shè)備;其中,第一描述符包括描述符長(zhǎng)度、描述符類型、若干個(gè)字符串簽名、供應(yīng)商代碼和保留字節(jié)。
11、本發(fā)明通過(guò)在自定義usb設(shè)備的設(shè)備描述符中添加wcid設(shè)備對(duì)應(yīng)的描述代碼將自定義usb設(shè)備識(shí)別為wcid設(shè)備,windows操作系統(tǒng)提供的winusb通用驅(qū)動(dòng)程序能夠與wcid設(shè)備進(jìn)行匹配,從而實(shí)現(xiàn)了自定義usb設(shè)備免安裝驅(qū)動(dòng)與windows操作系統(tǒng)通信,有利于提高自定義usb設(shè)備的易用性和兼容性。
12、優(yōu)選的,所述將wcid設(shè)備對(duì)應(yīng)的wcid值上傳至windows操作系統(tǒng),包括:
13、在自定義usb設(shè)備中編寫(xiě)第二描述符,將第二描述符中wcid設(shè)備對(duì)應(yīng)的wcid值設(shè)置為winusb,并將第二描述符上報(bào)至windows操作系統(tǒng);其中,第二描述符包括描述符長(zhǎng)度、描述符版本、wcid的描述符索引、字節(jié)數(shù)、保留數(shù)據(jù)、接口信息、接口編號(hào)、保留字節(jié)和子兼容id。
14、優(yōu)選的,所述將通信接口的guid注冊(cè)到windows操作系統(tǒng)的注冊(cè)表中,包括:
15、在自定義usb設(shè)備中編寫(xiě)第三描述符,將第三描述符中通信接口的guid設(shè)置為自定義usb設(shè)備與windows操作系統(tǒng)的通信接口對(duì)應(yīng)的guid,將第三描述符上報(bào)至windows操作系統(tǒng),windows操作系統(tǒng)將guid寫(xiě)入注冊(cè)表中;其中,第三描述符包括wcid的屬性描述符、注冊(cè)表的屬性描述符、屬性描述符長(zhǎng)度、描述符類型、屬性名稱長(zhǎng)度、通信接口的guid、屬性名稱數(shù)據(jù)、屬性數(shù)據(jù)長(zhǎng)度、通信接口的guid的unicode格式數(shù)據(jù)。
16、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
17、本發(fā)明通過(guò)將自定義的usb設(shè)備標(biāo)識(shí)為wcid設(shè)備,將wcid設(shè)備的wcid值設(shè)置為winusb,使用winusb通用驅(qū)動(dòng)程序,實(shí)現(xiàn)了usb設(shè)備與windows操作系統(tǒng)的免驅(qū)動(dòng)通信;與現(xiàn)有的usb通信方案相比,本發(fā)明無(wú)需安裝特定的設(shè)備驅(qū)動(dòng)程序,簡(jiǎn)化了usb設(shè)備的部署和使用,有利于提高usb設(shè)備的兼容性和易用性;此外,由于只需維護(hù)和更新windows操作系統(tǒng)提供的winusb通用驅(qū)動(dòng)程序,無(wú)需針對(duì)每個(gè)usb設(shè)備中特定的驅(qū)動(dòng)程序進(jìn)行維護(hù)和更新,因此有利于降低對(duì)usb設(shè)備的驅(qū)動(dòng)程序進(jìn)行維護(hù)更新的成本。
1.一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,其特征在于,
2.根據(jù)權(quán)利要求1所述的一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,其特征在于,windows操作系統(tǒng)的版本為windows8以及之后的版本。
3.根據(jù)權(quán)利要求1所述的一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,其特征在于,所述將自定義usb設(shè)備識(shí)別為wcid設(shè)備,包括:
4.根據(jù)權(quán)利要求1所述的一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,其特征在于,所述將wcid設(shè)備對(duì)應(yīng)的wcid值上傳至windows操作系統(tǒng),包括:
5.根據(jù)權(quán)利要求1所述的一種usb設(shè)備與windows系統(tǒng)免驅(qū)動(dòng)通信的方法,其特征在于,所述將通信接口的guid注冊(cè)到windows操作系統(tǒng)的注冊(cè)表中,包括: