專利名稱:嵌入式設(shè)備的調(diào)試方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)周邊設(shè)備領(lǐng)域,尤其涉及一種嵌入式設(shè)備的調(diào)試方法。
背景技術(shù):
現(xiàn)有的嵌入式系統(tǒng)中的調(diào)試方法,無論是將調(diào)試信息輸出到串行輸出接口、顯示器還是輸出為文本形式,它們的原理以及調(diào)試過程都是1.決定驅(qū)動程序的哪些地方需要打印調(diào)試信息。2.在這些預(yù)定的地方加入調(diào)試輸出語句。3.在執(zhí)行到這些地方的時候,驅(qū)動程序輸出調(diào)試信息。根據(jù)這種方法調(diào)試人員要預(yù)先確定外設(shè)的調(diào)試內(nèi)容,編寫相應(yīng)的調(diào)試程序并在其中預(yù)先確定需要調(diào)試的地方嵌入輸出調(diào)試信息語句,將相關(guān)數(shù)據(jù)燒錄到外設(shè)硬件上進(jìn)行調(diào)試,調(diào)試結(jié)束后根據(jù)輸出的調(diào)試信息來判斷外設(shè)的工作狀態(tài)。如需要再次調(diào)試則重新編寫程序并進(jìn)行燒錄、調(diào)試。
這樣的調(diào)試方法有幾個無法避免的缺陷1、由于只在預(yù)先設(shè)定的特定的調(diào)試位置嵌入調(diào)試語句,因此也只能在特定的位置輸出調(diào)試信息。2、由于數(shù)據(jù)是預(yù)先燒錄在外設(shè)的硬件上的,所以現(xiàn)有的調(diào)試手段只能輸出而無法更改驅(qū)動程序中使用到的全局或局部變量。3、進(jìn)一步的以上的缺陷1決定了調(diào)試時外設(shè)的狀態(tài)只能在調(diào)試結(jié)束后根據(jù)輸出的調(diào)試信息來判斷,而且只能判斷預(yù)先設(shè)定的調(diào)試部分的狀態(tài),導(dǎo)致測試人員無法隨時準(zhǔn)確地知道驅(qū)動程序所控制的外設(shè)的狀態(tài)。4、同樣地以上提到的缺陷2導(dǎo)致了測試人員無法隨時更改驅(qū)動程序所控制的外設(shè)的狀態(tài)。5、由于調(diào)試數(shù)據(jù)預(yù)先設(shè)定并燒錄固化在硬件上,所以僅僅為了更改哪怕一個變量或者寄存器,驅(qū)動程序開發(fā)人員也不得不花費(fèi)很多時間重新編譯鏈接燒錄韌件。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種嵌入式設(shè)備的調(diào)試方法,以克服現(xiàn)有嵌入式設(shè)備的調(diào)試技術(shù)不能實時讀寫全部測試數(shù)據(jù)的不足。能夠在測試過程中實時地讀寫全部測試變量。
為實現(xiàn)上述目的,本發(fā)明提供一種嵌入式設(shè)備的調(diào)試方法,包括以下步驟a.加載一個具有圖形用戶界面的測試程序,該測試程序具有操作系統(tǒng)開放的應(yīng)用程序接口,該應(yīng)用程序接口通過輸入輸出控制裝置與若干個驅(qū)動硬件的驅(qū)動程序相連;b測試程序根據(jù)圖形用戶界面的輸入選擇驅(qū)動程序,被選中的驅(qū)動程序向測試程序注冊;并統(tǒng)一命名該驅(qū)動程序范圍內(nèi)的全局變量、外設(shè)的寄存器地址以及存取通道;c.測試程序根據(jù)圖形用戶界面的輸入信息讀寫驅(qū)動程序中對應(yīng)的函數(shù),并將結(jié)果通過圖形用戶界面顯示出來。
其中,所述的圖形用戶界面包括讀、寫和提示界面;所述的測試程序和驅(qū)動程序之間傳輸標(biāo)準(zhǔn)格式的封裝數(shù)據(jù);所述的測試程序是一個通用的應(yīng)用程序。
本發(fā)明通過驅(qū)動程序讀寫外設(shè)的寄存器,應(yīng)用程序調(diào)用驅(qū)動程序的資源來實現(xiàn)對測試數(shù)據(jù)的讀寫,可隨時輸出/更改驅(qū)動程序中使用到的全局或局部變量的值;隨時輸出/更改驅(qū)動程序所控制的外設(shè)的狀態(tài)。
本發(fā)明提供了包括讀、寫和提示界面的圖形用戶界面,而且對驅(qū)動程序資源進(jìn)行了統(tǒng)一命名,因此,界面友好、操作方面,測試地進(jìn)行不需要經(jīng)過特別訓(xùn)練的技術(shù)人員就能進(jìn)行。
本發(fā)明采用的是通用的應(yīng)用程序,而且其應(yīng)用程序接口是操作系統(tǒng)開放的,傳輸數(shù)據(jù)也采用標(biāo)準(zhǔn)格式的封裝,故本發(fā)明具有可移植性,任何操作系統(tǒng)都提供了應(yīng)用程序和驅(qū)動程序之間的接口,所以本發(fā)明適用于任何操作系統(tǒng)。
本發(fā)明可以完全克服現(xiàn)有調(diào)試方法的缺陷,極大縮短驅(qū)動程序的開發(fā)及調(diào)試時間。
以下結(jié)合附圖與實施例對本發(fā)明作進(jìn)一步的說明。
圖1為本發(fā)明的系統(tǒng)框圖。
圖2為個人數(shù)位助理音頻硬件現(xiàn)有的測試方法示意圖。
圖3為本發(fā)明在音頻硬件方面應(yīng)用的一個實施例的示意圖。
具體實施例方式
有關(guān)本發(fā)明的詳細(xì)說明及技術(shù)內(nèi)容,現(xiàn)就結(jié)合
如下請參照圖1,圖1為本發(fā)明的系統(tǒng)框圖。本發(fā)明加載一個測試程序,該測試程序是一個具有圖形用戶界面的通用的應(yīng)用程序。該測試程序通過輸入輸出控制裝置與若干個驅(qū)動硬件的驅(qū)動程序相連;測試程序和驅(qū)動程序之間傳輸標(biāo)準(zhǔn)格式的封裝數(shù)據(jù)。
該通用的應(yīng)用程序具有操作系統(tǒng)開放的應(yīng)用程序接口,其中的圖形用戶界面包括讀、寫和提示界面。用戶可以通過圖形用戶界面輸入指令、查看提示選項以及驅(qū)動程序的反饋信息。
本發(fā)明整體的想法是實現(xiàn)一個通用的應(yīng)用程序作為圖形用戶界面,通過輸入輸出控制裝置和不同的驅(qū)動程序交互。
在測試程序即通用應(yīng)用程序側(cè)進(jìn)行如下步驟使用操作系統(tǒng)開放的應(yīng)用程序接口讀出當(dāng)前已經(jīng)加載的驅(qū)動程序,提供圖形用戶界面讓開發(fā)人員選擇要調(diào)試的驅(qū)動。在用戶指定要調(diào)試的驅(qū)動之后,提供讀、寫和提示的界面給開發(fā)人員。根據(jù)開發(fā)人員的輸入,調(diào)用驅(qū)動程序中對應(yīng)的函數(shù)以準(zhǔn)確實現(xiàn)讀、寫和提示這幾種功能,并將結(jié)果顯示出來。
在驅(qū)動程序側(cè)進(jìn)行如下步驟當(dāng)被加載時,向測試系統(tǒng)注冊。統(tǒng)一命名驅(qū)動程序范圍內(nèi)的全局變量;統(tǒng)一命名外設(shè)的寄存器地址;統(tǒng)一命名驅(qū)動程序使用的直接內(nèi)存通道以及輸入輸出接口等系統(tǒng)資源,以方便測試程序的讀寫。添加并實現(xiàn)讀、寫和提示這三種功能的輸入輸出控制裝置。
請參閱圖2及圖3,這是本發(fā)明在PDA(Personal DigitalAssistant,個人數(shù)位助理)音頻硬件方面應(yīng)用的一個實施例。在PDA中,所有的軟件是作為一個整體一次性燒錄到只讀存儲器上的,假設(shè)PDA上使用符合標(biāo)準(zhǔn)的音頻硬件,編解碼器產(chǎn)品有很多種,考慮到線路的干擾等因素,系統(tǒng)組裝完成后,為了得到最好的音質(zhì),研發(fā)人員需要對編解碼器內(nèi)部寄存器的參數(shù)設(shè)置進(jìn)行調(diào)試,最終找到一組最佳的參數(shù)。當(dāng)產(chǎn)品進(jìn)行生產(chǎn)時,就燒錄這組最佳參數(shù)的系統(tǒng)軟件到只讀存儲器中,由于燒錄進(jìn)去的這組參數(shù)是放在只讀存儲器中的,以后系統(tǒng)正常運(yùn)行時就會一直使用它們,用戶是不能修改的。
在調(diào)試階段,為了找到這樣一組參數(shù),以往的方法如圖2所示,應(yīng)用程序直接通過驅(qū)動程序驅(qū)動編解碼器,編解碼器將數(shù)據(jù)通過驅(qū)動程序回傳到應(yīng)用程序播放,每當(dāng)要測試一組新的參數(shù),就需要用燒錄器重新燒錄整個只讀存儲器上的軟件系統(tǒng),這樣確定一組優(yōu)化的參數(shù)需要大量的燒錄時間。
圖3是使用了本發(fā)明的調(diào)試器的PDA音頻硬件調(diào)試示意圖。此時的音頻驅(qū)動將包括一套與編解碼器硬件相連接的調(diào)試程序。該調(diào)試程序包括一個圖形用戶界面模塊。應(yīng)用程序在通過音頻驅(qū)動程序進(jìn)行播放時,從調(diào)試程序這邊仍然可以去修改編解碼器的一些參數(shù),馬上就可以得到修改的效果,當(dāng)?shù)玫綕M意的效果后,通過調(diào)試程序的圖形用戶界面可以將編解碼器的當(dāng)前設(shè)置參數(shù)全部導(dǎo)出,這樣就可以大大加快調(diào)試的速度。
因此,本發(fā)明的調(diào)試程序可以繞過整個系統(tǒng)軟件,直接修改編解碼器的參數(shù),很快就可以找到好的參數(shù)設(shè)置。
以上所介紹的,僅僅是本發(fā)明的較佳實施例而已,不能以此來限定本發(fā)明實施的范圍,即本技術(shù)領(lǐng)域內(nèi)的一般技術(shù)人員根據(jù)本發(fā)明所作的均等的變化,例如將以上實施例中的各個模塊進(jìn)行功能替換或?qū)Ω鱾€步驟進(jìn)行組合或分立。以及本領(lǐng)域內(nèi)技術(shù)人員熟知的改進(jìn),都應(yīng)仍屬于本發(fā)明專利涵蓋的范圍。
權(quán)利要求
1.一種嵌入式設(shè)備的調(diào)試方法,其特征在于包括以下步驟a.加載一個具有圖形用戶界面的測試程序,該測試程序具有操作系統(tǒng)開放的應(yīng)用程序接口,該應(yīng)用程序接口通過輸入輸出控制裝置與若干個驅(qū)動硬件的驅(qū)動程序相連;b測試程序根據(jù)圖形用戶界面的輸入選擇驅(qū)動程序,被選中的驅(qū)動程序向測試程序注冊;并統(tǒng)一命名該驅(qū)動程序范圍內(nèi)的全局變量、外設(shè)的寄存器地址以及存取通道;c.測試程序根據(jù)圖形用戶界面的輸入信息讀寫驅(qū)動程序中對應(yīng)的函數(shù),并將結(jié)果通過圖形用戶界面顯示出來。
2.如權(quán)利要求1所述的一種嵌入式設(shè)備的調(diào)試方法,其特征在于所述的圖形用戶界面包括讀、寫和提示界面。
3.如權(quán)利要求1所述的一種嵌入式設(shè)備的調(diào)試方法,其特征在于所述的測試程序和驅(qū)動程序之間傳輸標(biāo)準(zhǔn)格式的封裝數(shù)據(jù)。
4.如權(quán)利要求1所述的一種嵌入式設(shè)備的調(diào)試方法,其特征在于所述的測試程序是一個通用的應(yīng)用程序。
全文摘要
一種嵌入式設(shè)備的調(diào)試方法,其特征在于包括以下步驟a、加載一個具有圖形用戶界面的測試程序,該測試程序具有操作系統(tǒng)開放的應(yīng)用程序接口,該應(yīng)用程序接口通過輸入輸出控制裝置與若干個驅(qū)動硬件的驅(qū)動程序相連;b、測試程序根據(jù)圖形用戶界面的輸入選擇驅(qū)動程序,被選中的驅(qū)動程序向測試程序注冊;并統(tǒng)一命名該驅(qū)動程序范圍內(nèi)的全局變量、外設(shè)的寄存器地址以及存取通道;c、測試程序根據(jù)圖形用戶界面的輸入信息讀寫驅(qū)動程序中對應(yīng)的函數(shù),并將結(jié)果通過圖形用戶界面顯示出來。本發(fā)明可以隨時讀取并修改所有測試數(shù)據(jù)。
文檔編號G06F11/36GK1845078SQ20051002499
公開日2006年10月11日 申請日期2005年4月8日 優(yōu)先權(quán)日2005年4月8日
發(fā)明者毛曉柳, 李強(qiáng) 申請人:環(huán)達(dá)電腦(上海)有限公司