一種鍵盤(pán)宏功能上傳的方法和裝置制造方法
【專(zhuān)利摘要】本發(fā)明涉及計(jì)算機(jī)鍵盤(pán)按鍵功能實(shí)現(xiàn)【技術(shù)領(lǐng)域】,尤其涉及一種鍵盤(pán)宏功能上傳的方法和裝置,將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉為具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口;獲得并解析按鍵指令后提取待執(zhí)行按鍵編碼,通過(guò)按鍵指令接口上傳至主機(jī);接收并解析宏功能指令提取待執(zhí)行宏操作序列,通過(guò)宏指令接口上傳至主機(jī)。鍵盤(pán)的USB設(shè)備分別枚舉用于上傳按鍵指令的按鍵指令接口和用于上傳宏功能指令的宏指令接口,當(dāng)用戶(hù)同時(shí)進(jìn)行按鍵指令輸入和宏功能指令上傳時(shí),按鍵指令接口和宏指令接口分別在鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道中傳輸信息,兩個(gè)動(dòng)作互不干擾,同時(shí)執(zhí)行,提高鍵盤(pán)傳輸數(shù)據(jù)效率。
【專(zhuān)利說(shuō)明】一種鍵盤(pán)宏功能上傳的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)鍵盤(pán)按鍵功能實(shí)現(xiàn)【技術(shù)領(lǐng)域】,尤其涉及一種鍵盤(pán)宏功能上傳的方法和裝置。
【背景技術(shù)】
[0002]宏是目前游戲鍵盤(pán)必備的功能之一,是指通過(guò)將按鍵動(dòng)作按照自己的需求進(jìn)行編輯,并錄制存儲(chǔ)在鍵盤(pán)中,可一次性實(shí)行這批動(dòng)作的功能,也就是把許多指令組合成一個(gè)指令。宏可以讓玩家制作自己喜歡的連續(xù)指令,讓游戲時(shí)使用的快捷鍵變少,減少按一堆按鍵的麻煩,也可以多加一些特殊效果,增加游戲樂(lè)趣。
[0003]目前市場(chǎng)上游戲鍵盤(pán)的宏功能實(shí)現(xiàn)方式主要有兩種,第一種是使用驅(qū)動(dòng)實(shí)現(xiàn),通過(guò)驅(qū)動(dòng)記錄按鍵的按鍵動(dòng)作,保存在PC系統(tǒng)中,當(dāng)宏被觸發(fā)時(shí),驅(qū)動(dòng)再調(diào)出記錄,將動(dòng)作傳給PC系統(tǒng)。第二種是使用驅(qū)動(dòng)來(lái)記錄鍵盤(pán)的按鍵動(dòng)作,然后保存在鍵盤(pán)中,當(dāng)宏被觸發(fā)時(shí),由鍵盤(pán)本身來(lái)進(jìn)行宏的指令解析并上傳給PC系統(tǒng)。在第二種實(shí)現(xiàn)方式中,當(dāng)宏被存儲(chǔ)在鍵盤(pán)后,即使鍵盤(pán)移動(dòng)到?jīng)]有相關(guān)驅(qū)動(dòng)的PC系統(tǒng),也能夠使用已經(jīng)存儲(chǔ)好的宏功能。所以第二種實(shí)現(xiàn)方式相對(duì)于第一種而言更為便捷,應(yīng)用更廣泛。不過(guò)第二種實(shí)現(xiàn)方式中,由于宏的存儲(chǔ)以及上傳都是由鍵盤(pán)本身來(lái)執(zhí)行,實(shí)現(xiàn)的方式更為復(fù)雜,特別是當(dāng)用戶(hù)使用按鍵進(jìn)行輸入和宏指令的上傳產(chǎn)生沖突時(shí),必須放棄一個(gè)動(dòng)作,只執(zhí)行一個(gè)動(dòng)作。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提出一種鍵盤(pán)宏功能上傳的方法和裝置,能夠?qū)崿F(xiàn)鍵盤(pán)按鍵指令輸入與宏功能指令上傳同時(shí)進(jìn)行,兩者互不干擾。
[0005]為達(dá)此目的,本發(fā)明采用以下技術(shù)方案:
[0006]第一方面,提供一種鍵盤(pán)宏功能上傳的方法,包括:
[0007]將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉為具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口 ;
[0008]通過(guò)鍵盤(pán)獲得按鍵指令,解析所述按鍵指令并從預(yù)設(shè)按鍵編碼集合中提取相應(yīng)的待執(zhí)行按鍵編碼,通過(guò)按鍵指令接口上傳所述待執(zhí)行按鍵編碼至主機(jī);
[0009]接收宏功能指令,解析所述宏功能指令并從預(yù)設(shè)宏指令集合中提取相應(yīng)的待執(zhí)行宏操作序列,通過(guò)宏指令接口上傳所述待執(zhí)行宏操作序列至主機(jī)。
[0010]其中,所述宏功能指令通過(guò)按鍵指令觸發(fā)或通過(guò)驅(qū)動(dòng)命令觸發(fā)。
[0011]其中,所述接收宏功能指令之前還包括:通過(guò)按鍵指令開(kāi)啟宏功能或通過(guò)驅(qū)動(dòng)命令開(kāi)啟宏功能。
[0012]其中,所述的鍵盤(pán)宏功能上傳的方法,還包括:建立并存儲(chǔ)宏操作序列與通過(guò)鍵盤(pán)獲得的按壓按鍵、按壓按鍵持續(xù)時(shí)間和松開(kāi)按鍵的操作信息相對(duì)應(yīng)的預(yù)設(shè)宏指令集合。
[0013]其中,所述的鍵盤(pán)宏功能上傳的方法,還包括:建立并存儲(chǔ)按鍵指令和按鍵編碼信息相對(duì)應(yīng)的預(yù)設(shè)按鍵編碼集合。[0014]其中,所述預(yù)設(shè)宏指令集合中的宏操作序列包括向主機(jī)獲取鍵盤(pán)LED狀態(tài)宏操作序列或不向主機(jī)獲取鍵盤(pán)LED狀態(tài)宏操作序列。
[0015]第二方面,提供一種鍵盤(pán)宏功能上傳的裝置,包括將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉得到的具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口;
[0016]所述按鍵指令接口用于上傳所述待執(zhí)行按鍵編碼至主機(jī);所述宏指令接口用于上傳所述待執(zhí)行宏操作序列至主機(jī);
[0017]還包括:
[0018]接收按鍵指令單元:用于通過(guò)鍵盤(pán)獲得按鍵指令,
[0019]解析按鍵指令單元:用于解析所述按鍵指令并從預(yù)設(shè)按鍵編碼集合中提取相應(yīng)的待執(zhí)行按鍵編碼,
[0020]接收宏功能指令單元:用于接收宏功能指令,
[0021]解析宏功能指令單元:用于解析所述宏功能指令并從預(yù)設(shè)宏指令集合中提取相應(yīng)的待執(zhí)行宏操作序列,
[0022]其中,所述的鍵盤(pán)宏功能上傳的裝置,還包括驅(qū)動(dòng)單元:用于發(fā)出驅(qū)動(dòng)命令觸發(fā)宏功能指令。
[0023]其中,所述的鍵盤(pán)宏功能上傳的裝置,還包括預(yù)設(shè)宏指令集合生成單元:用于建立并存儲(chǔ)宏操作序列與通過(guò)鍵盤(pán)獲得的按壓按鍵、按壓按鍵持續(xù)時(shí)間和松開(kāi)按鍵的操作信息相對(duì)應(yīng)的預(yù)設(shè)宏指令集合。
[0024]其中,所述的鍵盤(pán)宏功能上傳的裝置,還包括預(yù)設(shè)按鍵編碼集合生成單元:用于建立并存儲(chǔ)按鍵指令和按鍵編碼信息相對(duì)應(yīng)的預(yù)設(shè)按鍵編碼集合。
[0025]本發(fā)明的有益效果在于:一種鍵盤(pán)宏功能上傳的方法和裝置,將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉為具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口 ;獲得并解析按鍵指令后提取待執(zhí)行按鍵編碼,通過(guò)按鍵指令接口上傳至主機(jī);接收并解析宏功能指令提取待執(zhí)行宏操作序列,通過(guò)宏指令接口上傳至主機(jī)。鍵盤(pán)的USB設(shè)備分別枚舉用于上傳按鍵指令的按鍵指令接口和用于上傳宏功能指令的宏指令接口,當(dāng)用戶(hù)同時(shí)進(jìn)行按鍵指令輸入和宏功能指令上傳時(shí),按鍵指令接口和宏指令接口分別在鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道中傳輸信息,兩個(gè)動(dòng)作互不干擾,同時(shí)執(zhí)行,提高鍵盤(pán)傳輸數(shù)據(jù)效率。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0026]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)本發(fā)明實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單的介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)本發(fā)明實(shí)施例的內(nèi)容和這些附圖獲得其他的附圖。
[0027]圖1是本發(fā)明實(shí)施例1提供的鍵盤(pán)宏功能上傳的方法的流程示意圖;
[0028]圖2是本發(fā)明實(shí)施例2提供的鍵盤(pán)宏功能上傳的方法的流程示意圖;
[0029]圖3是本發(fā)明實(shí)施例3提供的鍵盤(pán)宏功能上傳的裝置的結(jié)構(gòu)示意圖;
[0030]圖4是本發(fā)明實(shí)施例4提供的鍵盤(pán)宏功能上傳的裝置的結(jié)構(gòu)示意圖?!揪唧w實(shí)施方式】
[0031]為使本發(fā)明解決的技術(shù)問(wèn)題、采用的技術(shù)方案和達(dá)到的技術(shù)效果更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施例的技術(shù)方案作進(jìn)一步的詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0032]如圖1所示,為本發(fā)明實(shí)施例1提供的鍵盤(pán)宏功能上傳的方法的流程示意圖;
[0033]提供一種鍵盤(pán)宏功能上傳的方法,包括如下步驟:
[0034]S101、將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉為具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口 ;
[0035]根據(jù)USB規(guī)范中USB鍵盤(pán)應(yīng)用方法,將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道抽象成一個(gè)具有傳輸按鍵編碼功能的按鍵指令接口和一個(gè)具有傳輸宏操作序列功能的宏指令接口。所述USB數(shù)據(jù)傳輸通道指:鍵盤(pán)側(cè)USB驅(qū)動(dòng)、鍵盤(pán)的USB端點(diǎn)、主機(jī)的USB端點(diǎn)、以及兩個(gè)USB端點(diǎn)之間的包括USB數(shù)據(jù)線在內(nèi)的數(shù)據(jù)傳輸通道。
[0036]所述枚舉過(guò)程具體為:首先,鍵盤(pán)側(cè)將傳輸數(shù)據(jù)的鍵盤(pán)USB端點(diǎn)定義為一個(gè)鍵盤(pán)USB接口,并將鍵盤(pán)USB端點(diǎn)通過(guò)USB數(shù)據(jù)線連接到主機(jī)的USB端點(diǎn),之后,主機(jī)向鍵盤(pán)發(fā)送請(qǐng)求,請(qǐng)求獲得所連接的鍵盤(pán)USB接口的鍵盤(pán)信息;鍵盤(pán)在收到請(qǐng)求后,向主機(jī)發(fā)送所請(qǐng)求的鍵盤(pán)信息,然后,主機(jī)在獲得這些信息并根據(jù)此信息確定能夠提供的鍵盤(pán)USB驅(qū)動(dòng),加載相應(yīng)符合USB規(guī)范的鍵盤(pán)USB驅(qū)動(dòng);最終,主機(jī)在得到包括HID報(bào)告描述符的鍵盤(pán)信息之后,認(rèn)為所連接的鍵盤(pán)USB接口的信息已經(jīng)齊全,便由鍵盤(pán)USB驅(qū)動(dòng)對(duì)鍵盤(pán)進(jìn)行配置,配置成功即可實(shí)現(xiàn)鍵盤(pán)與主機(jī)之間的數(shù)據(jù)傳輸。至此,枚舉過(guò)程結(jié)束。經(jīng)過(guò)2次類(lèi)似的枚舉過(guò)程就可實(shí)現(xiàn)將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉為具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口。
[0037]鍵盤(pán)信息中包括鍵盤(pán)的HID報(bào)告描述符,所述的HID報(bào)告描述符為通用的鍵盤(pán)報(bào)告描述符。HID報(bào)告描述符是當(dāng)設(shè)備被定義為一個(gè)HID設(shè)備時(shí)才需要的描述符,這個(gè)描述符表明這個(gè)設(shè)備支持USB協(xié)議的版本號(hào),是否有專(zhuān)有描述符,對(duì)描述符的特征限定,以及定義的主機(jī)和設(shè)備之間通信時(shí)數(shù)據(jù)的組織方式。按鍵指令接口和宏指令接口 HID報(bào)告描述符前幾項(xiàng)舉例如下:
[0038]
【權(quán)利要求】
1.一種鍵盤(pán)宏功能上傳的方法,其特征在于,包括: 將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉為具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口 ; 通過(guò)鍵盤(pán)獲得按鍵指令,解析所述按鍵指令并從預(yù)設(shè)按鍵編碼集合中提取相應(yīng)的待執(zhí)行按鍵編碼,通過(guò)按鍵指令接口上傳所述待執(zhí)行按鍵編碼至主機(jī); 接收宏功能指令,解析所述宏功能指令并從預(yù)設(shè)宏指令集合中提取相應(yīng)的待執(zhí)行宏操作序列,通過(guò)宏指令接口上傳所述待執(zhí)行宏操作序列至主機(jī)。
2.根據(jù)權(quán)利要求1所述的鍵盤(pán)宏功能上傳的方法,其特征在于,所述宏功能指令通過(guò)按鍵指令觸發(fā)或通過(guò)驅(qū)動(dòng)命令觸發(fā)。
3.根據(jù)權(quán)利要求1所述的鍵盤(pán)宏功能上傳的方法,其特征在于,所述接收宏功能指令之前還包括:通過(guò)按鍵指令開(kāi)啟宏功能或通過(guò)驅(qū)動(dòng)命令開(kāi)啟宏功能。
4.根據(jù)權(quán)利要求1所述的鍵盤(pán)宏功能上傳的方法,其特征在于,還包括:建立并存儲(chǔ)宏操作序列與通過(guò)鍵盤(pán)獲得的按壓按鍵、按壓按鍵持續(xù)時(shí)間和松開(kāi)按鍵的操作信息相對(duì)應(yīng)的預(yù)設(shè)宏指令集合。
5.根據(jù)權(quán)利要求1所述的鍵盤(pán)宏功能上傳的方法,其特征在于,還包括:建立并存儲(chǔ)按鍵指令和按鍵編碼信息相對(duì)應(yīng)的預(yù)設(shè)按鍵編碼集合。
6.根據(jù)權(quán)利要求1所述的鍵盤(pán)宏功能上傳的方法,其特征在于,所述預(yù)設(shè)宏指令集合中的宏操作序列包括向主機(jī)獲取鍵盤(pán)LED狀態(tài)宏操作序列或不向主機(jī)獲取鍵盤(pán)LED狀態(tài)宏操作序列。
7.—種鍵盤(pán)宏功能上傳的裝置,其特征在于,包括將鍵盤(pán)和主機(jī)之間的USB數(shù)據(jù)傳輸通道枚舉得到的具有傳輸按鍵編碼功能的按鍵指令接口和具有傳輸宏操作序列功能的宏指令接口 ; 所述按鍵指令接口用于上傳所述待執(zhí)行按鍵編碼至主機(jī);所述宏指令接口用于上傳所述待執(zhí)行宏操作序列至主機(jī); 還包括: 接收按鍵指令單元:用于通過(guò)鍵盤(pán)獲得按鍵指令, 解析按鍵指令單元:用于解析所述按鍵指令并從預(yù)設(shè)按鍵編碼集合中提取相應(yīng)的待執(zhí)行按鍵編碼, 接收宏功能指令單元:用于接收宏功能指令, 解析宏功能指令單元:用于解析所述宏功能指令并從預(yù)設(shè)宏指令集合中提取相應(yīng)的待執(zhí)行宏操作序列。
8.根據(jù)權(quán)利要求7所述的鍵盤(pán)宏功能上傳的裝置,其特征在于,還包括: 驅(qū)動(dòng)單元:用于發(fā)出驅(qū)動(dòng)命令觸發(fā)宏功能指令。
9.根據(jù)權(quán)利要求7所述的鍵盤(pán)宏功能上傳的裝置,其特征在于,還包括: 預(yù)設(shè)宏指令集合生成單元:用于建立并存儲(chǔ)宏操作序列與通過(guò)鍵盤(pán)獲得的按壓按鍵、按壓按鍵持續(xù)時(shí)間和松開(kāi)按鍵的操作信息相對(duì)應(yīng)的預(yù)設(shè)宏指令集合。
10.根據(jù)權(quán)利要求7所述的鍵盤(pán)宏功能上傳的裝置,其特征在于,還包括: 預(yù)設(shè)按鍵編碼集合生成單元:用于建立并存儲(chǔ)按鍵指令和按鍵編碼信息相對(duì)應(yīng)的預(yù)設(shè)按鍵編碼集合。
【文檔編號(hào)】G06F3/023GK103455456SQ201310404900
【公開(kāi)日】2013年12月18日 申請(qǐng)日期:2013年9月6日 優(yōu)先權(quán)日:2013年9月6日
【發(fā)明者】何俊宏, 鄧有幫 申請(qǐng)人:深圳雷柏科技股份有限公司