專利名稱:一種嵌入式設(shè)備的交互系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式設(shè)備的交互系統(tǒng),特別涉及到對(duì)嵌入式設(shè)備交互系 統(tǒng)的構(gòu)建。
背景技術(shù):
嵌入式設(shè)備是指以應(yīng)用為中心,可根據(jù)系統(tǒng)對(duì)功能、可靠性、成本、 體積以及功耗的綜合性要求,對(duì)軟硬件做動(dòng)態(tài)調(diào)整的專用計(jì)算機(jī)系統(tǒng)。常 用的嵌入式設(shè)備包括機(jī)頂盒,手機(jī)等。傳統(tǒng)嵌入式設(shè)備中的交互系統(tǒng)結(jié)構(gòu)如圖l所示,可分為交互界面模塊 和業(yè)務(wù)模塊兩部分,在交互界面模塊中還耦合有管理模塊。交互界面是用 戶與嵌入式設(shè)備間的信息交換通道,在現(xiàn)有技術(shù)中,交互界面通常采用圖形系統(tǒng)軟件構(gòu)建,所采用的圖形系統(tǒng)軟件一般是窗口圖形庫(kù),如linux下 的GTK, windows下的MFC,還有ucGUI, miniGUI等一些專用的圖形系 統(tǒng)。利用上述的圖形軟件系統(tǒng)進(jìn)行編程得到交互系統(tǒng)中的交互界面模塊。 當(dāng)用戶向交互系統(tǒng)輸入命令后,由交互界面模塊對(duì)輸入命令進(jìn)行處理,根 據(jù)處理的結(jié)果判斷是否需要觸發(fā)一個(gè)業(yè)務(wù),如果需要,則調(diào)用業(yè)務(wù)模塊的 相應(yīng)接口完成與命令相關(guān)的功能。在實(shí)際應(yīng)用中,由于業(yè)務(wù)的需要,需要對(duì)嵌入式設(shè)備的交互界面進(jìn)行 定制和修改?,F(xiàn)有技術(shù)中的常用做法是由程序設(shè)計(jì)人員通過(guò)圖形系統(tǒng)軟 件修改交互界面模塊的相應(yīng)程序,對(duì)該程序編譯之后把可執(zhí)行文件下載到 嵌入式設(shè)備中。以一個(gè)修改菜單的位置和樣式的簡(jiǎn)單操作為例,首先通過(guò) 圖形系統(tǒng)軟件修改菜單的坐標(biāo)以改變菜單的位置,并編程實(shí)現(xiàn)不同的樣 式,然后把修改后的程序進(jìn)行編譯并下載到嵌入式設(shè)備中,運(yùn)行修改后的 相應(yīng)程序才能得到嵌入式設(shè)備修改后的交互界面。由上可知,通過(guò)圖形系統(tǒng)軟件所構(gòu)建的嵌入式設(shè)備的交互界面具有不 易更新與修改的缺陷,每次對(duì)交互界面的改動(dòng)都需要修改嵌入式設(shè)備的內(nèi) 部程序,不僅繁瑣易出錯(cuò),而且無(wú)法快速地對(duì)界面的改動(dòng)做出響應(yīng)。此外, 在修改過(guò)程中,界面的改動(dòng)同時(shí)需要美工人員和編程人員的操作,修改困
難且部署繁瑣。 發(fā)明內(nèi)容因此,本發(fā)明的目的是克服現(xiàn)有交互系統(tǒng)中的交互界面不易更新與修 改的缺陷,從而提供一種易于對(duì)交互界面進(jìn)行修改的交互系統(tǒng)。為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種嵌入式設(shè)備的交互系統(tǒng),包括業(yè)務(wù)模塊、管理模塊,還包括FLASH播放器以及交互界面文件;其中, 交互界面文件包括用來(lái)顯示交互界面的界面文件,和用來(lái)控制所述界面文件所顯示內(nèi)容的配置文件;所述的界面文件分為動(dòng)態(tài)部分和靜態(tài)部分,所述的動(dòng)態(tài)部分用于描述交互界面中動(dòng)態(tài)改變的部分,所述的靜態(tài)部分用于描述交互界面中靜態(tài)不變的部分;所述的FLASH播放器解釋執(zhí)行界面文件以顯示交互界面;所述的管 理模塊處理用戶的響應(yīng),并轉(zhuǎn)發(fā)到所述的FLASH播放器,所述的FLASH 播放器解釋執(zhí)行所述的用戶響應(yīng),并根據(jù)解釋執(zhí)行的結(jié)果通過(guò)所述管理模 塊調(diào)用所述業(yè)務(wù)模塊的相應(yīng)接口 ;所述的管理模塊根據(jù)所述業(yè)務(wù)模塊的狀 態(tài)改變請(qǐng)求,修改所述的配置文件,并通過(guò)所述的FLASH播放器實(shí)現(xiàn)對(duì) 交互界面的刷新。上述技術(shù)方案中,所述界面文件中的靜態(tài)部分采用FLASH編輯工具 生成。上述技術(shù)方案中,所述界面文件中的動(dòng)態(tài)部分通過(guò)腳本中的腳本語(yǔ)言 讀取所述配置文件中的相關(guān)信息并動(dòng)態(tài)加載得到。上述技術(shù)方案中,所述的配置文件包括業(yè)務(wù)字符串、以及對(duì)交互界面 中動(dòng)態(tài)部分屬性元素的描述。所述的業(yè)務(wù)字符串用于表示所述的交互界面在收到用戶的響應(yīng)后所 調(diào)用的業(yè)務(wù)功能,所述業(yè)務(wù)字符串包括兩個(gè)部分, 一部分是所要調(diào)用的函 數(shù),另一部分是調(diào)用函數(shù)時(shí)所要傳遞的參數(shù)。上述技術(shù)方案中,所述的FLASH播放器解釋執(zhí)行所述的用戶響應(yīng)時(shí), 調(diào)用所述界面文件中的腳本,得到所述的業(yè)務(wù)字符串。本發(fā)明的優(yōu)點(diǎn)在于1、本發(fā)明的交互系統(tǒng)只需要通過(guò)修改配置文件和界面文件,就可以 完成對(duì)交互界面的定制與修改,具有修改簡(jiǎn)便,易于實(shí)現(xiàn)的優(yōu)點(diǎn)?!?.界面文件采用常用的FLASH制作工具制作,具有制作方便,操作 簡(jiǎn)單,易于增加各種特效的優(yōu)點(diǎn)。
以下,結(jié)合附圖來(lái)詳細(xì)說(shuō)明本發(fā)明的實(shí)施例,其中圖1為現(xiàn)有的嵌入式設(shè)備的交互系統(tǒng)的組成圖;圖2為本發(fā)明的嵌入式設(shè)備的交互系統(tǒng)的結(jié)構(gòu)圖;圖3為本發(fā)明的交互系統(tǒng)對(duì)用戶按鍵事件的處理流程;圖4為本發(fā)明的交互系統(tǒng)對(duì)交互界面動(dòng)態(tài)刷新的處理流程圖;圖5為本發(fā)明的交互系統(tǒng)中的配置文件在一個(gè)實(shí)施例中的示意圖;圖6為一個(gè)實(shí)施例中的交互界面的示意圖;圖7為一個(gè)實(shí)施例中的交互界面的示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明做進(jìn)一步說(shuō)明。在本實(shí)施例中,選用DVB( Digital Video Broadcasting,數(shù)字視頻廣播) 機(jī)頂盒作為本發(fā)明中所提到的嵌入式設(shè)備,為了克服現(xiàn)有交互系統(tǒng)所存在 的缺陷,在本實(shí)施例中采用FLASH(—種交互式矢量圖和Web動(dòng)畫的標(biāo)準(zhǔn)) 技術(shù)構(gòu)建DVB才幾頂盒的交互界面。圖2是采用FLASH技術(shù)構(gòu)建交互界面的交互系統(tǒng)的示意圖,該交互 系統(tǒng)由業(yè)務(wù)模塊、管理模塊、FLASH播放器以及交互界面文件組成。交互界面文件由界面文件和配置文件兩部分組成,界面文件用來(lái)顯示 交互界面,而配置文件則控制界面文件需要顯示的具體的內(nèi)容。界面文件中的內(nèi)容可分為動(dòng)態(tài)部分和靜態(tài)部分。其中的靜態(tài)部分是指 交互界面中無(wú)需改變的部分,如菜單的大小,按鈕的顏色等。動(dòng)態(tài)部分是 指交互界面中可以動(dòng)態(tài)改變的部分,如交互界面中列表的文字、交互界面 中的廣告圖片、網(wǎng)絡(luò)信息等。圖6是機(jī)頂盒中的一個(gè)交互界面,其中,"頻 道編輯","日期",以及界面右端的"頻道號(hào)","頻道名稱","喜愛(ài)","鎖 頻","隱藏"這些文字都是靜態(tài)部分,上述內(nèi)容不會(huì)在交互界面運(yùn)行時(shí)改 變,只能在制作交互界面時(shí)修改;而左邊顯示的兩張圖片是動(dòng)態(tài)部分,由 于圖片所展示的是運(yùn)營(yíng)商的廣告,需要按時(shí)更換,因此應(yīng)當(dāng)允許它在交互 界面運(yùn)行時(shí)改變。交互界面中右邊的頻道列表內(nèi)容也是動(dòng)態(tài)部分,因?yàn)楦?br>
據(jù)網(wǎng)絡(luò)的不同,實(shí)際搜索到的頻道可以是動(dòng)態(tài)改變的。采用FLASH才支術(shù)構(gòu)建交互界面時(shí),可采用FLASH編輯工具對(duì)界面文 件進(jìn)行編輯,編輯生成的界面文件為標(biāo)準(zhǔn)的SWF( ShockWave Flash,為flash 的標(biāo)準(zhǔn)文件)文件。在界面文件中,每一幀對(duì)應(yīng)一頁(yè)界面,通過(guò)對(duì)界面文 件中的幀之間的切換,可實(shí)現(xiàn)交互界面的跳轉(zhuǎn)。如前所述,界面文件中包 含有動(dòng)態(tài)部分和靜態(tài)部分,對(duì)靜態(tài)部分的制作可采用標(biāo)準(zhǔn)的FLASH編輯 工具,如Adobe公司的Flash8,而對(duì)于動(dòng)態(tài)部分,則通過(guò)腳本(ActionScript) 中的腳本語(yǔ)言讀取配置文件中的相關(guān)信息并動(dòng)態(tài)加載得到。與動(dòng)態(tài)部分相 關(guān)的腳本中,定義了所要處理的按鍵信息以及相應(yīng)的處理程序,其中要處 理的按鍵信息和遙控器的按鍵相對(duì)應(yīng),如果按鍵僅僅導(dǎo)致界面的切換,則 跳到相應(yīng)的界面幀即可;如果按鍵觸發(fā)一個(gè)具體的業(yè)務(wù),則通過(guò)腳本語(yǔ)言 將所要觸發(fā)的業(yè)務(wù)字符串傳遞給FLASH播放器。配置文件規(guī)定了界面文件中的動(dòng)態(tài)部分。配置文件可使用標(biāo)準(zhǔn)的XML 文件實(shí)現(xiàn)。圖4描述了配置文件的一個(gè)具體實(shí)例,在該實(shí)例中,描述了一 個(gè)電視節(jié)目清單,該節(jié)目包含有3個(gè)電視節(jié)目,對(duì)每一個(gè)電視節(jié)目規(guī)定了 五個(gè)屬性元素,包括用于標(biāo)識(shí)頻道號(hào)的頻道標(biāo)識(shí)號(hào)、用于標(biāo)識(shí)是否為喜 好節(jié)目的元素,用于表示是否被鎖定的元素,用于表示頻道名稱的元素, 以及用于表示當(dāng)該節(jié)目被選定后所要執(zhí)行的動(dòng)作。其中,可用二進(jìn)制數(shù)"0" 或"1"表示當(dāng)前頻道是否為喜好節(jié)目或是否被鎖定;節(jié)目被選定后所要 執(zhí)行的動(dòng)作用 一個(gè)字符串表示,該字符串表示了交互界面在收到用戶的響 應(yīng)后所要調(diào)用的業(yè)務(wù)功能,因此也被稱為業(yè)務(wù)字符串。業(yè)務(wù)字符串由兩部 分組成,基本格式為"action@paraml¶m2",其中的第一部分表示所 要調(diào)用的函數(shù),而第二部分則表示調(diào)用第一部分的函數(shù)時(shí)所要傳遞的參 數(shù)。兩部分之間用,,@,,分割,如果第二部分所要調(diào)用的參數(shù)有多個(gè)時(shí),則 參數(shù)之間用,,&,,分割。在圖5的示例中,業(yè)務(wù)字符串中所要執(zhí)行的函數(shù)為 播放函數(shù),所調(diào)用的參數(shù)為電視節(jié)目的頻道標(biāo)識(shí)號(hào)。業(yè)務(wù)模塊提供具體的業(yè)務(wù)接口,以供管理模塊的調(diào)用。業(yè)務(wù)模塊中的 業(yè)務(wù)可以看作是業(yè)務(wù)模塊所能提供的功能。例如,在圖7中,用于播放數(shù) 字電視的機(jī)頂盒中所提供的業(yè)務(wù)就包括播放電視節(jié)目,與該業(yè)務(wù)相關(guān)的業(yè) 務(wù)接口是一個(gè)函數(shù),用void PlayProgram(int channel—id)表示。在業(yè)務(wù)才莫塊 中為每一個(gè)業(yè)務(wù)維護(hù)一個(gè)狀態(tài),該狀態(tài)也被稱為業(yè)務(wù)狀態(tài),如在機(jī)頂盒的 業(yè)務(wù)模塊中就包含有表示當(dāng)前是否在播放電視、當(dāng)前是否在搜臺(tái)以及搜臺(tái)
是否結(jié)束等狀態(tài)信息。業(yè)務(wù)模塊的業(yè)務(wù)狀態(tài)信息都可通過(guò)交互界面呈現(xiàn)給 用戶。當(dāng)業(yè)務(wù)模塊中的業(yè)務(wù)狀態(tài)發(fā)生變化,需要對(duì)交互界面中的動(dòng)態(tài)部分 進(jìn)行修改時(shí),業(yè)務(wù)模塊還需要通知管理模塊對(duì)配置文件進(jìn)行修改。管理才莫塊對(duì)用戶的響應(yīng)進(jìn)行處理,并將用戶的響應(yīng)轉(zhuǎn)發(fā)給FLASH播 放器。管理模塊在工作過(guò)程中,還會(huì)接收到FLASH播放器所轉(zhuǎn)發(fā)的業(yè)務(wù) 字符串,當(dāng)它接收到業(yè)務(wù)字符串時(shí),把業(yè)務(wù)字符串映射成業(yè)務(wù)模塊的函數(shù) 入口和函數(shù)參數(shù),調(diào)用業(yè)務(wù)模塊提供的函數(shù)完成具體的功能。例如,當(dāng)管理模塊從FLASH播放器接收到業(yè)務(wù)字符串"play@l"后,該字符串本身 并不能直接調(diào)用業(yè)務(wù)模塊的函數(shù),需要管理模塊對(duì)業(yè)務(wù)字符串進(jìn)行解析。 管理模塊取出字符串中所包含的參數(shù)"1 ",并從字符串中取出相應(yīng)的函 數(shù)名play,上述過(guò)程就是所述的"映射"過(guò)程。管理模塊接收到業(yè)務(wù)模塊 的狀態(tài)改變請(qǐng)求時(shí),修改配置文件,并通知FLASH播放器實(shí)現(xiàn)對(duì)界面的 刷新。FLASH播放器播放界面文件,通過(guò)解釋執(zhí)行界面文件實(shí)現(xiàn)對(duì)交互界 面的顯示。當(dāng)FLASH播放器接收到管理模塊發(fā)送的用戶響應(yīng)后,調(diào)用界 面文件中的腳本處理響應(yīng)事件,如果在腳本語(yǔ)言中解析到業(yè)務(wù)字符串,則 把業(yè)務(wù)字符串轉(zhuǎn)發(fā)給管理模塊。當(dāng)接收到管理模塊的刷新請(qǐng)求時(shí),刷新界 面上的動(dòng)態(tài)元素。本發(fā)明中所采用的FLASH播放器可通過(guò)現(xiàn)有的成熟技 術(shù)實(shí)現(xiàn)。本發(fā)明的交互系統(tǒng)應(yīng)用于DVB機(jī)頂盒中時(shí),交互界面文件保存在機(jī) 頂盒的文件系統(tǒng)中,而FLASH播放器,管理模塊和業(yè)務(wù)模塊則作為機(jī)頂 盒的程序運(yùn)行。與現(xiàn)有技術(shù)相比,本發(fā)明的交互界面在定制(修改)時(shí), 只需要對(duì)交互界面文件中的配置文件和界面文件進(jìn)行修改即可,而不需要 改變機(jī)頂盒模塊中所保存的與FLASH播放器,管理模塊和業(yè)務(wù)模塊相關(guān) 的程序。例如,要對(duì)交互界面中菜單的位置和樣式進(jìn)行修改時(shí),只需要美 工人員在FLASH編輯器中對(duì)界面文件進(jìn)行修改,畫出所需菜單的樣式和 大小,然后更新界面文件,不需要編程人員對(duì)機(jī)頂盒內(nèi)部的程序進(jìn)行修改。下面以DVB機(jī)頂盒中所采用的交互系統(tǒng)為例,對(duì)本發(fā)明所述的交互 系統(tǒng)的工作流程進(jìn)行說(shuō)明。假設(shè)用戶通過(guò)遙控器觸發(fā)按鍵處理流程,參考圖3,首先由控制模塊 截獲到按鍵,把按鍵的消息轉(zhuǎn)發(fā)給FLASH播放器,當(dāng)FLASH播放器接收 到了按鍵消息之后,調(diào)用界面文件中的腳本對(duì)其進(jìn)行解釋。如果在配置文 件定義了當(dāng)前按鍵需要觸發(fā)的業(yè)務(wù)字符串,則讀取此字符串,并向管理模 塊轉(zhuǎn)發(fā)業(yè)務(wù)字符串。管理模塊接收到業(yè)務(wù)字符串之后,解析業(yè)務(wù)字符串,并根據(jù)解析的結(jié)果調(diào)用DVB業(yè)務(wù)模塊完成相應(yīng)的功能。在用戶的操作過(guò)程中,業(yè)務(wù)模塊中的業(yè)務(wù)狀態(tài)可能會(huì)發(fā)生改變,當(dāng)業(yè) 務(wù)狀態(tài)發(fā)生改變時(shí),向管理模塊發(fā)送狀態(tài)改變請(qǐng)求,管理模塊接收到狀態(tài)改變請(qǐng)求后,修改配置文件,并通知所述的FLASH播放器實(shí)現(xiàn)對(duì)交互界 面的刷新。圖4對(duì)交互界面的動(dòng)態(tài)刷新過(guò)程進(jìn)行了說(shuō)明,當(dāng)需要刷新界面 時(shí),首先由DVB業(yè)務(wù)^t塊通知管理模塊對(duì)需要?jiǎng)討B(tài)修改的配置文件進(jìn)行 修改,然后由管理模塊調(diào)用FLASH播放器的接口刷新界面。刷新界面的 時(shí)候僅僅是需要?jiǎng)討B(tài)刷新的部分進(jìn)行了改動(dòng),靜態(tài)部分保持不變,這樣可 以提高響應(yīng)速度。最后所應(yīng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制。 盡管參照實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理 解,對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,都不脫離本發(fā)明技術(shù)方案 的精神和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1、一種嵌入式設(shè)備的交互系統(tǒng),包括業(yè)務(wù)模塊、管理模塊,其特征在于,還包括FLASH播放器以及交互界面文件;其中,交互界面文件包括用來(lái)顯示交互界面的界面文件,和用來(lái)控制所述界面文件所顯示內(nèi)容的配置文件;所述的界面文件分為動(dòng)態(tài)部分和靜態(tài)部分,所述的動(dòng)態(tài)部分用于描述交互界面中動(dòng)態(tài)改變的部分,所述的靜態(tài)部分用于描述交互界面中靜態(tài)不變的部分;所述的FLASH播放器解釋執(zhí)行界面文件以顯示交互界面;所述的管理模塊處理用戶的響應(yīng),并轉(zhuǎn)發(fā)到所述的FLASH播放器,所述的FLASH播放器解釋執(zhí)行所述的用戶響應(yīng),并根據(jù)解釋執(zhí)行的結(jié)果通過(guò)所述管理模塊調(diào)用所述業(yè)務(wù)模塊的相應(yīng)接口;所述的管理模塊根據(jù)所述業(yè)務(wù)模塊的狀態(tài)改變請(qǐng)求,修改所述的配置文件,并通過(guò)所述的FLASH播放器實(shí)現(xiàn)對(duì)交互界面的刷新。
2、 根據(jù)權(quán)利要求1所述的嵌入式設(shè)備的交互系統(tǒng),其特征在于,所 述界面文件中的靜態(tài)部分采用FLASH編輯工具生成。
3、 根據(jù)權(quán)利要求1所述的嵌入式設(shè)備的交互系統(tǒng),其特征在于,所 述界面文件中的動(dòng)態(tài)部分通過(guò)腳本中的腳本語(yǔ)言讀耳又所述配置文件中的 相關(guān)信息并動(dòng)態(tài)加載得到。
4、 根據(jù)權(quán)利要求1所述的嵌入式設(shè)備的交互系統(tǒng),其特征在于,所 述的配置文件包括業(yè)務(wù)字符串、以及對(duì)交互界面中動(dòng)態(tài)部分屬性元素的描 述。
5、 根據(jù)權(quán)利要求4所述的嵌入式設(shè)備的交互系統(tǒng),其特征在于,所 述的業(yè)務(wù)字符串用于表示所述的交互界面在收到用戶的響應(yīng)后所調(diào)用的 業(yè)務(wù)功能,所述業(yè)務(wù)字符串包括兩個(gè)部分, 一部分是所要調(diào)用的函數(shù),另 一部分是調(diào)用函數(shù)時(shí)所要傳遞的參數(shù)。
6、 根據(jù)權(quán)利要求4所述的嵌入式設(shè)備的交互系統(tǒng),其特征在于,所 述的FLASH播放器解釋執(zhí)行所述的用戶響應(yīng)時(shí),調(diào)用所述界面文件中的 腳本,得到所述的業(yè)務(wù)字符串。
全文摘要
本發(fā)明提供一種嵌入式設(shè)備的交互系統(tǒng),包括業(yè)務(wù)模塊、管理模塊,還包括FLASH播放器以及交互界面文件;其中,交互界面文件包括用來(lái)顯示交互界面的界面文件,和用來(lái)控制所述界面文件所顯示內(nèi)容的配置文件;界面文件分為動(dòng)態(tài)部分和靜態(tài)部分,動(dòng)態(tài)部分用于描述交互界面中動(dòng)態(tài)改變的部分,靜態(tài)部分用于描述交互界面中靜態(tài)不變的部分。本發(fā)明的交互系統(tǒng)只需要通過(guò)修改配置文件和界面文件,就可以完成對(duì)交互界面的定制與修改,具有修改簡(jiǎn)便,易于實(shí)現(xiàn)的優(yōu)點(diǎn);交互系統(tǒng)中的界面文件采用常用的FLASH制作工具制作,具有制作方便,操作簡(jiǎn)單,易于增加各種特效的優(yōu)點(diǎn)。
文檔編號(hào)G06F9/44GK101398754SQ20071012252
公開(kāi)日2009年4月1日 申請(qǐng)日期2007年9月26日 優(yōu)先權(quán)日2007年9月26日
發(fā)明者建 劉, 孫曉輝, 春 王, 蕾 王, 王勁林, 曉 陳, 銳 韓 申請(qǐng)人:中國(guó)科學(xué)院聲學(xué)研究所