專利名稱:一種嵌入式系統(tǒng)的開發(fā)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式系統(tǒng),尤其是指一種嵌入式系統(tǒng)的開發(fā)方法及裝置。
技術(shù)背景現(xiàn)有技術(shù)中的嵌入式系統(tǒng)開發(fā)裝置一般分為PC和高級精簡指令集微處理 器(ARM, Advanced RISC Machine )兩部分。 一般來說,PC部分用于給程序 員或用戶提供調(diào)試界面,接收外部輸入的程序或任務(wù),將所接收到的程序或任 務(wù)轉(zhuǎn)換成ARM部分可識別的代碼后發(fā)送給ARM部分;而ARM部分則根據(jù) PC部分發(fā)送的代碼執(zhí)行具體的操作,完成所需執(zhí)行的程序或任務(wù)。同時,ARM 部分也可直接接收外部輸入的程序或任務(wù),但所輸入的程序或任務(wù)必須為ARM 部分可識別的格式。PC部分和ARM部分對于所輸入的任務(wù)或程序進(jìn)行的處理 過程一般可分為3個層次1) 應(yīng)用(App, Application)層其功能在于接收外部輸入的任務(wù)或程序, 即任務(wù)指令,并將所接收到的任務(wù)指令分解成相應(yīng)的芯片能實現(xiàn)的一種或多種 具體的功能,例如芯片的預(yù)覽(Preview)模式和截圖(Capture )模式等的組合, 并將分解后的所需實現(xiàn)的功能發(fā)送給驅(qū)動層;2) 驅(qū)動(Driver)層將所接收到的需要實現(xiàn)的各種功能分別分解為一系 列相應(yīng)的具體操作指令,如對某種函數(shù)的調(diào)用等,并將分解后的具體操作指令 發(fā)送給基本寄存器讀寫層。例如,如果需要實現(xiàn)的功能為設(shè)置Capture模式 下各個模塊的大小,則可將上述的功能分解為相應(yīng)的一系列調(diào)用SetC叩tureSize 函數(shù)的操作,即可通過對SetCaptureSize函數(shù)的不同調(diào)用實現(xiàn)設(shè)置Capture模式 下各個模塊的大小的功能。3 )基本寄存器讀寫(Baserw)層將所接收到的具體操作指令分解為相應(yīng)
的一系列對芯片中的基本寄存器的讀寫操作指令即對芯片的最基本的操作。由PC部分Baserw層分解后的讀寫操作指令將被轉(zhuǎn)換成ARM部分可識別的讀寫 操作指令,并發(fā)送給ARM部分的Baserw層;而ARM部分的Baserw層則才艮據(jù) 接收到的讀寫操作指令,對芯片中的基本寄存器進(jìn)行讀寫操作。圖1為現(xiàn)有技術(shù)中嵌入式系統(tǒng)開發(fā)裝置的結(jié)構(gòu)示意圖。如圖l所示,現(xiàn)有 技術(shù)中嵌入式系統(tǒng)開發(fā)裝置包括PC 101和ARM 102兩部分。其中,PC 101還 包括應(yīng)用層模塊103、驅(qū)動層模塊104、基本寄存器讀寫層模塊105和命令解 析器(Cmd Protocol) 106; ARM 102包括應(yīng)用層才莫塊107、驅(qū)動層才莫塊108 和基本寄存器讀寫層模塊109。當(dāng)上述嵌入式系統(tǒng)開發(fā)裝置接收外部輸入的任務(wù)指令時,可將該任務(wù)指令 輸入PC 101中,該任務(wù)指令依次通過應(yīng)用層模塊103、驅(qū)動層模塊104、基本 寄存器讀寫層模塊105后,被分解成一系列相應(yīng)的讀寫操作指令;然后基本寄 存器讀寫層模塊105將分解好的一系列讀寫操作指令發(fā)送給命令解析器106; 命令解析器106將接收到的指令編譯成可被ARM識別的讀寫操作指令,通過 通用串行總線(USB, Universal Serial Bus )或通用異步收發(fā)器(UART, Universal Asynchronous Receiver/Transmitter)直接發(fā)送給ARM 102中的基本寄存器讀寫 層模塊109,基本寄存器讀寫層模塊109根據(jù)所接收到的讀寫操作指令對芯片 的基本寄存器進(jìn)行讀寫操作,完成整個任務(wù)或程序。此外,也可將該任務(wù)指令直接輸入ARM 102中,該任務(wù)指令依次通過應(yīng)用 層模塊107、驅(qū)動層模塊108、基本寄存器讀寫層模塊109后,被分解成可被基 本寄存器讀寫層模塊109識別的一系列讀寫操作指令;然后基本寄存器讀寫層 模塊109根據(jù)上述的一系列讀寫操作指令對芯片的基本寄存器進(jìn)行讀寫操作, 完成整個任務(wù)或程序。由于ARM中的應(yīng)用層只能識別特定格式的任務(wù)指令, 即ARM 102中的應(yīng)用層模塊107所能識別的任務(wù)指令的格式與PC 101中應(yīng)用 層模塊103中的任務(wù)指令的格式是不同的,因此,直接輸入ARM102中的任務(wù) 指令必須為應(yīng)用層模塊107所能識別的格式。由于上述原因,在一般情況下, 任務(wù)指令都是先輸入到PC 101中,經(jīng)過命令解析器106解析成ARM能夠識別
的操作指令,才發(fā)送到ARM 102的基本寄存器讀寫層模塊109中運行的。在上述的嵌入式系統(tǒng)中,PC 101中的應(yīng)用層模塊103、驅(qū)動層模塊104和 基本寄存器讀寫層模塊105,主要用于將所需實現(xiàn)的任務(wù)指令分解成具體的讀 寫操作指令,因此可將應(yīng)用層模塊103、驅(qū)動層模塊104和基本寄存器讀寫層 模塊105三個模塊統(tǒng)稱為分解模塊;而ARM 102中的應(yīng)用層;f莫塊107、驅(qū)動層 模塊108和基本寄存器讀寫層模塊109,主要用于執(zhí)行所需實現(xiàn)的功能,因此 可將應(yīng)用層模塊107、驅(qū)動層模塊108和基本寄存器讀寫層模塊109統(tǒng)稱為執(zhí) 行模塊。由上述可知,在上述的這種嵌入式系統(tǒng)開發(fā)裝置中,輸入PC中的任務(wù)指 令都需要通過命令解析器進(jìn)行解析后才能發(fā)送給ARM執(zhí)行。在通常情況下, 即使是在PC中的應(yīng)用層中實現(xiàn)調(diào)用一個應(yīng)用函數(shù)的功能,該功能也將在PC部 分的Baserw層被分解成幾百甚至幾千個讀寫操作指令,而這些讀寫操作指令都 必須經(jīng)命令解析器解析成可被ARM識別的讀寫操作指令后,才能被發(fā)送到 ARM上執(zhí)行。而在上述的嵌入式系統(tǒng)開發(fā)裝置的ARM中,執(zhí)行讀寫操作指令 所需的時間一般都非常短,因此,對讀寫操作指令進(jìn)行解析所用的時間將遠(yuǎn)遠(yuǎn) 大于執(zhí)行該讀寫操作指令所用的時間。當(dāng)命令解析器所需解析的指令的數(shù)目非 常多時,將使得執(zhí)行任務(wù)或程序所用的大部分時間都花費在對指令的解析上, 從而導(dǎo)致任務(wù)或程序的運行速度變得非常慢。例如,在一些音/視頻處理芯片中, 當(dāng)PC中的應(yīng)用層需要調(diào)用一個Open函數(shù)時,命令解析器需要將實現(xiàn)上述對 Open函數(shù)調(diào)用功能的幾千個指令解析為相應(yīng)的可被ARM識別的讀寫操作指 令,整個解析的過程將耗時一分多鐘,而在ARM上執(zhí)行上述經(jīng)過解析后的讀 寫搡作指令所用的時間則非常短,幾乎可以忽略不計。因此,上述的解析過程將嚴(yán)重影響任務(wù)或程序在上述嵌入式系統(tǒng)開發(fā)裝置上的運行速度。 發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種嵌入式系統(tǒng)的開發(fā)方法及裝置, 從而大大減少任務(wù)的運行時間。為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的 本發(fā)明提供了一種嵌入式系統(tǒng)的開發(fā)方法,該方法包括 控制終端將任務(wù)分解成操作動作序列,將操作動作序列解析成碼值序列, 將碼值序列進(jìn)行格式轉(zhuǎn)換后發(fā)送給高級精簡指令集微處理器ARM; ARM將接 收到的格式轉(zhuǎn)換后的碼值序列解析成操作動作序列,將解析后的操作動作序列 轉(zhuǎn)換成可被ARM識別的任務(wù)指令,根據(jù)任務(wù)指令完成所述任務(wù)。本發(fā)明還提供了一種嵌入式系統(tǒng)的開發(fā)裝置,包括控制終端和ARM,所述 控制終端包括第一菜單層模塊和擴(kuò)展命令解析器;所述ARM包括第二菜單層 模塊和執(zhí)行模塊;所述第一菜單層模塊,用于將任務(wù)分解成操作動作序列,將操作動作序列 解析成碼值序列,將碼值序列發(fā)送給擴(kuò)展命令解析器;所述擴(kuò)展命令解析器,用于將碼值序列進(jìn)行格式轉(zhuǎn)換后,發(fā)送給第二菜單 層模塊;所述第二菜單層模塊,用于根據(jù)接收到的格式轉(zhuǎn)換后的碼值序列得到成操作動作序列,將操作動作序列轉(zhuǎn)換成可被ARM識別的任務(wù)指令,將可被ARM識別的任務(wù)指令發(fā)送給執(zhí)行模塊;所述執(zhí)行模塊,用于根據(jù)所接收到的任務(wù)指令,對基本寄存器進(jìn)行操作。綜上可知,本發(fā)明提供了一種嵌入式系統(tǒng)的開發(fā)方法及裝置,由于在ARM中執(zhí)行將任務(wù)指令解析成可被ARM識別的讀寫操作指令,使得在執(zhí)行任務(wù)或程序時,在控制終端中無需對大量的命令進(jìn)行解析,從而大大地減少了任務(wù)的運行時間,提高了整個系統(tǒng)的工作效率。并且,由于將任務(wù)指令轉(zhuǎn)換成讀寫操作指令的過程是在ARM中進(jìn)行的,因此轉(zhuǎn)換的速度更快,從而節(jié)省了系統(tǒng)資源,降低了系統(tǒng)的能耗及成本。同時,控制終端只需要將所需執(zhí)行的任務(wù)轉(zhuǎn)換 成一個碼值序列后即傳輸?shù)紸RM中,而無需將任務(wù)指令再轉(zhuǎn)換成一系列的讀寫操作指令再進(jìn)行處理,因此控制終端的處理過程更為簡單。進(jìn)一步的,由于本發(fā)明實施例中提供了圖形用戶界面,從而使得用戶對于整個系統(tǒng)的使用或調(diào)試變得更加便捷;同時,由于所有可選的任務(wù)都分類顯示 在圖形用戶界面所示的第一菜單中,因此所述的圖形用戶界面還具有良好的可 視性,即用戶可輕松地從圖形用戶界面上獲知所有可選的任務(wù)及任務(wù)所在的分類。
圖1為現(xiàn)有技術(shù)中嵌入式系統(tǒng)的開發(fā)裝置的結(jié)構(gòu)示意圖。圖2為本發(fā)明實施例中嵌入式系統(tǒng)的開發(fā)裝置的結(jié)構(gòu)示意圖。 圖3為本發(fā)明實施例中第一菜單層模塊的用戶界面示意圖。 圖4為本發(fā)明實施例中嵌入式系統(tǒng)的開發(fā)方法的流程圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點表達(dá)得更加清楚明白,下面結(jié)合附 圖及具體實施例對本發(fā)明再作進(jìn)一步詳細(xì)的說明。本發(fā)明實施例中提供了一種嵌入式系統(tǒng)的開發(fā)方法及裝置,即通過在嵌 入式系統(tǒng)的開發(fā)裝置中的控制終端以及ARM中分別增加第 一菜單層模塊和 第二菜單層模塊,使得控制終端可使用第一菜單層模塊將用戶所選擇的任務(wù) 分解成一系列的操作動作,可稱之為一個搡作動作序列,并將上述操作動作 序列解析成相應(yīng)的碼值序列,然后將碼值序列經(jīng)過擴(kuò)展命令解析器進(jìn)行格式 轉(zhuǎn)換后發(fā)送給ARM;由ARM中的第二菜單層模塊將格式轉(zhuǎn)換后的碼值序 列解析成操作動作序列,并將解析后的操作動作序列轉(zhuǎn)換成可被ARM識別 的任務(wù)指令,從而使得ARM可根據(jù)所述的任務(wù)指令完成用戶所選擇的任務(wù)。 所述的操作動作序列,可以包括一個或一個以上的操作動作。圖2所示為本發(fā)明實施例中的嵌入式系統(tǒng)開發(fā)裝置的結(jié)構(gòu)示意圖,如圖 2所示,本發(fā)明實施例中的嵌入式系統(tǒng)開發(fā)裝置包括控制終端201和ARM 202兩部分??刂平K端201包括第一菜單層模塊203和擴(kuò)展命令解析器204; ARM 202包括執(zhí)行模塊300、第二菜單層模塊205以及查詢模塊206。其中,所述執(zhí)行模塊300包括應(yīng)用層模塊107、驅(qū)動層模塊108和基
本寄存器讀寫層模塊109。用戶將所需完成的任務(wù)發(fā)送給第一菜單層模塊203,其后續(xù)的處理過程 將如下所述所述的第一菜單層模塊203,可以使用如圖3所示的用戶界面來接收用 戶所需完成的任務(wù),根據(jù)預(yù)先設(shè)置在的第一菜單層模塊203中的第一菜單, 將用戶所選定的任務(wù)(即任務(wù)指令)分解成一個操作動作序列,該操作動作 序列包括一個或一個以上的操作動作,并根據(jù)預(yù)先設(shè)置在第一菜單層模塊 203中的第一碼值表將所述的操作動作序列解析成碼值序列,然后將碼值序 列發(fā)送給擴(kuò)展命令解析器204;擴(kuò)展命令解析器204將碼值序列轉(zhuǎn)換成能被 ARM識別的碼值序列,并將碼值序列發(fā)送給第二菜單層模塊205;第二菜 單層模塊205將格式轉(zhuǎn)換后的碼值序列發(fā)送給查詢模塊206;查詢模塊206 根據(jù)預(yù)先設(shè)置的第二碼值表將來自第二菜單層模塊205的碼值序列解析成 相應(yīng)的操作動作序列,并將該操作動作序列返回給第二菜單層模塊205;第 二菜單層模塊205根據(jù)預(yù)先設(shè)置在第二菜單層模塊205中的與第 一菜單層模 塊203中的第一菜單相對應(yīng)的第二菜單,將解析后的操作動作序列轉(zhuǎn)換成可 被ARM所識別的任務(wù)指令(即用戶所選擇的任務(wù)),并將該任務(wù)指令發(fā)送 給執(zhí)行模塊300;執(zhí)行模塊300根據(jù)接收到的任務(wù)指令,完成用戶所選擇的 任務(wù)。如上所述,在上述的第一菜單層模塊203中,還包括一個用戶界面,該 用戶界面是一個"所見即所得"的圖形用戶界面(GUI)。通過該圖形用戶 界面,用戶可以方便地選擇所需執(zhí)行的任務(wù)或程序。第一菜單層模塊203可 使用如圖3所示的用戶界面來接收用戶所需完成的任務(wù),即用戶可通過如圖 3所示的用戶界面來選擇任務(wù)。圖3為本發(fā)明實施例中第一菜單層模塊的用戶界面示意圖。如圖3所示, 所述第 一菜單層模塊203中的圖形用戶界面由 一個顯示框301和按鈕框302 組成。其中,顯示框301用于顯示上述的第一菜單中的任務(wù)指令所對應(yīng)的任 務(wù),或者說顯示框301中所顯示的內(nèi)容即為上述的第一菜單,該第一菜單為
一個多級菜單,每一級菜單中都有多個可選的觸發(fā)對象(即顯示框301中的方框),每一個觸發(fā)對象都代表著嵌入式系統(tǒng)開發(fā)裝置所能實現(xiàn)的一種功能。例如,圖3的顯示框301中所顯示的是一個三級菜單,其中,第一級菜 單有兩個觸發(fā)對象"V578b"和"V336",分別表示用戶可選擇使用芯片 V578b或芯片V336;觸發(fā)對象"V578b"具有子菜單,可將該子菜單稱之為 第二級菜單(觸發(fā)對象"V336"也可以具有子菜單,圖3中未示出)。所 述第二級菜單中具有"預(yù)覽,,和"捕獲"兩個觸發(fā)對象,分別表示用戶還可 選擇使用芯片V578b下的預(yù)覽模式或捕獲模式。其中,觸發(fā)對象"預(yù)覽" 沒有子菜單,可稱之為末端觸發(fā)對象,每個末端觸發(fā)對象都表示一個用戶可 選定的需要執(zhí)行的任務(wù)。例如,如果用戶選定了末端觸發(fā)對象"預(yù)覽",則 表示用戶所選定的需要執(zhí)行的任務(wù)為進(jìn)入芯片V578b下的預(yù)覽模式。另 外,觸發(fā)對象"捕獲,,具有子菜單,可將該子菜單稱之為第三級菜單。所述 第三級菜單中還具有"1280 x 968"和"640x 480"兩個觸發(fā)對象,這兩個 觸發(fā)對象都沒有子菜單,因此都是末端觸發(fā)對象,分別表示用戶還可以繼續(xù) 選擇捕獲模式下的"1280 x 968"或"640 x 480"兩個選項,這兩個選項分 別表示所捕獲的圖像的大小為1280 x 968個像素點和640 x 480個像素點的 兩種捕獲模式。根據(jù)如上所示的三級菜單,用戶可通過按鈕框302中的5個 按鈕來實現(xiàn)上述的對所需執(zhí)行的任務(wù)的選擇,這5個按鈕分別是復(fù)位(Reset) 鍵、向上(Up)鍵、向下(Down)鍵、確認(rèn)(Enter)鍵和返回(Exit)鍵, 這5個按鈕的功能代表了 5個操作動作,5個操作動作以及其對應(yīng)的碼值如 下所述Reset鍵選擇該鍵可使當(dāng)前的選擇回復(fù)到圖形用戶界面的初始狀態(tài), 即沒有做任何選擇時的初始狀態(tài);在上述的三級菜單中,默認(rèn)的初始狀態(tài)為 觸發(fā)對象"V578b",即選擇使用芯片V578b;選擇該鍵的操作動作可用碼 值"0"表示。Up鍵選擇該鍵即可在所述三級菜單中選擇同一級菜單中的上一個觸發(fā)對象;選擇該鍵的操作動作可用碼值"1"表示。 Down鍵選擇該鍵即可在所述三級菜單中選擇同 一級菜單中的下一個 觸發(fā)對象;選擇該鍵的操作動作可用碼值"2"表示。Enter鍵如果當(dāng)前的觸發(fā)對象不是末端觸發(fā)對象,則選擇該鍵即可進(jìn) 入所述當(dāng)前的觸發(fā)對象所在菜單的下一級菜單;如果當(dāng)前的觸發(fā)對象為末端 觸發(fā)對象(即沒有子菜單的觸發(fā)對象),則選擇該鍵表示選定該觸發(fā)對象所 對應(yīng)的任務(wù)。選擇該鍵的操作動作可用碼值"3"表示。Exit鍵選擇該鍵即可進(jìn)入所述三級菜單中的上一級菜單;選擇該鍵的 操作動作可用碼值"4"表示。通過用碼值分別表示按鈕框302中的5個按鈕,用戶對顯示框301中所 顯示的每一個觸發(fā)對象的選擇都可用上述五個按鈕的不同組合來表示。例 如,如果用戶需要實現(xiàn)在芯片V578b中使用捕獲模式截取大小為1280x960 的圖片的任務(wù),則該用戶對上述任務(wù)的選擇可以通過如下 一 系列的操作動作 (即一個操作動作序列)來實現(xiàn),即按以下的順序選擇按鈕ReseH定—Enter 鍵—Down鍵—Enter鍵—Enter鍵。上述的這一 系列的對按鈕的操作動作可 用按鈕所對應(yīng)的碼值來表示,從而形成一個碼值序列0, 3, 2, 3, 3。同 時,用戶也可以按其它的順序來選擇按鈕,從而選定所需實現(xiàn)的在芯片 V578b中使用捕獲模式截取大小為1280 x 960的圖片的任務(wù),例如Reset 鍵—Enter鍵—Exit鍵—Enter鍵—Exit鍵—Enter鍵—Down鍵—Enter鍵— Enter鍵,上述這一系列的操作動作(即一個操作動作序列)所對應(yīng)的碼值 序列為0, 3, 4, 3, 4, 3, 2, 3, 3。因此,上述顯示框301中所能實現(xiàn) 的每一個任務(wù)所對應(yīng)的碼值序列并不是唯一的,即用戶可通過不同的操作動 作序列來實現(xiàn)對同一個任務(wù)的選定。上述的這些按鈕所對應(yīng)的碼值可預(yù)先進(jìn) 行設(shè)置,形成兩個碼值表,即上述的第一碼值表和第二碼值表,并將這兩個 碼值表分別預(yù)先設(shè)置在嵌入式系統(tǒng)開發(fā)裝置的第一菜單層模塊203和查詢 模塊206中。其中,第一菜單層模塊203先將用戶所選定的任務(wù)(即任務(wù)指 令)分解成一個操作動作序列(即用戶在選定上述任務(wù)的過程中對上述五個 按鈕所進(jìn)行的一系列的操作動作),并根據(jù)第一碼值表將上述操作動作序列
解析成碼值序列,查詢模塊206根據(jù)第二碼值表將接收到的碼值序列解析成 操作動作序列。所述的查詢模塊206可以設(shè)置在ARM 202中,也可以設(shè)置 在第二菜單層模塊205中。圖3所示的顯示框301中所顯示的功能只是本發(fā)明的一個具體實施例, 在實際應(yīng)用中,可根據(jù)系統(tǒng)的功能和用戶的需求將顯示框301設(shè)計成不同的 顯示內(nèi)容,并根據(jù)所需實現(xiàn)的功能預(yù)先設(shè)置碼值、碼值序列和碼值表。此外,當(dāng)執(zhí)行模塊300接收到的任務(wù)指令后,執(zhí)行模塊300中的應(yīng)用層 模塊107將接收到的任務(wù)指令分解成相應(yīng)的所需實現(xiàn)的功能,并將其發(fā)送給 驅(qū)動層模塊108;驅(qū)動層模塊108將接收到的所需實現(xiàn)的功能分解成一系列 相應(yīng)的具體操作指令,并將其發(fā)送給基本寄存器讀寫層模塊109;基本寄存 器讀寫層模塊109將所接收到的具體操作指令分解為相應(yīng)的一系列對芯片 中的基本寄存器的讀寫操作指令,對相應(yīng)的基本寄存器進(jìn)行操作,完成用戶 所選擇的任務(wù)。另外,本發(fā)明實施例中的控制終端201可以是PC,也可以是手持移動 設(shè)備等其他的控制設(shè)備。所述的查詢模塊206可以設(shè)置在第二菜單層模塊 205之外,也可以設(shè)置在第二菜單層模塊205之內(nèi)。所述的第一碼值表用于 描述每個操作動作與碼值序列中的碼值的對應(yīng)關(guān)系,所述的第二碼值表用于 描述格式轉(zhuǎn)換后的碼值序列中的碼值與每個操作動作的對應(yīng)關(guān)系;在所述第 一碼值表與第二碼值表中, 一個碼值及其相應(yīng)的轉(zhuǎn)換后的碼值對應(yīng)于同 一個 操作動作。例如,如果在第一碼值表中,某一碼值a對應(yīng)于操作動作A,則 在第二碼值表中,由上述碼值a經(jīng)過格式轉(zhuǎn)換后而得到的轉(zhuǎn)換后的碼值al 也對應(yīng)于操作動作A。此外,所述的第一菜單用于描述操作動作序列與可被 控制終端識別的任務(wù)指令的對應(yīng)關(guān)系,所述的第二菜單用于描述可被ARM 識別的任務(wù)指令與操作動作序列的對應(yīng)關(guān)系;在所述的第一菜單與第二菜單 中,同一個操作動作序列對應(yīng)于一個可被控制終端識別的任務(wù)指令及其經(jīng)過 格式轉(zhuǎn)換后的可被ARM識別的任務(wù)指令。例如,在第一菜單中,如果一個 操作動作序列B所對應(yīng)的是可被控制終端識別的任務(wù)指令b,則在第二菜單
中,上述操作動作序列B對應(yīng)于由上述任務(wù)指令b經(jīng)過格式轉(zhuǎn)換后而得到的可被ARM識別的任務(wù)指令bl。下面結(jié)合圖2和圖3對本發(fā)明實施例中的嵌入式系統(tǒng)開發(fā)裝置處理流程 進(jìn)行詳細(xì)的說明。圖4所示為本發(fā)明實施例中嵌入式系統(tǒng)的開發(fā)方法的流程 圖。如圖4所示,本發(fā)明實施例中嵌入式系統(tǒng)的開發(fā)方法包括以下幾個步驟步驟401,選定所需執(zhí)行的任務(wù),預(yù)設(shè)碼值表。具體地說,當(dāng)需要完成某個任務(wù)或運行某個程序時,用戶可通過控制終 端201的第一菜單層模塊203中的GUI選定上述任務(wù)或程序。同時,在第 一菜單層模塊203中和查詢模塊206中分別預(yù)設(shè)第一碼值表和第二碼值表, 所述第 一、第二碼值表列舉了操作動作與碼值及轉(zhuǎn)換后的碼值的對應(yīng)關(guān)系。步驟402,將所選定的任務(wù)解析成碼值序列。具體地說,第一菜單層模塊203先根據(jù)所述GUI提供的第一菜單將上定好的第 一碼值表將所述的操作動作序列解析成一組碼值序列后,將該碼值 序列發(fā)送給擴(kuò)展命令解析器204。步驟403 ,將碼值序列發(fā)送給ARM。具體地說,可由擴(kuò)展命令解析器204將接收到的碼值序列轉(zhuǎn)換成ARM 所能識別的格式,并將轉(zhuǎn)換后的碼值序列發(fā)送給ARM 202中的第二菜單層 模塊205。步驟404,將碼值序列解析成ARM的^:作指令。具體地說,ARM 202中的第二菜單層模塊205接收到碼值序列后,將 該碼值序列發(fā)送給查詢模塊206;查詢模塊206根據(jù)第二碼值表將所接收到 的碼值序列解析成相應(yīng)的操作動作序列,并將解析后的操作動作序列返回給 第二菜單層模塊205;第二菜單層模塊205根據(jù)查詢模塊206返回的操作動 作序列,從預(yù)先設(shè)置在第二菜單層模塊205中的第二菜單中找到該操作動作 序列所對應(yīng)的末端觸發(fā)對象,并對該末端觸發(fā)對象進(jìn)行觸發(fā)(例如,完成操 作動作"Enter"),進(jìn)行函數(shù)調(diào)用,所述函數(shù)調(diào)用的結(jié)果即為該末端觸發(fā)對
象所對應(yīng)的任務(wù)指令,從而將上述解析好的操作動作序列轉(zhuǎn)換成可被ARM所識別的任務(wù)指令(即用戶所選擇的任務(wù)),并將該任務(wù)指令發(fā)送給執(zhí)行模塊300;執(zhí)行模塊300根據(jù)接收到的任務(wù)指令,完成用戶所選擇的任務(wù)。具 體來說,執(zhí)行模塊300中的應(yīng)用層模塊107將接收到的任務(wù)指令分解成相應(yīng) 的所需實現(xiàn)的功能,并將其發(fā)送給驅(qū)動層模塊108;驅(qū)動層模塊108將接收 到的所需實現(xiàn)的功能分解成一 系列相應(yīng)的具體操作指令,并將其發(fā)送給基本 寄存器讀寫層模塊109;基本寄存器讀寫層模塊109將所接收到的具體操作 指令分解為相應(yīng)的一系列對芯片中的基本寄存器的讀寫操作指令,對相應(yīng)的 基本寄存器進(jìn)行操作,完成用戶所選擇的任務(wù)。步驟405,對基本寄存器進(jìn)行操作,完成任務(wù)。具體地說,基本寄存器讀寫層模塊109根據(jù)上述的讀寫操作指令對相應(yīng) 的寄存器進(jìn)行相應(yīng)的操作,從而完成用戶所需執(zhí)行的任務(wù)或程序。在上述的嵌入式系統(tǒng)的開發(fā)方法中,也可實現(xiàn)現(xiàn)有技術(shù)中所實現(xiàn)的功 能,即可將所需執(zhí)行的任務(wù)或程序輸入控制終端201中,通過分解模塊200 分解成一系列相應(yīng)的讀寫操作指令,再通過擴(kuò)展命令解析器204發(fā)送給ARM 102中的基本寄存器讀寫層模塊109,由基本寄存器讀寫層模塊109根據(jù)所 接收到的讀寫操作指令對芯片的基本寄存器進(jìn)行讀寫操作,完成整個任務(wù)或 程序。綜上所述,由于在本發(fā)明實施例所提供的嵌入式系統(tǒng)的開發(fā)方法及裝置 中,用戶所選擇執(zhí)行的任務(wù)被第一菜單層模塊203解析成一組碼值序列后, 直接發(fā)送給擴(kuò)展命令解析器204,而擴(kuò)展命令解析器204只需對碼值序列進(jìn) 行格式轉(zhuǎn)換后即可發(fā)送給ARM中的第二菜單層模塊205,而無需對大量的 命令進(jìn)行解析,從而節(jié)省了解析命令所用的時間,大大地減少了任務(wù)的運行 時間,提高了整個系統(tǒng)的工作效率。而且,由于本發(fā)明實施例中提供了圖形 用戶界面,從而使得用戶對于整個系統(tǒng)的使用或調(diào)試變得更加便捷;同時, 由于所有可選的任務(wù)都分類顯示在第一菜單中,因此所述的圖形用戶界面還 具有良好的可視性,即用戶可輕松地從圖形用戶界面上獲知所有可選的任務(wù) 及任務(wù)所在的分類;另外,通過使用用戶圖像界面,可將所需執(zhí)行的任務(wù)轉(zhuǎn) 換成一個碼值序列后進(jìn)行處理,而無需將任務(wù)指令再轉(zhuǎn)換成一系列的讀寫操 作指令再進(jìn)行處理,因此處理過程更為簡單;此外,由于將任務(wù)指令轉(zhuǎn)換成 讀寫操作指令的過程是在ARM中進(jìn)行的,因此轉(zhuǎn)換的速度更快,從而節(jié)省 了系統(tǒng)資源,降低了系統(tǒng)的能耗及成本。本領(lǐng)域內(nèi)的普通技術(shù)人員亦可根據(jù)上述描述,作出許多的修改。比如, 如圖2所示,在控制終端201內(nèi)還可以i殳置分解才莫塊200。所述分解模塊200包括應(yīng)用層模塊103、驅(qū)動層模塊104、基本寄存 器讀寫層模塊105;所述分解模塊200和執(zhí)行模塊300與圖1所示的嵌入式 系統(tǒng)開發(fā)裝置中相對應(yīng)的分解模塊(包括應(yīng)用層模塊103、驅(qū)動層模塊104 和基本寄存器讀寫層模塊105)和執(zhí)行模塊(包括應(yīng)用層模塊107、驅(qū)動 層模塊108和基本寄存器讀寫層模塊109),在結(jié)構(gòu)、連接關(guān)系以及功能上 都可以是一致的。相應(yīng)的,所述擴(kuò)展命令解析器204還具有與圖1中命令解 析器106相同的功能。用戶可以將所需完成的任務(wù)發(fā)送給分解模塊200,也 可以將所需完成的任務(wù)發(fā)送給第 一菜單層模塊203 (其中的選擇關(guān)系為本領(lǐng) 域內(nèi)普通技術(shù)人員應(yīng)當(dāng)可以實現(xiàn)的,此處不贅述)。如果將任務(wù)發(fā)送給分解 模塊200,則后續(xù)的處理過程與圖1所示的處理過程是一致的。以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護(hù) 范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等, 均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種嵌入式系統(tǒng)的開發(fā)方法,其特征在于,該方法至少包括控制終端將任務(wù)分解成操作動作序列,將操作動作序列解析成碼值序列,將碼值序列進(jìn)行格式轉(zhuǎn)換后發(fā)送給高級精簡指令集微處理器ARM;ARM將接收到的格式轉(zhuǎn)換后的碼值序列解析成操作動作序列,將解析后的操作動作序列轉(zhuǎn)換成可被ARM識別的任務(wù)指令,根據(jù)任務(wù)指令完成所述任務(wù)。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述將任務(wù)分解成操作動 作之前還進(jìn)一步包括選擇所需執(zhí)行的任務(wù)。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述將任務(wù)分解成操作動 作序列之前還進(jìn)一步包括預(yù)先設(shè)置一個第一菜單,用于描述操作動作序列與可被控制終端識別的任 務(wù)指令的對應(yīng)關(guān)系;預(yù)先設(shè)置一個第二菜單,用于描述可被ARM識別的任務(wù)指令與操作動作 序列的對應(yīng)關(guān)系;在所述的第一菜單與第二菜單中,同一個操作動作序列對應(yīng)于一個可被控 制終端識別的任務(wù)指令以及該可被控制終端識別的任務(wù)指令經(jīng)過格式轉(zhuǎn)換后的 可被ARM識別的任務(wù)指令。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述將操作動作序列解析 成碼值序列之前還進(jìn)一 步包括預(yù)先設(shè)置一個第一碼值表,用于描述操作動作序列中的每個操作動作與碼 值序列中的碼值的對應(yīng)關(guān)系;預(yù)先設(shè)置一個第二碼值表,用于描述格式轉(zhuǎn)換后的碼值序列中的碼值與操作動作序列中的每個操作動作的對應(yīng)關(guān)系;在所述第一碼值表與第二碼值表中, 一個碼值及其相應(yīng)的轉(zhuǎn)換后的碼值對應(yīng)于同一個操作動作。
5、 一種嵌入式系統(tǒng)的開發(fā)裝置,包括控制終端和ARM,其特征在于所 述控制終端包括第一菜單層模塊和擴(kuò)展命令解析器;所述ARM包括第二菜單 層模塊和執(zhí)行模塊;所述第一菜單層模塊,用于將任務(wù)分解成操作動作序列,將操作動作序列 解析成碼值序列,將碼值序列發(fā)送給擴(kuò)展命令解析器;所述擴(kuò)展命令解析器,用于將碼值序列進(jìn)行格式轉(zhuǎn)換后,發(fā)送給第二菜單 層模塊;所述第二菜單層模塊,用于根據(jù)接收到的格式轉(zhuǎn)換后的碼值序列得到操作 動作序列,將操作動作序列轉(zhuǎn)換成可被ARM識別的任務(wù)指令,將可被ARM識 別的任務(wù)指令發(fā)送給執(zhí)行模塊;所述執(zhí)行模塊,用于根據(jù)所接收到的任務(wù)指令,對基本寄存器進(jìn)行操作。
6、 根據(jù)權(quán)利要求5所述的裝置,其特征在于所述第一菜單層^t塊還包括 第一菜單;所述第二菜單層模塊還包括第二菜單;所述第一菜單,用于描述操作動作序列與可被控制終端識別的任務(wù)指令的 對應(yīng)關(guān)系;所述第一菜單層模塊,根據(jù)所述第一菜單將任務(wù)分解成操作動作序列; 所述第二菜單,用于描述可被ARM識別的任務(wù)指令與操作動作序列的對應(yīng)關(guān)系;所述第二菜單層模塊,根據(jù)所述第二菜單將操作動作序列轉(zhuǎn)換成可被ARM 所識別的任務(wù)指令。
7、 根據(jù)權(quán)利要求5所述的裝置,其特征在于所述ARM還包括查詢模塊; 所述查詢模塊,用于將從第二菜單層模塊接收的格式轉(zhuǎn)換后的碼值序列解析成操作動作序列,將操作動作序列發(fā)送給第二菜單層模塊;所述第二菜單層模塊,用于將格式轉(zhuǎn)換后的碼值序列發(fā)送給所述查詢模塊, 接收查詢模塊發(fā)送的解析后的操作動作序列。
8、 根據(jù)權(quán)利要求7所述的裝置,其特征在于所述第一菜單層模塊還包括 第一碼值表;所述查詢模塊還包括第二碼值表;所述第一碼值表,用于描述操作動作序列中的每個操作動作與碼值序列中的碼值的對應(yīng)關(guān)系;所述第 一菜單層模塊,根據(jù)所述第 一碼值表將操作動作序列解析成碼值序列;所述第二碼值表,用于描述格式轉(zhuǎn)換后的碼值序列中的碼值與操作動作序 列中的每個操作動作的對應(yīng)關(guān)系;所述查詢模塊,根據(jù)所述第二碼值表將從第二菜單層模塊接收的格式轉(zhuǎn)換 后的碼值序列解析成操作動作序列;在所述第一碼值表與第二碼值表中, 一個碼值及其相應(yīng)的轉(zhuǎn)換后的碼值對應(yīng)于同一個操作動作。9、 根據(jù)權(quán)利要求5所述的裝置,其特征在于所述第一菜單層模塊還包括一個用戶界面;所述用戶界面,用于選擇所需執(zhí)行的任務(wù),將所選擇的任務(wù)發(fā)送給第一菜 單層模塊。10、 根據(jù)權(quán)利要求9所述的裝置,其特征在于所述用戶界面包括顯示框 和4姿4丑才匡;所述顯示框,用于顯示第一菜單中的任務(wù)指令所對應(yīng)的任務(wù); 所述按鈕框,用于選擇所述顯示框中顯示的任務(wù)。
全文摘要
本發(fā)明公開了一種嵌入式系統(tǒng)的開發(fā)方法,該方法包括控制終端將任務(wù)分解成操作動作序列,將操作動作序列解析成碼值序列,將碼值序列進(jìn)行格式轉(zhuǎn)換后發(fā)送給ARM;ARM將接收到的格式轉(zhuǎn)換后的碼值序列解析成操作動作序列,將解析后的操作動作序列轉(zhuǎn)換成可被ARM識別的任務(wù)指令,根據(jù)任務(wù)指令完成所述任務(wù)。本發(fā)明還公開了一種嵌入式系統(tǒng)的開發(fā)裝置,該裝置包括控制終端和ARM,控制終端包括第一菜單層模塊和擴(kuò)展命令解析器;ARM包括第二菜單層模塊和執(zhí)行模塊。通過上述的方法和裝置,控制終端無需對大量的命令進(jìn)行解析,大大減少了運行時間,提高了系統(tǒng)工作效率。且由于提供了圖形用戶界面,可使得用戶對于系統(tǒng)的使用或調(diào)試更加便捷。
文檔編號G06F9/44GK101110027SQ20071012063
公開日2008年1月23日 申請日期2007年8月22日 優(yōu)先權(quán)日2007年8月22日
發(fā)明者張攀峰, 游明琦 申請人:北京中星微電子有限公司