專利名稱:一種數(shù)據(jù)傳輸?shù)姆椒?br>
技術(shù)領(lǐng)域:
本發(fā)明涉及無(wú)線通信技術(shù)領(lǐng)域,尤其涉及一種紅外遙控器雙向數(shù)據(jù)傳輸?shù)姆椒ā?
背景技術(shù):
紅外線遙控器是一種近程無(wú)線控制設(shè)備,可以對(duì)各種電器進(jìn)行遙控,給人們的生活帶來(lái)很大的便利。例如,用于遙控電視機(jī)的紅外線遙控器,用戶可以直接利用紅外線遙控器上的數(shù)字鍵進(jìn)行換臺(tái),利用紅外線遙控器上的音量調(diào)節(jié)鍵控制電視機(jī)音量的大小等。在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有的紅外線遙控器至少存在以下問(wèn)題目前的紅外線遙控器和接收端無(wú)法實(shí)現(xiàn)雙向數(shù)據(jù)通信的功能;無(wú)法實(shí)現(xiàn)標(biāo)準(zhǔn)的USB鼠標(biāo)和 USB鍵盤(pán)的功能;無(wú)法在安裝常用的操作系統(tǒng)的接收端中使用。例如,用于遙控電視機(jī)或電腦的紅外線遙控器,無(wú)法直接在Windows、Android、Linux、Ubuntu等常用的系統(tǒng)輸入光標(biāo)和鍵盤(pán)數(shù)據(jù)。
發(fā)明內(nèi)容
本發(fā)明提供一種數(shù)據(jù)傳輸?shù)姆椒?,?shí)現(xiàn)紅外線遙控器數(shù)據(jù)雙向傳輸,使紅外線遙控器在其遙控的安裝常用操作系統(tǒng)的電器中實(shí)現(xiàn)了 USB鼠標(biāo)和USB鍵盤(pán)的全部功能。本發(fā)明實(shí)施例提供一種數(shù)據(jù)傳輸?shù)姆椒?,包?br>
紅外遙控器和接收端之間采用雙向指令數(shù)據(jù)幀,建立雙向通信連接; 所述紅外遙控器集成有鼠標(biāo)元件,當(dāng)檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù),再將所述鼠標(biāo)數(shù)據(jù)轉(zhuǎn)換成適合紅外線傳輸?shù)氖髽?biāo)數(shù)據(jù)幀,并發(fā)送給所述接收端;
所述紅外遙控器集成有鍵盤(pán)元件,當(dāng)檢測(cè)到用戶操作所述鍵盤(pán)元件時(shí),實(shí)時(shí)生成鍵盤(pán)數(shù)據(jù),再將所述鍵盤(pán)數(shù)據(jù)轉(zhuǎn)換成適合紅外線傳輸?shù)逆I盤(pán)數(shù)據(jù)幀,并發(fā)送給所述接收端;
所述接收端接收所述紅外遙控器發(fā)送的鼠標(biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀,分別轉(zhuǎn)換成支持 HID協(xié)議的USB數(shù)據(jù),供給操作系統(tǒng)調(diào)用。在一個(gè)實(shí)施方式中,當(dāng)所述紅外線遙控器檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),以固定每秒20點(diǎn)采樣率實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù)。其中,所述鼠標(biāo)數(shù)據(jù)幀包括光標(biāo)移動(dòng)數(shù)據(jù)幀;所述光標(biāo)移動(dòng)數(shù)據(jù)幀包括頭碼、標(biāo)示碼、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼;
所述標(biāo)示碼為8位,包括位于高4位的Y溢出位、X溢出位、Y標(biāo)示位和X標(biāo)示位;所述標(biāo)示碼的高4位、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼的總位數(shù)為m ;
所述標(biāo)示碼還包括數(shù)據(jù)壓縮標(biāo)示位;當(dāng)所述標(biāo)示碼的高4位、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼所承載的二進(jìn)制數(shù)據(jù)中,1的個(gè)數(shù)大于m/2時(shí),將所述數(shù)據(jù)壓縮標(biāo)示位置1,且將所承載的二進(jìn)制數(shù)據(jù)全部取反;否則將所述數(shù)據(jù)壓縮標(biāo)示位置0。本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸?shù)姆椒ǎ诩t外遙控器中集成鼠標(biāo)元件和鍵盤(pán)元件,當(dāng)檢測(cè)到用戶操作鼠標(biāo)和鍵盤(pán),實(shí)時(shí)生成適合紅外線傳輸?shù)氖髽?biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀, 并發(fā)送給接收端。接收端將接收到紅鼠標(biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀分別轉(zhuǎn)換成支持HID協(xié)議的USB數(shù)據(jù),供給操作系統(tǒng)調(diào)用。本發(fā)明能夠?qū)崿F(xiàn)紅外線遙控器數(shù)據(jù)雙向傳輸,使紅外線遙控器在其遙控的安裝常用操作系統(tǒng)的電器中實(shí)現(xiàn)了 USB鼠標(biāo)和USB鍵盤(pán)的全部功能。而且, USB鼠標(biāo)能夠?qū)崿F(xiàn)每秒20點(diǎn)的采樣率。
圖1是標(biāo)準(zhǔn)的PS/2鼠標(biāo)數(shù)據(jù)幀的結(jié)構(gòu)示意圖2是微軟對(duì)標(biāo)準(zhǔn)的PS/2鼠標(biāo)擴(kuò)展的PS/2數(shù)據(jù)幀的結(jié)構(gòu)示意圖; 圖3是本發(fā)明實(shí)施例一提供的數(shù)據(jù)傳輸?shù)姆椒ǖ牧鞒淌疽鈭D; 圖4是本發(fā)明實(shí)施例二提供的雙向指令數(shù)據(jù)幀的結(jié)構(gòu)示意圖; 圖5是本發(fā)明實(shí)施例三提供的光標(biāo)移動(dòng)數(shù)據(jù)幀的結(jié)構(gòu)示意圖; 圖6是本發(fā)明實(shí)施例四提供的鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀的結(jié)構(gòu)示意圖; 圖7是本發(fā)明實(shí)施例五提供的鍵盤(pán)一字節(jié)通碼幀的結(jié)構(gòu)示意圖; 圖8是本發(fā)明實(shí)施例六提供的鍵盤(pán)兩字節(jié)通碼幀的結(jié)構(gòu)示意圖; 圖9是本發(fā)明實(shí)施例七提供的鍵盤(pán)兩字節(jié)斷碼幀的結(jié)構(gòu)示意圖; 圖10是本發(fā)明實(shí)施例八提供的鍵盤(pán)三字節(jié)斷碼幀的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例涉及的設(shè)備包括紅外遙控器和接收端。其中,紅外遙控器集成有鼠標(biāo)元件,該鼠標(biāo)元件可以是指點(diǎn)桿(Track Point)、光學(xué)觸摸鼠標(biāo)(Optical Touch Mouse)、 觸摸板(Tach Pad)、軌跡球鼠標(biāo)(Tradiball)等支持PS/2協(xié)議的鼠標(biāo)之一。此外,紅外遙控器還集成有鍵盤(pán)元件,該鍵盤(pán)元件包括標(biāo)準(zhǔn)PC機(jī)鍵盤(pán),以及其他擴(kuò)展按鍵。該擴(kuò)展按鍵可以是控制電視機(jī)的按鍵,例如選頻鍵、音量調(diào)節(jié)鍵等。接收端是指紅外遙控器所遙控的終端,例如計(jì)算機(jī)、電腦、電視機(jī)等電器。接收端安裝有支持HID (Hnman Interface Devices,人機(jī)接口設(shè)備)的USB鼠標(biāo)和USB鍵盤(pán)的操作系統(tǒng),如Windows、Android、Linux、Ubuntu等常用操作系統(tǒng)。在紅外遙控器和接收端之間傳輸?shù)逆I盤(pán)數(shù)據(jù)幀,除標(biāo)準(zhǔn)PC鍵盤(pán)的數(shù)據(jù)幀外,其它擴(kuò)展的按鍵都采用標(biāo)準(zhǔn)的NEC編碼數(shù)據(jù)格式發(fā)送。參見(jiàn)圖1,是標(biāo)準(zhǔn)的PS/2鼠標(biāo)數(shù)據(jù)幀的結(jié)構(gòu)示意圖。標(biāo)準(zhǔn)的PS/2鼠標(biāo)發(fā)送位移和按鍵信息給主機(jī)采用3字節(jié)數(shù)據(jù)包格式,分別是 Byte UByte 2,Byte 3。位移計(jì)數(shù)器是一個(gè)9位2進(jìn)制的補(bǔ)碼整數(shù)。它的最高位作為符號(hào)位出現(xiàn)在位移數(shù)據(jù)包的第一個(gè)字節(jié)Byte 1里。位移計(jì)數(shù)器可表示的值的范圍是-255 到+255。如果超過(guò)了范圍,相應(yīng)的溢出位就被設(shè)置,并且在復(fù)位前計(jì)數(shù)器不會(huì)增減。參見(jiàn)圖2,是微軟對(duì)標(biāo)準(zhǔn)的PS/2鼠標(biāo)擴(kuò)展的PS/2數(shù)據(jù)幀的結(jié)構(gòu)示意圖。對(duì)標(biāo)準(zhǔn)的PS/2鼠標(biāo)的一個(gè)流行的擴(kuò)展是微軟的鼠標(biāo)協(xié)議。目前我們?cè)谑褂玫?PS/2鼠標(biāo)都支持微軟的擴(kuò)展功能。它包括支持五個(gè)鼠標(biāo)按鍵和三個(gè)位移軸(左、右、上、
4下和滾輪)。這些附加特征要求使用4字節(jié)的位移數(shù)據(jù)包而不是標(biāo)準(zhǔn)3字節(jié)包,因?yàn)闃?biāo)準(zhǔn) PS/2鼠標(biāo)驅(qū)動(dòng)不認(rèn)識(shí)這個(gè)數(shù)據(jù)包的格式。因此微軟的擴(kuò)展鼠標(biāo)協(xié)議要求嚴(yán)格按照標(biāo)準(zhǔn) PS/2鼠標(biāo)來(lái)操作,除非它知道驅(qū)動(dòng)程序支持?jǐn)U展數(shù)據(jù)包格式。如果微軟的擴(kuò)展鼠標(biāo)協(xié)議用于一臺(tái)只支持標(biāo)準(zhǔn)PS/2鼠標(biāo)的計(jì)算機(jī)它依然是有功能的只是滾輪和第4、5按鍵不起作用。參見(jiàn)圖3,是本發(fā)明實(shí)施例一提供的數(shù)據(jù)傳輸?shù)姆椒ǖ牧鞒淌疽鈭D。本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸?shù)姆椒ǎㄒ韵虏襟E
Si、紅外遙控器和接收端之間采用雙向指令數(shù)據(jù)幀,建立雙向通信連接;
511、紅外遙控器集成有鼠標(biāo)元件,當(dāng)檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù);
512、紅外遙控器將所述鼠標(biāo)數(shù)據(jù)轉(zhuǎn)換成適合紅外線傳輸?shù)氖髽?biāo)數(shù)據(jù)幀,并發(fā)送給所述接收端;其中,所述鼠標(biāo)數(shù)據(jù)幀包括光標(biāo)移動(dòng)數(shù)據(jù)幀和鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀;
S21、紅外遙控器集成有鍵盤(pán)元件,當(dāng)檢測(cè)到用戶操作所述鍵盤(pán)元件時(shí),實(shí)時(shí)生成鍵盤(pán)數(shù)據(jù);
S21、紅外遙控器將所述鍵盤(pán)數(shù)據(jù)轉(zhuǎn)換成適合紅外線傳輸?shù)逆I盤(pán)數(shù)據(jù)幀,并發(fā)送給所述接收端;
S3、接收端接收所述紅外遙控器發(fā)送的鼠標(biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀,分別轉(zhuǎn)換成支持HID 協(xié)議的USB數(shù)據(jù),供給操作系統(tǒng)調(diào)用。 紅外線遙控器設(shè)定集成在自身的鼠標(biāo)元件的采樣率為每秒20點(diǎn),在上述步驟Sll 中,當(dāng)紅外線遙控器檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),以固定每秒20點(diǎn)采樣率實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù)。在本發(fā)明實(shí)施例中,紅外遙控器采用與NEC編碼相同的37. 9KHz載波頻率,傳輸所述光標(biāo)移動(dòng)數(shù)據(jù)幀和所述鍵盤(pán)數(shù)據(jù)幀;數(shù)據(jù)1采用與NEC編碼標(biāo)準(zhǔn)相同的0. 56ms的 37. 9KHz載波與1. 68ms無(wú)載波的時(shí)間間隔組成;數(shù)據(jù)0采用與NEC編碼標(biāo)準(zhǔn)相同的0. 56ms 的37. 9KHz載波與0. 56ms無(wú)載波的時(shí)間間隔組成。即數(shù)據(jù)1的發(fā)送時(shí)間為2. 2%is,數(shù)據(jù)0 的發(fā)送時(shí)間為1. 12ms,
紅外線遙控器自身集成的鼠標(biāo)或鍵盤(pán),采用雙向通信的方式與接收端建立連接。參見(jiàn)圖4,是本發(fā)明實(shí)施例二提供的雙向指令數(shù)據(jù)幀的結(jié)構(gòu)示意圖。紅外線遙控器的雙向指令數(shù)據(jù)幀包括頭碼(Head data)、標(biāo)示碼(Flag data)和指令碼(Command data)。具體如下
頭碼由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。本實(shí)施例僅以標(biāo)示碼為8位(bit)為例進(jìn)行說(shuō)明,該標(biāo)示碼至少包括發(fā)送接收標(biāo)示位、鼠標(biāo)標(biāo)示位和鍵盤(pán)標(biāo)示位,其余作為擴(kuò)展位保留使用。本實(shí)施例僅以指令碼為8 bit為例進(jìn)行說(shuō)明,該指令碼用于接收端和紅外遙控器通信使用,主要是設(shè)置紅外遙控器的鼠標(biāo)或鍵盤(pán)的工作方式,例如,指令碼為0XF3、X,表示設(shè)置鼠標(biāo)的采樣率為X。參見(jiàn)圖5,是本發(fā)明實(shí)施例三提供的光標(biāo)移動(dòng)數(shù)據(jù)幀的結(jié)構(gòu)示意圖。當(dāng)紅外遙控器檢測(cè)到用戶移動(dòng)鼠標(biāo)元件時(shí),以固定每秒20點(diǎn)采樣率實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù)。紅外遙控器再將實(shí)時(shí)接收的鼠標(biāo)數(shù)據(jù)拼成適合紅外線傳輸?shù)墓鈽?biāo)移動(dòng)數(shù)據(jù)幀,并發(fā)送給接收端。所述光標(biāo)移動(dòng)數(shù)據(jù)幀包括頭碼(Head data)、標(biāo)示碼(Flag data)、X位移數(shù)據(jù)碼(X Movement)和Y位移數(shù)據(jù)碼(Y Movement)。光標(biāo)移動(dòng)數(shù)據(jù)幀的標(biāo)示碼為8位,包括位于高4位的Y溢出位(Y overflow),X溢出位(X overflow)、Y標(biāo)示位(Y sign bit)和X標(biāo)示位(X sign bit);所述標(biāo)示碼的高4 位、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼的總位數(shù)為m。光標(biāo)移動(dòng)數(shù)據(jù)幀的標(biāo)示碼還包括數(shù)據(jù)壓縮標(biāo)示位(Data Compression flag);當(dāng)所述標(biāo)示碼的高4位、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼所承載的二進(jìn)制數(shù)據(jù)中,1的個(gè)數(shù)大于 m/2時(shí),將所述數(shù)據(jù)壓縮標(biāo)示位置1,且將所承載的二進(jìn)制數(shù)據(jù)全部取反;否則將所述數(shù)據(jù)壓縮標(biāo)示位置0。在一個(gè)優(yōu)選的實(shí)施例中,光標(biāo)移動(dòng)數(shù)據(jù)幀的X位移數(shù)據(jù)碼為8位,Y位移數(shù)據(jù)碼為 8位。如圖5所示,本發(fā)明實(shí)施例僅以光標(biāo)移動(dòng)數(shù)據(jù)幀的標(biāo)示碼為8位,X位移數(shù)據(jù)碼為 8位,Y位移數(shù)據(jù)碼均為8位為例,對(duì)光標(biāo)移動(dòng)數(shù)據(jù)幀的結(jié)構(gòu)進(jìn)行詳細(xì)說(shuō)明,如下
光標(biāo)移動(dòng)數(shù)據(jù)幀中的頭碼(Head data)由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般要小于9. 5ms,最大不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。光標(biāo)移動(dòng)數(shù)據(jù)幀中的標(biāo)示碼從BIT7到BITO分別是Y overflow、X overflow、Y sign bit、X sign bit、Data Compression flag、Middle Btn、Right Btn、Left Btn,除 BIT3以外,其余與標(biāo)準(zhǔn)PS/2協(xié)議相同,如圖1所示,在此不進(jìn)和詳細(xì)說(shuō)明。標(biāo)示碼中的Y overflow、X overflow、Y sign bit、X sign bit、Middle Btn、Right Btn、Left Btn 分另lj 填入實(shí)時(shí)接收的鼠標(biāo)數(shù)據(jù)中的相應(yīng)數(shù)據(jù)即可,不需要更改。光標(biāo)移動(dòng)數(shù)據(jù)幀中的X位移數(shù)據(jù)碼(X Movement)和Y位移數(shù)據(jù)碼(Y Movement) 分別填入實(shí)時(shí)接收的鼠標(biāo)數(shù)據(jù)中的相應(yīng)數(shù)據(jù)即可,不需要更改。標(biāo)示碼的BIT3是數(shù)據(jù)壓縮標(biāo)志位(Data Compression flag)。當(dāng)標(biāo)示碼的高4位 (Y overflows overflow^ sign bit,X sign bit)、X 位移數(shù)據(jù)碼(X Movement)和 Y 位移數(shù)據(jù)碼(Y Movement)所承載的二進(jìn)制數(shù)據(jù)中,1的個(gè)數(shù)超過(guò)總位數(shù)的一半(即超過(guò)10)時(shí), BIT3設(shè)為數(shù)據(jù)1,且所承載的二進(jìn)制數(shù)據(jù)全部取反;否則BIT3設(shè)為數(shù)據(jù)0。為了使USB鼠標(biāo)能夠?qū)崿F(xiàn)每秒20點(diǎn)的采樣速率,則每一數(shù)據(jù)幀的發(fā)送時(shí)間不能超過(guò)50ms。由于數(shù)據(jù)1的發(fā)送時(shí)間為2. 2%is,數(shù)據(jù)0的發(fā)送時(shí)間為1. Urns,而標(biāo)示碼為8 位,則標(biāo)示位的最大發(fā)送時(shí)間大約為18ms (計(jì)算方法2.2%isX8),同理X位移數(shù)據(jù)碼和Y 位移數(shù)據(jù)碼的最大發(fā)送時(shí)間也大約為18ms。因此,如果不對(duì)數(shù)據(jù)進(jìn)行壓縮,那么標(biāo)示碼、 X數(shù)據(jù)位移碼和Y數(shù)據(jù)位移碼的最大發(fā)送時(shí)間為18+18+18=5%is,即不包括頭碼就已經(jīng)超過(guò)50ms 了,USB鼠標(biāo)無(wú)法實(shí)現(xiàn)每秒20點(diǎn)的采樣速率。因?yàn)閿?shù)據(jù)0的發(fā)送時(shí)間小于數(shù)據(jù)1 的發(fā)送時(shí)間,所以盡量減少數(shù)據(jù)幀中的數(shù)據(jù)1的個(gè)數(shù),就可以減少發(fā)送時(shí)間?;谝陨显恚景l(fā)明實(shí)施例提供的數(shù)據(jù)傳輸?shù)姆椒?,?dāng)標(biāo)識(shí)碼的高4位(Y overflow, X overflow, Y sign bit、X sign bit)、X 位移數(shù)據(jù)碼(X Movement)和 Y 位移數(shù)據(jù)碼(Y Movement)所承載的20位數(shù)據(jù)中,數(shù)據(jù)1的個(gè)數(shù)超過(guò)總位數(shù)的一半時(shí),就把標(biāo)示碼中的BIT3設(shè)為數(shù)據(jù)1, 同時(shí)以上20位數(shù)據(jù)全部取反,否則BIT3設(shè)為數(shù)據(jù)0。這樣標(biāo)示碼的最大發(fā)送時(shí)間就變?yōu)榇蠹s13. 5 ms (計(jì)算方法2. 24ms X 4 + 1. 12ms X 4),同理X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼的最大發(fā)送時(shí)間也變?yōu)?3. 5 ms,則標(biāo)示碼、X數(shù)據(jù)位移碼和Y數(shù)據(jù)位移碼的最大發(fā)送時(shí)間為 13. 5+13. 5+13. 5=40. 5ms,那么只要頭碼的最大發(fā)送時(shí)間不超過(guò)9. 5ms,就能使每一數(shù)據(jù)幀的發(fā)送時(shí)間不超過(guò)50ms,從而使USB鼠標(biāo)能夠?qū)崿F(xiàn)每秒20點(diǎn)的采樣速率。參見(jiàn)圖6,是本發(fā)明實(shí)施例四提供的鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀的結(jié)構(gòu)示意圖。當(dāng)紅外遙控器檢測(cè)到鼠標(biāo)滾輪轉(zhuǎn)動(dòng)時(shí),以固定每秒20點(diǎn)采樣率實(shí)時(shí)生成鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)。紅外遙控器再將實(shí)時(shí)接收的鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)拼成適合紅外線傳輸?shù)氖髽?biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀,并發(fā)送給接收端。所述鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀包括頭碼(Head data)和Z位移數(shù)據(jù)碼(Z Movement)ο如下
鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)的頭碼由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。Z 位移數(shù)據(jù)碼從 BIT7 到 BITO 分別為Always 0、Always 0,5th Btn、4th Btn、Z3 、Z2、ZU Z0,與微軟的擴(kuò)展鼠PS/2標(biāo)協(xié)議的Byte 4數(shù)據(jù)完全相同,如圖2所示,在此不進(jìn)行詳細(xì)說(shuō)明。本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸?shù)姆椒?,?dāng)紅外遙控器檢測(cè)到用戶操作鍵盤(pán)元件時(shí),實(shí)時(shí)生成鍵盤(pán)數(shù)據(jù),再將所述鍵盤(pán)數(shù)據(jù)拼成適合紅外線傳輸?shù)逆I盤(pán)數(shù)據(jù)幀,并發(fā)送給接收端。其中,所述鍵盤(pán)數(shù)據(jù)幀包括頭碼和至少一個(gè)字節(jié)的通碼;所述通碼用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù);或者,所述鍵盤(pán)數(shù)據(jù)幀包括頭碼和至少一個(gè)字節(jié)的斷碼;所述斷碼用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù)。具體實(shí)施時(shí),鍵盤(pán)數(shù)據(jù)幀可以采用鍵盤(pán)一字節(jié)通碼幀、鍵盤(pán)兩字節(jié)通碼幀、鍵盤(pán)兩字節(jié)斷碼幀或者鍵盤(pán)三字節(jié)斷碼幀的結(jié)構(gòu)模式。下面結(jié)合圖r圖 ο進(jìn)行詳細(xì)說(shuō)明。參見(jiàn)圖7,是本發(fā)明實(shí)施例五提供的鍵盤(pán)一字節(jié)通碼幀的結(jié)構(gòu)示意圖。本實(shí)施例提供的鍵盤(pán)一字節(jié)通碼幀包括頭碼(Head data)和一個(gè)字節(jié)的通碼 (Make Code),如下
鍵盤(pán)一字節(jié)通碼幀的頭碼由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。鍵盤(pán)一字節(jié)通碼幀的通碼為8位,即一字節(jié),用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù)。通碼填入實(shí)時(shí)接收的PS/2協(xié)議鍵盤(pán)數(shù)據(jù)中的相應(yīng)數(shù)據(jù)即可,不需要更改。參見(jiàn)圖8,是本發(fā)明實(shí)施例六提供的鍵盤(pán)兩字節(jié)通碼幀的結(jié)構(gòu)示意圖。本實(shí)施例提供的鍵盤(pán)兩字節(jié)通碼幀包括頭碼(Head data)和兩個(gè)字節(jié)的通碼 (Make Code),如下
鍵盤(pán)兩字節(jié)通碼幀的頭碼由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。鍵盤(pán)兩字節(jié)通碼幀的通碼為兩個(gè)字節(jié),用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù)。通碼填入實(shí)時(shí)接收的PS/2協(xié)議鍵盤(pán)數(shù)據(jù)中的相應(yīng)數(shù)據(jù)即可,不需要更改。參見(jiàn)圖9,是本發(fā)明實(shí)施例七提供的鍵盤(pán)兩字節(jié)斷碼幀的結(jié)構(gòu)示意圖。本實(shí)施例提供的鍵盤(pán)兩字節(jié)斷碼幀包括頭碼(Head data)和兩個(gè)字節(jié)的斷碼 (Break Code),如下鍵盤(pán)兩字節(jié)斷碼幀的頭碼由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。鍵盤(pán)兩字節(jié)斷碼幀的斷碼為兩個(gè)字節(jié),用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù)。斷碼填入實(shí)時(shí)接收的PS/2協(xié)議鍵盤(pán)數(shù)據(jù)中的相應(yīng)數(shù)據(jù)即可,不需要更改。圖10是本發(fā)明實(shí)施例八提供的鍵盤(pán)三字節(jié)斷碼幀的結(jié)構(gòu)示意圖。本實(shí)施例提供的鍵盤(pán)三字節(jié)斷碼幀包括頭碼(Head data)和三個(gè)字節(jié)的斷碼 (Break Code),如下
鍵盤(pán)三字節(jié)斷碼幀的頭碼由37. 9KHz的紅外載波和無(wú)載波組成,總共的發(fā)射時(shí)間沒(méi)有嚴(yán)格限制,一般不會(huì)超過(guò)15 ms,且不會(huì)與其它常用的頭碼相同即可。鍵盤(pán)三字節(jié)斷碼幀的斷碼為三個(gè)字節(jié),用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù)。斷碼填入實(shí)時(shí)接收的PS/2協(xié)議鍵盤(pán)數(shù)據(jù)中的相應(yīng)數(shù)據(jù)即可,不需要更改。需要說(shuō)明的是,上述雙向指令數(shù)據(jù)幀的頭碼、光標(biāo)移動(dòng)數(shù)據(jù)幀的頭碼、鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀的頭碼和鍵盤(pán)數(shù)據(jù)幀的頭碼具有不同的發(fā)送時(shí)間,使接收端能夠準(zhǔn)確區(qū)分出不同的數(shù)據(jù)幀。本發(fā)明實(shí)施例提供的數(shù)據(jù)傳輸?shù)姆椒?,在紅外遙控器中集成鼠標(biāo)元件和鍵盤(pán)元件,當(dāng)檢測(cè)到用戶操作鼠標(biāo)和鍵盤(pán),實(shí)時(shí)生成適合紅外線傳輸?shù)氖髽?biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀, 并發(fā)送給接收端。接收端將接收到紅鼠標(biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀分別轉(zhuǎn)換成支持HID協(xié)議的 USB數(shù)據(jù),供給操作系統(tǒng)調(diào)用。本發(fā)明能夠?qū)崿F(xiàn)紅外線遙控器數(shù)據(jù)雙向傳輸,使紅外線遙控器在其遙控的安裝常用操作系統(tǒng)的電器中實(shí)現(xiàn)了 USB鼠標(biāo)和USB鍵盤(pán)的全部功能。而且, USB鼠標(biāo)能夠?qū)崿F(xiàn)每秒20點(diǎn)的采樣率。以上所述是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,包括紅外遙控器和接收端之間采用雙向指令數(shù)據(jù)幀,建立雙向通信連接;所述紅外遙控器集成有鼠標(biāo)元件,當(dāng)檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù),再將所述鼠標(biāo)數(shù)據(jù)轉(zhuǎn)換成適合紅外線傳輸?shù)氖髽?biāo)數(shù)據(jù)幀,并發(fā)送給所述接收端;所述紅外遙控器集成有鍵盤(pán)元件,當(dāng)檢測(cè)到用戶操作所述鍵盤(pán)元件時(shí),實(shí)時(shí)生成鍵盤(pán)數(shù)據(jù),再將所述鍵盤(pán)數(shù)據(jù)轉(zhuǎn)換成適合紅外線傳輸?shù)逆I盤(pán)數(shù)據(jù)幀,并發(fā)送給所述接收端;所述接收端接收所述紅外遙控器發(fā)送的鼠標(biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀,分別轉(zhuǎn)換成支持 HID協(xié)議的USB數(shù)據(jù),供給操作系統(tǒng)調(diào)用。
2.如權(quán)利要求1所述的數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,?dāng)所述紅外線遙控器檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),以固定每秒20點(diǎn)采樣率實(shí)時(shí)生成鼠標(biāo)數(shù)據(jù)。
3.如權(quán)利要求1或2所述的數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述鼠?biāo)數(shù)據(jù)幀包括光標(biāo)移動(dòng)數(shù)據(jù)幀;所述光標(biāo)移動(dòng)數(shù)據(jù)幀包括頭碼、標(biāo)示碼、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼;所述標(biāo)示碼為8位,包括位于高4位的Y溢出位、X溢出位、Y標(biāo)示位和X標(biāo)示位;所述標(biāo)示碼的高4位、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼的總位數(shù)為m ;所述標(biāo)示碼還包括數(shù)據(jù)壓縮標(biāo)示位;當(dāng)所述標(biāo)示碼的高4位、X位移數(shù)據(jù)碼和Y位移數(shù)據(jù)碼所承載的二進(jìn)制數(shù)據(jù)中,1的個(gè)數(shù)大于m/2時(shí),將所述數(shù)據(jù)壓縮標(biāo)示位置1,且將所承載的二進(jìn)制數(shù)據(jù)全部取反;否則將所述數(shù)據(jù)壓縮標(biāo)示位置0。
4.如權(quán)利要求1所述的數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述鼠?biāo)數(shù)據(jù)幀還包括鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀;所述鼠標(biāo)滾輪轉(zhuǎn)動(dòng)數(shù)據(jù)幀包括頭碼和Z位移數(shù)據(jù)碼;所述Z位移數(shù)據(jù)碼與微軟的擴(kuò)展鼠PS/2標(biāo)協(xié)議的Byte 4數(shù)據(jù)相同。
5.如權(quán)利要求1所述的數(shù)據(jù)傳輸?shù)姆椒ǎ涮卣髟谟?,所述雙向指令數(shù)據(jù)幀包括頭碼、 標(biāo)示碼和指令碼;所述雙向指令數(shù)據(jù)幀的標(biāo)示碼至少包括發(fā)送接收標(biāo)示位、鼠標(biāo)標(biāo)示位和鍵盤(pán)標(biāo)示位。
6.如權(quán)利要求1所述的數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述鍵盤(pán)數(shù)據(jù)幀包括頭碼和至少一個(gè)字節(jié)的通碼;所述通碼用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù);或者,所述鍵盤(pán)數(shù)據(jù)幀包括頭碼和至少一個(gè)字節(jié)的斷碼;所述斷碼用于承載實(shí)時(shí)接收的PS/2協(xié)議的鍵盤(pán)數(shù)據(jù)。
全文摘要
本發(fā)明公開(kāi)了一種數(shù)據(jù)傳輸?shù)姆椒ǎ摲椒òt外遙控器和接收端之間采用雙向指令數(shù)據(jù)幀,建立雙向通信連接;所述紅外遙控器集成有鼠標(biāo)元件,當(dāng)檢測(cè)到用戶操作所述鼠標(biāo)元件時(shí),生成適合紅外線傳輸?shù)氖髽?biāo)數(shù)據(jù)幀,并發(fā)送給所述接收端;所述紅外遙控器集成有鍵盤(pán)元件,當(dāng)檢測(cè)到用戶操作所述鍵盤(pán)元件時(shí),生成適合紅外線傳輸?shù)逆I盤(pán)數(shù)據(jù)幀,并發(fā)送給所述接收端;所述接收端接收所述紅外遙控器發(fā)送的鼠標(biāo)數(shù)據(jù)幀和鍵盤(pán)數(shù)據(jù)幀,分別轉(zhuǎn)換成支持HID協(xié)議的USB數(shù)據(jù),供給操作系統(tǒng)調(diào)用。本發(fā)明能夠?qū)崿F(xiàn)紅外線遙控器數(shù)據(jù)雙向傳輸,使紅外線遙控器在其遙控的安裝常用操作系統(tǒng)的電器中實(shí)現(xiàn)了USB鼠標(biāo)和USB鍵盤(pán)的全部功能。
文檔編號(hào)G08C23/04GK102509444SQ20111040770
公開(kāi)日2012年6月20日 申請(qǐng)日期2011年12月9日 優(yōu)先權(quán)日2011年12月9日
發(fā)明者張紹祥 申請(qǐng)人:廣東長(zhǎng)虹電子有限公司