專利名稱:一種基于嵌入式應(yīng)用系統(tǒng)實(shí)現(xiàn)硬件寄存器的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式應(yīng)用系統(tǒng)的研發(fā)領(lǐng)域,具體涉及一種仿真硬件寄存 器實(shí)現(xiàn)脫離硬件平臺(tái)先行開發(fā)調(diào)試嵌入式軟件的方法。 本發(fā)明應(yīng)用于在嵌入式應(yīng)用系統(tǒng)的研發(fā)過(guò)程中。
背景技術(shù):
在當(dāng)今信息化浪潮中,從普通的家用電器到復(fù)雜的通訊設(shè)備和機(jī)器 人,越來(lái)越多的電器設(shè)備,被賦予越來(lái)越多的智能,被稱為智能機(jī)器。在 這些智能機(jī)器里面,都有一個(gè)共同的東西,就是嵌入式軟件。正是這個(gè)嵌 入式軟件的存在,才使得這些機(jī)器智能化程度越來(lái)越高。嵌入式軟件的開發(fā)不同于那些純軟件的開發(fā),只要有PC機(jī),就可以完成整個(gè)開發(fā)過(guò)程,在開發(fā)這些智能機(jī)器的嵌入式軟件過(guò)程中,通常需要 這些機(jī)器設(shè)備硬件上的支持,這樣嵌入式軟件才能完成整個(gè)開發(fā)和調(diào)試過(guò) 程。由于嵌入式軟件需要特定硬件的支持,使得嵌入式軟件的開發(fā)過(guò)程受 到石更件的限制。在嵌入式軟件編碼完成后,需要等到特定硬件調(diào)試正確后 才能進(jìn)行調(diào)試,這樣加長(zhǎng)了新產(chǎn)品的推出時(shí)間。在當(dāng)前激烈的竟?fàn)幹校a(chǎn)品晚推出就可能意味著失敗。因此,如果能讓嵌入式軟件的開發(fā)和^e更件開發(fā)同時(shí)并行進(jìn)行,即嵌入式軟件首先能夠在 PC機(jī)的環(huán)境下先行調(diào)試,完成大部分的調(diào)試工作,這樣在后期與硬件的結(jié) 合調(diào)試工作將大大減少,可以縮短整個(gè)系統(tǒng)的開發(fā)時(shí)間,有利于產(chǎn)品的及
早發(fā)布。但是目前沒(méi)有有效的方法解決這個(gè)問(wèn)題。 發(fā)明內(nèi)容為了克服現(xiàn)有技術(shù)中存在的問(wèn)題,本發(fā)明提出一種方法,解決了嵌入式軟件在PC機(jī)環(huán)境中運(yùn)行時(shí)操作嵌入式設(shè)備硬件寄存器。本發(fā)明使用文件代替特定硬件,把特定硬件寄存器(用地址標(biāo)識(shí))及 寄存器的值抽象為文件中的一條記錄,用寄存器的操作特性來(lái)把這些記錄 進(jìn)行分類。這樣對(duì)硬件寄存器的操作就轉(zhuǎn)為操作這個(gè)文件。本發(fā)明具體是這樣實(shí)現(xiàn)的一種基于嵌入式應(yīng)用系統(tǒng)實(shí)現(xiàn)硬件寄存器的方法,其特征在于,包括 如下步驟第一步尋找不同讀寫特性的硬件寄存器,確定其特性及特性標(biāo)識(shí)符; 第二步建立文件,將特性標(biāo)識(shí)符加入到文件中; 第三步把硬件寄存器的地址和值加入到文件中,作為一條記錄; 第四步定義一用于區(qū)分硬件寄存器操作函數(shù)和文件搮作函數(shù)的標(biāo)識(shí)符;第五步實(shí)現(xiàn)文件的操作函數(shù)。 所述第一步中,硬件寄存器的讀寫特性包括接讀寫型,間接讀寫型,讀后清零型,寫后清零型,寫轉(zhuǎn)移型,關(guān)聯(lián) 寫型,寫寄存器某位,其它位有變化型。所述第三步中,將硬件寄存器的地址和值按照地址等于值的方式加入 到相應(yīng)的特性標(biāo)識(shí)符的后面,下一個(gè)特性標(biāo)識(shí)符的前面,作為一條記錄放 在文件中。本發(fā)明為嵌入式軟件的開發(fā)脫離嵌入式硬件進(jìn)行調(diào)試提供了 一種理 想的解決方案。它簡(jiǎn)單易行,在應(yīng)用代碼里只有最少的額外代碼插入量; 使用統(tǒng)一的接口,具有很好的重用性,可以在不同的項(xiàng)目下使用,為嵌入 式軟件的開發(fā)調(diào)試提供了極大的便利。
圖1為本發(fā)明所述方法的流程圖;圖2為本發(fā)明的讀寄存器軟件處理流程圖;圖3為本發(fā)明的寫寄存器軟件處理流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明所述方法進(jìn)行詳細(xì)的描述。 如圖1所示基于文件的硬件寄存器仿真方法,其具體步驟如下 第一步分析硬件,找出不同讀寫特性的寄存器類型且明確描述出它們的特性并確定它們的特性標(biāo)識(shí)符;第二步創(chuàng)建文件并把所有的特性標(biāo)識(shí)符加入到文件中; 第三步把寄存器的地址和寄存器的值加入到文件中該寄存器操作特性對(duì)應(yīng)特性標(biāo)識(shí)符的后面,下一個(gè)特性標(biāo)識(shí)符的前面,作為一條記錄; 第四步在嵌入式應(yīng)用軟件中定義一個(gè)標(biāo)識(shí),來(lái)區(qū)分嵌入式應(yīng)用軟件運(yùn)行在嵌入式硬件環(huán)境和仿真環(huán)境下所要調(diào)用的寄存器操作函數(shù); 第五步編寫操作這個(gè)文件的軟件代碼。 下面結(jié)合具體的實(shí)施例對(duì)發(fā)明進(jìn)行詳細(xì)描述。本實(shí)例使用ini文件作為仿真文件,使用VC編寫ini文件的操作代 碼,具體實(shí)現(xiàn)步驟如下第一步此實(shí)例的遷入時(shí)硬件的寄存器特性有a,直接讀寫型 (DIR-RW); b,間接讀寫型(蘭R—齡,c,讀后清零型(畫CLR); d, 寫后清零型(WR&CLR); e,寫轉(zhuǎn)移型(WR&SHT); f,關(guān)聯(lián)寫型(co—WR); g,寫寄存器某位,其它位有變化型(BIT-WR)。第二步創(chuàng)建ini文件,并把第一步中定義的特性標(biāo)識(shí)符加入到文件 中,每個(gè)特性標(biāo)識(shí)符作為一行;第三步把硬件寄存器按照"地址-值"的方式加入到相應(yīng)的特性標(biāo) 識(shí)符的后面,下一個(gè)特性標(biāo)識(shí)符的前面,每條"地址Hi,,占一行;第四步使用VC集成開發(fā)環(huán)境中的"-WIN32"宏作為區(qū)分嵌入式硬 件環(huán)境下寄存器操作函數(shù)和仿真環(huán)境下ini文件操作函數(shù)的標(biāo)識(shí)符;第五步在VC環(huán)境下編寫實(shí)現(xiàn)ini文件的操作函數(shù)。通過(guò)上面步驟創(chuàng)建的一個(gè)硬件ini仿真實(shí)例,可以在PC環(huán)境下正常 運(yùn)行起來(lái),通過(guò)讀寫ini文件來(lái)調(diào)試嵌入式應(yīng)用軟件的邏輯和大部分功能, 使嵌入式應(yīng)用軟件的開發(fā)和調(diào)試可以和嵌入式硬件同步進(jìn)行,從而有效地 縮短了整個(gè)應(yīng)用系統(tǒng)的開發(fā)周期。
權(quán)利要求
1、一種基于嵌入式應(yīng)用系統(tǒng)實(shí)現(xiàn)硬件寄存器的方法,其特征在于,包括如下步驟第一步尋找不同讀寫特性的硬件寄存器,確定其特性及特性標(biāo)識(shí)符;第二步建立文件,將特性標(biāo)識(shí)符加入到文件中;第三步把硬件寄存器的地址和值加入到文件中,作為一條記錄;第四步定義一用于區(qū)分硬件寄存器操作函數(shù)和文件操作函數(shù)的標(biāo)識(shí)符;第五步實(shí)現(xiàn)文件的操作函數(shù)。
2、 如權(quán)利要求1所述的基于嵌入式應(yīng)用系統(tǒng)實(shí)現(xiàn)硬件寄存器的方法, 其特征在于所述第一步中,硬件寄存器的讀寫特性包括接讀寫型,間接讀寫型,讀后清零型,寫后清零型,寫轉(zhuǎn)移型,關(guān)聯(lián) 寫型,寫寄存器某位,其它位有變化型。
3、 如利要求1所述的基于嵌入式應(yīng)用系統(tǒng)實(shí)現(xiàn)硬件寄存器的方法, 其特征在于所述第三步中,將硬件寄存器的地址和值按照地址等于值的方式加入 到相應(yīng)的特性標(biāo)識(shí)符的后面,下一個(gè)特性標(biāo)識(shí)符的前面,作為一條記錄放 在文件中。
全文摘要
本發(fā)明公開了一種基于嵌入式應(yīng)用系統(tǒng)實(shí)現(xiàn)硬件寄存器的方法,包括如下步驟尋找不同讀寫特性的硬件寄存器,確定其特性及特性標(biāo)識(shí)符;建立文件,將特性標(biāo)識(shí)符加入到文件中;把硬件寄存器的地址和值加入到文件中,作為一條記錄;定義一用于區(qū)分硬件寄存器操作函數(shù)和文件操作函數(shù)的標(biāo)識(shí)符;實(shí)現(xiàn)文件的操作函數(shù)。本發(fā)明為嵌入式軟件的開發(fā)脫離嵌入式硬件進(jìn)行調(diào)試提供了一種理想的解決方案。它簡(jiǎn)單易行,在應(yīng)用代碼里只有最少的額外代碼插入量;使用統(tǒng)一的接口,具有很好的重用性,可以在不同的項(xiàng)目下使用,為嵌入式軟件的開發(fā)調(diào)試提供了極大的便利。
文檔編號(hào)G06F11/36GK101162439SQ200610149679
公開日2008年4月16日 申請(qǐng)日期2006年10月13日 優(yōu)先權(quán)日2006年10月13日
發(fā)明者林 劉, 匡天祺 申請(qǐng)人:中興通訊股份有限公司