基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視,創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中,驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng),所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng),所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。通過(guò)上述方法及裝置,即能使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
【專利說(shuō)明】基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及智能電視【技術(shù)領(lǐng)域】,更具體的說(shuō),是涉及一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視。
【背景技術(shù)】
[0002]紅外遙控器是一種無(wú)線電發(fā)射裝置,當(dāng)紅外遙控器上的按鍵被按下時(shí),紅外遙控器會(huì)向外發(fā)射紅外信號(hào)。而針對(duì)不同的按鍵,紅外遙控器發(fā)射的紅外信號(hào)的波長(zhǎng)也就不同。
[0003]智能電視是一種無(wú)線電接收裝置,當(dāng)接收到無(wú)線電發(fā)射裝置發(fā)射的紅外信號(hào)后,對(duì)紅外信號(hào)進(jìn)行處理,從而得到一個(gè)鍵值,應(yīng)用程序就可以調(diào)用與鍵值對(duì)應(yīng)的應(yīng)用操作子模塊完成特定的應(yīng)用操作。而針對(duì)不同波長(zhǎng)的紅外信號(hào),得到的鍵值也就不同,應(yīng)用程序調(diào)用的應(yīng)用操作子模塊也就不同,從而最終實(shí)現(xiàn)一個(gè)按鍵或多個(gè)鍵組合控制一個(gè)動(dòng)作的發(fā)生。
[0004]在現(xiàn)有技術(shù)中,多數(shù)都是由Linux系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng),即,紅外遙控器的按鍵可以觸發(fā)Linux系統(tǒng)的智能電視執(zhí)行相應(yīng)的動(dòng)作。但是,對(duì)于Android系統(tǒng)的智能電視來(lái)說(shuō),其目前還無(wú)法支持對(duì)紅外遙控器進(jìn)行響應(yīng)。因此,目前迫切需要解決的技術(shù)問(wèn)題是:如何使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明提供了一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視,以克服現(xiàn)有技術(shù)中如何使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)的問(wèn)題。
[0006]為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
[0007]一種基于Android系統(tǒng)的響應(yīng)紅外遙控器的方法,包括:
[0008]創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中;
[0009]驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng);
[0010]所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼;
[0011]所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng);
[0012]所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
[0013]優(yōu)選的,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,包括:
[0014]所述驅(qū)動(dòng)程序調(diào)取預(yù)先存儲(chǔ)的第一映射表,根據(jù)所述第一映射表確定與所述物理碼對(duì)應(yīng)的Linux系統(tǒng)鍵值,所述第一映射表中存儲(chǔ)有紅外遙控器按鍵對(duì)應(yīng)的物理碼與Linux系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。[0015]優(yōu)選的,所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,包括:
[0016]操作系統(tǒng)調(diào)取預(yù)先存儲(chǔ)的第二映射表,根據(jù)所述第二映射表確定與所述Linux系統(tǒng)鍵值對(duì)應(yīng)的Android系統(tǒng)鍵值,所述第二映射表中存儲(chǔ)有所述Linux系統(tǒng)鍵值與所述Android系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
[0017]優(yōu)選的,所述紅外遙控器按鍵對(duì)應(yīng)的物理碼包括:
[0018]紅外遙控器通用按鍵的物理碼和紅外遙控器專用按鍵對(duì)應(yīng)的物理碼。
[0019]優(yōu)選的,所述Android系統(tǒng)鍵值包括:
[0020]紅外遙控器通用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值和紅外遙控器專用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值。
[0021]一種基于Android系統(tǒng)的響應(yīng)紅外遙控器的裝置,包括:
[0022]驅(qū)動(dòng)程序創(chuàng)建單元,用于創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中;
[0023]接收單元,用于驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng);
[0024]解析單元,用于所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼;
[0025]第一映射單元,用于所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng);
[0026]第二映射單元,用于所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
[0027]優(yōu)選的,所述第一映射單元包括:
[0028]第一調(diào)取子單元,用于所述驅(qū)動(dòng)程序調(diào)取預(yù)先存儲(chǔ)的第一映射表,根據(jù)所述第一映射表確定與所述物理碼對(duì)應(yīng)的Linux系統(tǒng)鍵值,所述第一映射表中存儲(chǔ)有紅外遙控器按鍵對(duì)應(yīng)的物理碼與Linux系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
[0029]優(yōu)選的,所述第二映射單元包括:
[0030]第二調(diào)取子單元,用于操作系統(tǒng)調(diào)取預(yù)先存儲(chǔ)的第二映射表,根據(jù)所述第二映射表確定與所述Linux系統(tǒng)鍵值對(duì)應(yīng)的Android系統(tǒng)鍵值,所述第二映射表中存儲(chǔ)有所述Linux系統(tǒng)鍵值與所述Android系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
[0031]優(yōu)選的,所述紅外遙控器按鍵對(duì)應(yīng)的物理碼包括:
[0032]紅外遙控器通用按鍵的物理碼和紅外遙控器專用按鍵對(duì)應(yīng)的物理碼;
[0033]所述Android系統(tǒng)鍵值包括:
[0034]紅外遙控器通用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值和紅外遙控器專用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值。
[0035]一種智能電視,包含有上述裝置。
[0036]經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明公開(kāi)了一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視,創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中,驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng),所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng),所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。通過(guò)上述方法及裝置,即能使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
【專利附圖】
【附圖說(shuō)明】
[0037]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0038]圖1為本發(fā)明實(shí)施例一公開(kāi)的一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法的具體流程示意圖;
[0039]圖2為本發(fā)明實(shí)施例一公開(kāi)的一種編碼脈沖不意圖;
[0040]圖3為本發(fā)明實(shí)施例一公開(kāi)的一種編碼脈沖與二進(jìn)制數(shù)的對(duì)應(yīng)關(guān)系示意圖;
[0041]圖4為本發(fā)明實(shí)施例二公開(kāi)的另一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法的具體流程示意圖;
[0042]圖5為本發(fā)明實(shí)施例二中公開(kāi)的一種第一映射表不意圖;
[0043]圖6為本發(fā)明實(shí)施例二中公開(kāi)的一種應(yīng)用于Android系統(tǒng)的智能電視的遙控器不意圖;
[0044]圖7為本發(fā)明實(shí)施例二中公開(kāi)的一種第二映射表示意圖;
[0045]圖8為本發(fā)明實(shí)施例三中公開(kāi)的一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的裝置的具體結(jié)構(gòu)示意圖;
[0046]圖9為本發(fā)明實(shí)施例四中公開(kāi)的另一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的裝置的具體結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0047]下面將結(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ù)的范圍。
[0048]本發(fā)明的說(shuō)明書(shū)和權(quán)利要求書(shū)及上述附圖中的術(shù)語(yǔ)“第一”、“第二”等是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的術(shù)語(yǔ)在適當(dāng)情況下可以互換,這僅僅是描述本發(fā)明的實(shí)施例中對(duì)相同屬性的對(duì)象在描述時(shí)所采用的區(qū)分方式。此外,術(shù)語(yǔ)“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,以便包含一系列單元的過(guò)程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于那些單元,而是可包括沒(méi)有清楚地列出的或?qū)τ谶@些過(guò)程、方法、產(chǎn)品或設(shè)備固有的其它單元。
[0049]由【背景技術(shù)】可知,在現(xiàn)有技術(shù)中,多數(shù)都是由Linux系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng),即,紅外遙控器的按鍵可以觸發(fā)Linux系統(tǒng)的智能電視執(zhí)行相應(yīng)的動(dòng)作。但是,對(duì)于Android系統(tǒng)的智能電視來(lái)說(shuō),其目前還無(wú)法支持對(duì)紅外遙控器進(jìn)行響應(yīng)。因此,目前迫切需要解決的技術(shù)問(wèn)題是:如何使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
[0050]為此,本發(fā)明公開(kāi)了一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視,倉(cāng)ll建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中,在驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的電脈沖信號(hào)后,將所述電脈沖信號(hào)解析為物理碼,并將所述物理碼上報(bào)給操作系統(tǒng),操作系統(tǒng)將所述物理碼解析為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。通過(guò)上述方法及裝置,即能使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
[0051]有關(guān)于上述基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法的具體流程,以及上述基于安卓系統(tǒng)的響應(yīng)紅外遙控器的裝置的具體結(jié)構(gòu)將通過(guò)以下實(shí)施例進(jìn)行詳細(xì)說(shuō)明。
[0052]實(shí)施例一
[0053]請(qǐng)參閱附圖1,為本發(fā)明實(shí)施例一公開(kāi)的一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法的具體流程示意圖,該方法包括如下步驟:
[0054]S100:創(chuàng)建驅(qū)動(dòng)程序。
[0055]在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中。
[0056]S101:驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào)。
[0057]編碼脈沖信號(hào)與紅外遙控群毆的按鍵相對(duì)應(yīng),具體的,紅外接收電路位于智能電視內(nèi),其能夠接收紅外遙控器發(fā)射的紅外信號(hào),并將該紅外信號(hào)轉(zhuǎn)換為編碼脈沖信號(hào),上報(bào)給驅(qū)動(dòng)程序。
[0058]S102:所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼。
[0059]驅(qū)動(dòng)程序在接收到編碼脈沖信號(hào)后,會(huì)從該編碼脈沖信號(hào)中解析出紅外遙控器發(fā)射的紅外信號(hào)所對(duì)應(yīng)的物理碼。
[0060]通常,一次按鍵動(dòng)作的編碼脈沖至少攜帶有一個(gè)引導(dǎo)碼和一個(gè)由32位串行二進(jìn)制值構(gòu)成物理碼(如附圖2所示)。物理碼中的前16位為用戶碼,即附圖2中的地址碼及地址碼取反對(duì)應(yīng)的部分,用戶碼不隨按鍵的不同而變化,它是為了表示特定用戶而設(shè)置的一個(gè)辨識(shí)標(biāo)志,以區(qū)別不同類型的紅外遙控器發(fā)射的紅外遙控信號(hào),從而防止誤操作。物理碼中的后16位為操作碼(也可以稱為功能碼)及其反碼,即附圖2中的數(shù)據(jù)碼及數(shù)據(jù)碼反碼對(duì)應(yīng)的部分,其中,前8位為操作碼,后8位為操作碼的反碼,操作碼隨著按鍵的不同而改變,是按鍵的辨識(shí)標(biāo)志。
[0061 ] 另外,在編碼脈沖中,不是用高電平或低電平來(lái)表示二進(jìn)制中的“ 1”或“0”,而是通過(guò)脈沖寬度來(lái)表示的。例如,請(qǐng)參閱附圖3,對(duì)于二進(jìn)制值“0”,一個(gè)脈沖寬度占1.12ms ;對(duì)于二進(jìn)制值“1”,一個(gè)脈沖寬度占2.25ms。因此,紅外遙控器驅(qū)動(dòng)程序需要根據(jù)編碼脈沖中各脈沖的寬度從遙控編碼脈沖中解析出物理碼。
[0062]S103:所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng)。
[0063]S104:所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
[0064]需要說(shuō)明的是,Android系統(tǒng)鍵值和文件系統(tǒng)的文件類似,包含當(dāng)前智能電視及應(yīng)用程序執(zhí)行時(shí)使用的實(shí)際配置信息和數(shù)據(jù),鍵值包含幾種數(shù)據(jù)類型,以適應(yīng)不同環(huán)境的使用需求。在智能電視中,其一般都用字符串值。
[0065]綜上所述,本發(fā)明實(shí)施例一公開(kāi)了 一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法,創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中,驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng),所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng),所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。通過(guò)上述方法,即能使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
[0066]在上述本發(fā)明公開(kāi)的實(shí)施例的基礎(chǔ)上,本發(fā)明還公開(kāi)了另一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法,下面將通過(guò)以下實(shí)施例進(jìn)行詳細(xì)說(shuō)明。
[0067]實(shí)施例二
[0068]請(qǐng)參閱附圖4,為本發(fā)明實(shí)施例二公開(kāi)的另一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法的具體流程示意圖,該方法包括如下步驟:
[0069]S200:創(chuàng)建驅(qū)動(dòng)程序。
[0070]在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中。
[0071]S201:驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào)。
[0072]S202:所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼。
[0073]需要說(shuō)明的是,本實(shí)施例中步驟S201、S202與實(shí)施例一中的S101、S102為相似步驟,本實(shí)施例不再贅述,具體請(qǐng)參見(jiàn)實(shí)施例一中的相關(guān)描述。
[0074]S203:所述驅(qū)動(dòng)程序調(diào)取預(yù)先存儲(chǔ)的第一映射表,根據(jù)所述第一映射表確定與所述物理碼對(duì)應(yīng)的Linux系統(tǒng)鍵值。
[0075]需要說(shuō)明的是,所述第一映射表中存儲(chǔ)有紅外遙控器按鍵對(duì)應(yīng)的物理碼與Linux系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。具體的,請(qǐng)參閱附圖5,為一種第一映射表的具體示例,以第一行為例,0X6501為紅外遙控器某一按鍵對(duì)應(yīng)的物理碼,KEY_1為L(zhǎng)inux系統(tǒng)鍵值。
[0076]進(jìn)一步需要說(shuō)明的是,本實(shí)施例中紅外遙控器按鍵對(duì)應(yīng)的物理碼包括紅外遙控器通用按鍵的物理碼和紅外遙控器專用按鍵對(duì)應(yīng)的物理碼。紅外遙控器通用按鍵指的是遙控器與其他應(yīng)用標(biāo)準(zhǔn)Android系統(tǒng)的移動(dòng)終端都有的按鍵,比如,數(shù)字鍵。紅外遙控器專用按鍵指的是其他應(yīng)用標(biāo)準(zhǔn)Android系統(tǒng)的移動(dòng)終端沒(méi)有,而遙控器上有的鍵,比如,參閱附圖6,為應(yīng)用于Android系統(tǒng)的智能電視的一款遙控器,以電源鍵下方的電視、電腦、HDMl及視頻四個(gè)按鍵。
[0077]紅外遙控器通用按鍵的物理碼與其他應(yīng)用標(biāo)準(zhǔn)Android系統(tǒng)的移動(dòng)終端的通用按鍵的物理碼并不相同,在本實(shí)施例中,第一映射表中的物理碼既包含將其他應(yīng)用標(biāo)準(zhǔn)Android系統(tǒng)的移動(dòng)終端的通用按鍵的物理碼更改成紅外遙控器通用按鍵的物理碼,也包含添加的紅外遙控器專用按鍵的物理碼。[0078]S204:驅(qū)動(dòng)系統(tǒng)將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng)。
[0079]針對(duì)智能電視來(lái)說(shuō),上述操作系統(tǒng)即為Framework。
[0080]S205:操作系統(tǒng)調(diào)取預(yù)先存儲(chǔ)的第二映射表,根據(jù)所述第二映射表確定與所述Linux系統(tǒng)鍵值對(duì)應(yīng)的Android系統(tǒng)鍵值。
[0081]需要說(shuō)明的是,所述第二映射表中存儲(chǔ)有所述Linux系統(tǒng)鍵值與所述Android系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。具體的,請(qǐng)參閱附圖7,為一種第二映射表的具體示例,以第一行為例,keyll6對(duì)應(yīng)Linux系統(tǒng)鍵值,POWER WAKE為Android系統(tǒng)鍵值。需要說(shuō)明的是,116是對(duì)系統(tǒng)程序?qū)EY_1的具體賦值。也就是說(shuō),在驅(qū)動(dòng)程序?qū)inux系統(tǒng)鍵值上報(bào)給操作系統(tǒng)之后,操作系統(tǒng)需要執(zhí)行其他程序以確定該Linux系統(tǒng)鍵值的具體賦值,進(jìn)而根據(jù)該賦值從第二映射表中找出與該Linux系統(tǒng)鍵值對(duì)應(yīng)的Android系統(tǒng)鍵值。
[0082]紅外遙控器通用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值與其他應(yīng)用標(biāo)準(zhǔn)Android系統(tǒng)的移動(dòng)終端的通用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值并不一定相同,在本實(shí)施例中,第二映射表中的Android系統(tǒng)鍵值既包含將其他應(yīng)用標(biāo)準(zhǔn)Android系統(tǒng)的移動(dòng)終端的通用按鍵的Android系統(tǒng)鍵值更改成紅外遙控器通用按鍵的Android系統(tǒng)鍵值,也包含添加的紅外遙控器專用按鍵的Android系統(tǒng)鍵值。
[0083]S206:將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
[0084]綜上所述,本發(fā)明實(shí)施例二公開(kāi)了另一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法,倉(cāng)Il建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中,驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng),所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng),所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。通過(guò)上述方法,即能使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
[0085]上述本發(fā)明公開(kāi)的實(shí)施例中詳細(xì)描述了方法,對(duì)于本發(fā)明的方法可采用多種形式的裝置實(shí)現(xiàn),因此本發(fā)明還公開(kāi)了一種裝置,下面給出具體的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。
[0086]實(shí)施例三
[0087]請(qǐng)參閱附圖8,為本發(fā)明實(shí)施例三公開(kāi)的一種基于Android系統(tǒng)的響應(yīng)紅外遙控器的裝置,該裝置包括如下單元:
[0088]驅(qū)動(dòng)程序創(chuàng)建單元10,用于創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中。
[0089]接收單元11,用于驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng)。
[0090]解析單元12,用于所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼。
[0091]第一映射單元13,用于所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng)。
[0092]第二映射單元14,用于所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
[0093]需要說(shuō)明的是,關(guān)于上述各個(gè)單元的功能實(shí)現(xiàn)已在方法實(shí)施例中進(jìn)行詳細(xì)說(shuō)明,本實(shí)施例不再贅述,具體請(qǐng)參見(jiàn)方法實(shí)施例中的相關(guān)描述。
[0094]實(shí)施例四
[0095]請(qǐng)參閱附圖9,為本發(fā)明實(shí)施例四公開(kāi)的一種基于Android系統(tǒng)的響應(yīng)紅外遙控器的裝置,該裝置包括如下單元:
[0096]驅(qū)動(dòng)程序創(chuàng)建單元20,用于創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中。
[0097]接收單元21,用于驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng)。
[0098]解析單元22,用于所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼。
[0099]第一調(diào)取子單元23,用于所述驅(qū)動(dòng)程序調(diào)取預(yù)先存儲(chǔ)的第一映射表,根據(jù)所述第一映射表確定與所述物理碼對(duì)應(yīng)的Linux系統(tǒng)鍵值,所述第一映射表中存儲(chǔ)有紅外遙控器按鍵對(duì)應(yīng)的物理碼與Linux系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
[0100]第一上報(bào)單元24,用于將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng)。
[0101]第二調(diào)取子單元25,用于操作系統(tǒng)調(diào)取預(yù)先存儲(chǔ)的第二映射表,根據(jù)所述第二映射表確定與所述Linux系統(tǒng)鍵值對(duì)應(yīng)的Android系統(tǒng)鍵值,所述第二映射表中存儲(chǔ)有所述Linux系統(tǒng)鍵值與所述Android系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
[0102]第二上報(bào)單元26,用于將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
[0103]需要說(shuō)明的是,關(guān)于上述各個(gè)單元的功能實(shí)現(xiàn)已在方法實(shí)施例中進(jìn)行詳細(xì)說(shuō)明,本實(shí)施例不再贅述,具體請(qǐng)參見(jiàn)方法實(shí)施例中的相關(guān)描述。
[0104]進(jìn)一步需要說(shuō)明的是,本發(fā)明實(shí)施例還公開(kāi)了一種智能電視,該智能電視包括實(shí)施例三或?qū)嵤├闹泄_(kāi)的基于Android系統(tǒng)的響應(yīng)紅外遙控器的裝置。
[0105]綜上所述:本發(fā)明公開(kāi)了一種基于安卓系統(tǒng)的響應(yīng)紅外遙控器的方法、裝置及智能電視,倉(cāng)Il建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中,驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng),所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng),所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。通過(guò)上述方法及裝置,即能使Android系統(tǒng)的智能電視支持對(duì)紅外遙控器進(jìn)行響應(yīng)。
[0106]本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見(jiàn)即可。對(duì)于實(shí)施例公開(kāi)的裝置而言,由于其與實(shí)施例公開(kāi)的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法部分說(shuō)明即可。
[0107]另外需說(shuō)明的是,以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。另外,本發(fā)明提供的裝置實(shí)施例附圖中,模塊之間的連接關(guān)系表示它們之間具有通信連接,具體可以實(shí)現(xiàn)為一條或多條通信總線或信號(hào)線。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
[0108]通過(guò)以上的實(shí)施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)專用硬件包括專用集成電路、專用CPU、專用存儲(chǔ)器、專用元器件等來(lái)實(shí)現(xiàn)。一般情況下,凡由計(jì)算機(jī)程序完成的功能都可以很容易地用相應(yīng)的硬件來(lái)實(shí)現(xiàn),而且,用來(lái)實(shí)現(xiàn)同一功能的具體硬件結(jié)構(gòu)也可以是多種多樣的,例如模擬電路、數(shù)字電路或?qū)S秒娐返?。但是,?duì)本發(fā)明而言更多情況下軟件程序?qū)崿F(xiàn)是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在可讀取的存儲(chǔ)介質(zhì)中,如計(jì)算機(jī)的軟盤(pán),U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM, Random Access Memory)、磁碟或者光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
[0109]綜上所述,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照上述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)上述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
【權(quán)利要求】
1.一種基于Android系統(tǒng)的響應(yīng)紅外遙控器的方法,其特征在于,包括:創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中;驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng);所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼;所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng);所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,包括:所述驅(qū)動(dòng)程序調(diào)取預(yù)先存儲(chǔ)的第一映射表,根據(jù)所述第一映射表確定與所述物理碼對(duì)應(yīng)的Linux系統(tǒng)鍵值,所述第一映射表中存儲(chǔ)有紅外遙控器按鍵對(duì)應(yīng)的物理碼與Linux系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,包括:操作系統(tǒng)調(diào)取預(yù)先存儲(chǔ)的第二映射表,根據(jù)所述第二映射表確定與所述Linux系統(tǒng)鍵值對(duì)應(yīng)的An droid系統(tǒng)鍵值,所述第二映射表中存儲(chǔ)有所述Linux系統(tǒng)鍵值與所述An droid系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述紅外遙控器按鍵對(duì)應(yīng)的物理碼包括:紅外遙控器通用按鍵的物理碼和紅外遙控器專用按鍵對(duì)應(yīng)的物理碼。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述Android系統(tǒng)鍵值包括:紅外遙控器通用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值和紅外遙控器專用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值。
6.一種基于Android系統(tǒng)的響應(yīng)紅外遙控器的裝置,其特征在于,包括:驅(qū)動(dòng)程序創(chuàng)建單元,用于創(chuàng)建驅(qū)動(dòng)程序,在android內(nèi)核源碼目錄下創(chuàng)建驅(qū)動(dòng)程序,通過(guò)在android的用戶空間構(gòu)造解碼、映射事件并寫(xiě)入到android內(nèi)核中;接收單元,用于驅(qū)動(dòng)程序接收紅外接收電路上報(bào)的編碼脈沖信號(hào),所述編碼脈沖信號(hào)與紅外遙控器的按鍵相對(duì)應(yīng);解析單元,用于所述驅(qū)動(dòng)程序從所述編碼脈沖信號(hào)中解析出物理碼;第一映射單元,用于所述驅(qū)動(dòng)程序?qū)⑺鑫锢泶a映射為L(zhǎng)inux系統(tǒng)鍵值,并將所述Linux系統(tǒng)鍵值上報(bào)給操作系統(tǒng);第二映射單元,用于所述操作系統(tǒng)將所述Linux系統(tǒng)鍵值映射為Android系統(tǒng)鍵值,并將所述Android系統(tǒng)鍵值上報(bào)給應(yīng)用程序,以便應(yīng)用程序調(diào)用與所述Android系統(tǒng)鍵值對(duì)應(yīng)的應(yīng)用模塊。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述第一映射單元包括:第一調(diào)取子單元,用于所述驅(qū)動(dòng)程序調(diào)取預(yù)先存儲(chǔ)的第一映射表,根據(jù)所述第一映射表確定與所述物理碼對(duì)應(yīng)的Linux系統(tǒng)鍵值,所述第一映射表中存儲(chǔ)有紅外遙控器按鍵對(duì)應(yīng)的物理碼與Linux系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述第二映射單元包括:第二調(diào)取子單元,用于操作系統(tǒng)調(diào)取預(yù)先存儲(chǔ)的第二映射表,根據(jù)所述第二映射表確定與所述Linux系統(tǒng)鍵值對(duì)應(yīng)的Android系統(tǒng)鍵值,所述第二映射表中存儲(chǔ)有所述Linux系統(tǒng)鍵值與所述Android系統(tǒng)鍵值的對(duì)應(yīng)關(guān)系。
9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述紅外遙控器按鍵對(duì)應(yīng)的物理碼包括:紅外遙控器通用按鍵的物理碼和紅外遙控器專用按鍵對(duì)應(yīng)的物理碼; 所述Android系統(tǒng)鍵值包括:紅外遙控器通用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值和紅外遙控器專用按鍵對(duì)應(yīng)的Android系統(tǒng)鍵值。
10.一種智能電視,包含有如權(quán)利要求6-9任一項(xiàng)所述的裝置。
【文檔編號(hào)】G08C23/04GK103648009SQ201310726759
【公開(kāi)日】2014年3月19日 申請(qǐng)日期:2013年12月17日 優(yōu)先權(quán)日:2013年12月17日
【發(fā)明者】郭鵬宇 申請(qǐng)人:樂(lè)視致新電子科技(天津)有限公司