本發(fā)明屬于嵌入式軟件領(lǐng)域,尤其涉及一種調(diào)試嵌入式系統(tǒng)多中斷的方法和裝置。
背景技術(shù):
在嵌入式系統(tǒng)軟件的運行中,經(jīng)常出現(xiàn)多個中斷交錯產(chǎn)生即同時、嵌套或串行發(fā)生,并因此發(fā)生異常的情況,因而需要跟蹤定位多中斷情況下發(fā)生異常的根本原因并加以解決。
現(xiàn)有的一種調(diào)試多中斷的方法是在中斷服務(wù)程序中將當前中斷的斷點信息采集后,立即從某個可輸出模塊輸出?,F(xiàn)有的調(diào)試方法存在的問題包括:
1)若輸出過程采用中斷方式來進行,則使系統(tǒng)中斷增多,也打亂了系統(tǒng)原本的中斷發(fā)生次序,若輸出過程采用非中斷方式來進行,則加大了對應(yīng)中斷服務(wù)程序的執(zhí)行時間,會引起中斷響應(yīng)不及時的其它系統(tǒng)問題;
3)數(shù)據(jù)量往往非常巨大,查找數(shù)據(jù)非常麻煩和困難;
4)被聚焦調(diào)試的模塊無法被用來進行調(diào)試輸出,例如,通訊端口自身中斷的調(diào)試無法采用本端口來即時輸出調(diào)試信息,屏幕自身中斷的調(diào)試無法采用屏幕來即時輸出,打印機自身中斷的調(diào)試無法采用打印機來即時輸出。
綜上,上述現(xiàn)有的調(diào)試多中斷的方法會對系統(tǒng)本身的中斷造成不良影響,常常難以跟蹤定位出發(fā)生異常的原因。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種調(diào)試嵌入式系統(tǒng)多中斷的方法和裝置,以避免對嵌入式系統(tǒng)本身的中斷造成不良影響,并提高調(diào)試的效率。
本發(fā)明第一方面提供一種調(diào)試嵌入式系統(tǒng)多中斷的方法,所述方法包括:
為包括n個元素的環(huán)形結(jié)構(gòu)數(shù)組分配內(nèi)存,所述n為大于2的整數(shù);
按照一個元素寫入一個系統(tǒng)中斷的中斷運行狀態(tài)信息的方式,向所述環(huán)形結(jié)構(gòu)數(shù)組循環(huán)寫入系統(tǒng)中斷的中斷運行狀態(tài)信息;
當有輸出要求時,輸出所述環(huán)形結(jié)構(gòu)數(shù)組中寫入的中斷運行狀態(tài)信息。
本發(fā)明第二方面提供一種調(diào)試嵌入式系統(tǒng)多中斷的裝置,所述裝置包括:
內(nèi)存分配模塊,用于為包括n個元素的環(huán)形結(jié)構(gòu)數(shù)組分配內(nèi)存,所述n為大于2的整數(shù);
寫入模塊,用于按照一個元素寫入一個系統(tǒng)中斷的中斷運行狀態(tài)信息的方式,向所述環(huán)形結(jié)構(gòu)數(shù)組循環(huán)寫入系統(tǒng)中斷的中斷運行狀態(tài)信息;
輸出模塊,用于當有輸出要求時,輸出所述環(huán)形結(jié)構(gòu)數(shù)組中寫入的中斷運行狀態(tài)信息。
從上述本發(fā)明技術(shù)方案可知,由于保存中斷運行狀態(tài)信息的數(shù)組是環(huán)形結(jié)構(gòu),因此,一方面,既避免了中斷數(shù)據(jù)較多時緩存不足導(dǎo)致數(shù)據(jù)溢出的問題,又可提供最近的一段中斷發(fā)生情況的流水,這些流水有利于快速、有效地定位出異常;另一方面,輸出中斷運行狀態(tài)信息時不會打亂系統(tǒng)原本的中斷發(fā)生次序,不會對系統(tǒng)原本的中斷產(chǎn)生影響,而且,輸出中斷運行狀態(tài)信息的通道可控可選。
附圖說明
圖1是本發(fā)明實施例一提供的調(diào)試嵌入式系統(tǒng)多中斷的方法的實現(xiàn)流程示意圖;
圖2是本發(fā)明實施例二提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖3是本發(fā)明實施例三提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明實施例四提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖5-a是本發(fā)明實施例五提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖5-b是本發(fā)明實施例六提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖5-c是本發(fā)明實施例七提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖6-a是本發(fā)明實施例八提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖6-b是本發(fā)明實施例九提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖;
圖6-c是本發(fā)明實施例十提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實施例提供一種調(diào)試嵌入式系統(tǒng)多中斷的方法,所述方法包括:為包括n個元素的環(huán)形結(jié)構(gòu)數(shù)組分配內(nèi)存,所述n為大于2的整數(shù);按照一個元素寫入一個系統(tǒng)中斷的中斷運行狀態(tài)信息的方式,向所述環(huán)形結(jié)構(gòu)數(shù)組循環(huán)寫入系統(tǒng)中斷的中斷運行狀態(tài)信息;當有輸出要求時,輸出所述環(huán)形結(jié)構(gòu)數(shù)組中寫入的中斷運行狀態(tài)信息。本發(fā)明實施例還提供相應(yīng)的一種調(diào)試嵌入式系統(tǒng)多中斷的裝置。以下分別進行詳細說明。
請參閱附圖1,是本發(fā)明實施例一提供的調(diào)試嵌入式系統(tǒng)多中斷的方法的實現(xiàn)流程示意圖,主要包括以下步驟s101至步驟s103,詳細說明如下:
s101,為包括n個元素的環(huán)形結(jié)構(gòu)數(shù)組分配內(nèi)存,其中,n為大于2的整數(shù)。
在本發(fā)明實施例中,環(huán)形結(jié)構(gòu)數(shù)組是具有環(huán)形結(jié)構(gòu)且包含n個元素的數(shù)組,其主要包含中斷發(fā)生前的運行模式、被中斷的地址、當前所服務(wù)的中斷號、尚未處理中斷的標識寄存器、當前系統(tǒng)計時滴答數(shù)和關(guān)鍵寄存器列表等字段;可在系統(tǒng)內(nèi)存空間中為環(huán)形結(jié)構(gòu)數(shù)組分配適當?shù)膬?nèi)存。需要說明的是,上述環(huán)形結(jié)構(gòu)數(shù)組的元素個數(shù)n可根據(jù)系統(tǒng)內(nèi)存容量和中斷發(fā)生的頻率等實際情況來靈活確定,典型地,n可取值為100、200等,環(huán)形結(jié)構(gòu)數(shù)組的元素包含的字段可根據(jù)所采用的具體cpu和所發(fā)生異常的具體情況進行調(diào)整,并不限于所述這些字段;原則上,凡是根據(jù)當前實際情況認為有利于問題準確定位的信息,均可作為字段包含至環(huán)形結(jié)構(gòu)數(shù)組的元素。
還需說明的是,為包括n個元素的環(huán)形結(jié)構(gòu)數(shù)組分配內(nèi)存這一操作只需執(zhí)行一次,可在編譯期間靜態(tài)分配或在系統(tǒng)初始化時動態(tài)分配,分配時并將該環(huán)形結(jié)構(gòu)數(shù)組及其讀出序號、寫入序號清零;讀出序號或?qū)懭胄蛱柵c該環(huán)形結(jié)構(gòu)數(shù)組的元素一一對應(yīng)。
s102,按照一個元素寫入一個系統(tǒng)中斷的中斷運行狀態(tài)信息的方式,向環(huán)形結(jié)構(gòu)數(shù)組循環(huán)寫入系統(tǒng)中斷的中斷運行狀態(tài)信息。
作為本發(fā)明一個實施例,按照一個元素寫入一個系統(tǒng)中斷的中斷運行狀態(tài)信息的方式,向所述環(huán)形結(jié)構(gòu)數(shù)組循環(huán)寫入系統(tǒng)中斷的中斷運行狀態(tài)信息可通過如下步驟s1021至s1024實現(xiàn):
s1021,在中斷服務(wù)子程序的入口處調(diào)用數(shù)據(jù)采集函數(shù),以執(zhí)行步驟s1022至s1024的操作。
需要說明的是,在本發(fā)明實施例中,若尚不確定某一個中斷是否會引起問題,或不確定是哪幾個中斷交錯而引起問題,可在每一處中斷服務(wù)子程序的入口處均調(diào)用數(shù)據(jù)數(shù)據(jù)采集函數(shù),以避免遺漏關(guān)鍵信息而導(dǎo)致后續(xù)無法定位問題根本原因。若可以十分確定某個中斷不會引起問題,則在該中斷對應(yīng)的中斷服務(wù)子程序的入口處也可以不調(diào)用數(shù)據(jù)采集函數(shù)。
s1022,關(guān)閉系統(tǒng)總中斷。
一般地,在中斷服務(wù)子程序的入口處,cpu會自動關(guān)閉中斷,如此,數(shù)據(jù)采集函數(shù)不用進行原子化操作。然而,若在中斷服務(wù)子程序的入口處,cpu并不自動關(guān)閉中斷,則應(yīng)關(guān)閉系統(tǒng)總中斷,以避免中斷嵌套時寫入該環(huán)形結(jié)構(gòu)數(shù)組的動作被另一個中斷所中止和/或打亂,具體方式是可以在數(shù)據(jù)數(shù)據(jù)采集函數(shù)中進行原子化處理,即,在數(shù)據(jù)采集函數(shù)的最開始處,執(zhí)行關(guān)閉系統(tǒng)總中斷。
s1023,執(zhí)行數(shù)據(jù)采集函數(shù)的數(shù)據(jù)采集功能,將系統(tǒng)當前中斷的中斷運行狀態(tài)信息寫入環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前寫入序號的元素中。
在本發(fā)明實施例中,中斷運行狀態(tài)信息來源于cpu的相關(guān)寄存器或者是相關(guān)系統(tǒng)全局變量,實際上是環(huán)形結(jié)構(gòu)數(shù)組包含的字段的具體內(nèi)容,即,中斷發(fā)生前的運行模式、被中斷的地址、當前所服務(wù)的中斷號、尚未處理中斷的標識寄存器、當前系統(tǒng)計時滴答數(shù)和關(guān)鍵寄存器列表等具體信息。
如前所述,環(huán)形結(jié)構(gòu)數(shù)組的一個元素對應(yīng)于一個寫入序號。在本發(fā)明實施例中,執(zhí)行數(shù)據(jù)采集函數(shù)的數(shù)據(jù)采集功能時,是將系統(tǒng)當前中斷的中斷運行狀態(tài)信息寫入環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前寫入序號的元素中,在此之后,將當前寫入序號的值增1,將值增1后的寫入序號與n進行模運算,將模運算的結(jié)果重新賦值給寫入序號,以便下次執(zhí)行寫入操作時寫入當前寫入序號的元素之后的一個元素中;若模運算后的結(jié)果為0,則寫入序號回繞到0,以便下次向環(huán)形結(jié)構(gòu)數(shù)組寫入中斷運行狀態(tài)信息時從環(huán)形隊列的頭部開始重新寫入。
s1024,開啟系統(tǒng)總中斷。
當執(zhí)行過關(guān)閉系統(tǒng)總中斷時,相應(yīng)地,在執(zhí)行數(shù)據(jù)采集函數(shù)的數(shù)據(jù)采集功能完成之后,應(yīng)將系統(tǒng)總中斷開啟。
s103,當有輸出要求時,輸出環(huán)形結(jié)構(gòu)數(shù)組中寫入的中斷運行狀態(tài)信息。
作為本發(fā)明一個實施例,當有輸出要求時,輸出環(huán)形結(jié)構(gòu)數(shù)組中寫入的中斷運行狀態(tài)信息可通過如下步驟s1031至s1035實現(xiàn):
s1031,當有輸出要求時,調(diào)用輸出函數(shù),以執(zhí)行步驟s1032至s1035的操作。
在本發(fā)明實施例中,當有輸出要求時,例如,發(fā)生總線異常中斷、按指定按鍵或通訊口收到特定指令等,可在對應(yīng)的中斷服務(wù)子程序的入口處調(diào)用輸出函數(shù),此處,對應(yīng)的中斷服務(wù)子程序可以是總線異常中斷服務(wù)子程序、按鍵中斷服務(wù)子程序或通訊口接收中斷服務(wù)子程序,具體說明如下:
1)總線異常中斷服務(wù)子程序是指發(fā)生取指令、非法地址訪問等錯誤時的系統(tǒng)保護性中斷所對應(yīng)的服務(wù)子程序,該中斷往往是因為個別中斷服務(wù)子程序中的問題代碼運行而被觸發(fā),在該子程序中輸出環(huán)形結(jié)構(gòu)數(shù)組的元素中的內(nèi)容,可以讓調(diào)試者正好看到出錯之前最緊鄰的一段中斷發(fā)生情況;
2)按鍵中斷服務(wù)子程序,對于異常發(fā)生卻不產(chǎn)生上述總線異常中斷的情況(例如:系統(tǒng)被不間歇的中斷所掛死),可以將輸出過程放在按鍵中斷服務(wù)子程序中,同時,在必要和可能的情況下,可將按鍵中斷的優(yōu)先級調(diào)高,以確保異常發(fā)生時按鍵中斷能被觸發(fā)和響應(yīng),在按鍵中斷服務(wù)子程序中,當檢測到某個特定的按鍵被按下時,即輸出環(huán)形結(jié)構(gòu)數(shù)組中元素的內(nèi)容,其中,該特定按鍵可以根據(jù)實際情況自行指定;當異常發(fā)生且不產(chǎn)生上述總線異常中斷時,即可按下指定按鍵來輸出環(huán)形結(jié)構(gòu)數(shù)組元素中的內(nèi)容;
3)通訊口接收中斷服務(wù)子程序,對于異常發(fā)生卻不產(chǎn)生上述總線異常中斷、且系統(tǒng)無鍵盤的情況,可以將輸出過程放在某個通訊口的接收中斷服務(wù)子程序中,同時,在必要和可能的情況下,可將對應(yīng)通訊口的中斷優(yōu)先級調(diào)高,以確保異常發(fā)生時該通訊口接收中斷能被觸發(fā)和響應(yīng);在該通訊口接收中斷服務(wù)子程序中,當接收到某個特定的字符串時,即輸出環(huán)形結(jié)構(gòu)數(shù)組元素中的內(nèi)容,該特定字符串可以根據(jù)實際情況自行指定,以盡量減小對該通訊口接收通道的影響;當異常發(fā)生且不產(chǎn)生上述總線異常中斷時,即可通過外部設(shè)備向該通訊口發(fā)出指定的字符串來輸出環(huán)形結(jié)構(gòu)數(shù)組元素中的內(nèi)容;在本發(fā)明實施例中,通訊口可以是是指串口、usb口、以太網(wǎng)口等系統(tǒng)所配置的外部接口中的任意一種。
s1032,關(guān)閉系統(tǒng)總中斷。
s1033,將環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前讀出序號的元素中的內(nèi)容輸出至輸出通道。
在本發(fā)明實施中,當前讀出序號與當前寫入序號的數(shù)值是相等的,并且對應(yīng)于環(huán)形結(jié)構(gòu)數(shù)組的一個元素。至于輸出通道,可以根據(jù)實際情況選擇通訊口、打印機或屏幕中的任意一種或多種。
s1034,判斷環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容是否讀完。
本發(fā)明實施例中,判斷環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容是否讀完具體可以是:將環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前讀出序號的元素中的內(nèi)容輸出至輸出通道后,對當前讀出序號的值執(zhí)行增1操作,將值執(zhí)行增1操作后的讀出序號的值與環(huán)形結(jié)構(gòu)數(shù)組包含的元素個數(shù)n進行模運算,將模運算的結(jié)果重新賦值給讀出序號,以便后續(xù)將當前讀出序號對應(yīng)的元素之后的一個元素讀出,若已讀取元素的總個數(shù)達到n,則確定環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容已經(jīng)讀完。
s1035,若環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容已經(jīng)讀完,則開啟系統(tǒng)總中斷,否則,重復(fù)步驟s1033和s1034,繼續(xù)輸出環(huán)形結(jié)構(gòu)數(shù)組元素中的內(nèi)容。
從上述附圖1示例的調(diào)試嵌入式系統(tǒng)多中斷的方法可知,由于保存中斷運行狀態(tài)信息的數(shù)組是環(huán)形結(jié)構(gòu),因此,一方面,既避免了中斷數(shù)據(jù)較多時緩存不足導(dǎo)致數(shù)據(jù)溢出的問題,又可提供最近的一段中斷發(fā)生情況的流水,這些流水有利于快速、有效地定位出異常;另一方面,輸出中斷運行狀態(tài)信息時不會打亂系統(tǒng)原本的中斷發(fā)生次序,不會對系統(tǒng)原本的中斷產(chǎn)生影響,而且,輸出中斷運行狀態(tài)信息的通道可控可選。
請參閱附圖2,是本發(fā)明實施例二提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置的結(jié)構(gòu)示意圖。為了便于說明,附圖2僅示出了與本發(fā)明實施例相關(guān)的部分。附圖2示例的調(diào)試嵌入式系統(tǒng)多中斷的裝置可以是附圖1示例的調(diào)試嵌入式系統(tǒng)多中斷的方法的執(zhí)行主體,其主要包括內(nèi)存分配模塊201、寫入模塊202和輸出模塊203,詳細說明如下:
內(nèi)存分配模塊201,用于為包括n個元素的環(huán)形結(jié)構(gòu)數(shù)組分配內(nèi)存,其中,n為大于2的整數(shù);
寫入模塊202,用于按照一個元素寫入一個系統(tǒng)中斷的中斷運行狀態(tài)信息的方式,向環(huán)形結(jié)構(gòu)數(shù)組循環(huán)寫入系統(tǒng)中斷的中斷運行狀態(tài)信息;
輸出模塊203,用于當有輸出要求時,輸出環(huán)形結(jié)構(gòu)數(shù)組中寫入的中斷運行狀態(tài)信息。
附圖2示例的寫入模塊202可以包括第一調(diào)用單元301、第一關(guān)閉單元302、信息寫入單元303和第一開啟單元304,如附圖3所示本發(fā)明實施例三提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置,其中:
第一調(diào)用單元301,用于在中斷服務(wù)子程序的入口處調(diào)用數(shù)據(jù)采集函數(shù);
第一關(guān)閉單元302,用于關(guān)閉系統(tǒng)總中斷;
信息寫入單元303,用于執(zhí)行數(shù)據(jù)采集函數(shù)的數(shù)據(jù)采集功能,將系統(tǒng)當前中斷的中斷運行狀態(tài)信息寫入環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前寫入序號的元素中;
第一開啟單元304,用于開啟系統(tǒng)總中斷。
附圖3示例的裝置還包括第一自增模塊401、第一模運算模塊402和賦值模塊403,如附圖4所示本發(fā)明實施例四提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置,其中:
第一自增模塊401,用于信息寫入單元303執(zhí)行數(shù)據(jù)采集函數(shù)的數(shù)據(jù)采集功能,將系統(tǒng)當前中斷的中斷運行狀態(tài)信息寫入環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前寫入序號的元素中之后,將當前寫入序號的值增1;
第一模運算模塊402,用于將值增1后的寫入序號與n進行模運算;
賦值模塊403,用于將第一模運算模塊402模運算后的新結(jié)果重新賦值給寫入序號。
附圖2至附圖4任一示例的輸出模塊203可以包括第二調(diào)用單元501、第二關(guān)閉單元502、輸出單元503、判斷單元504和第二開啟單元505,如附圖5-a至附圖5-c所示本發(fā)明實施例五至七提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置,其中:
第二調(diào)用單元501,用于當有輸出要求時,調(diào)用輸出函數(shù);
第二關(guān)閉單元502,用于關(guān)閉系統(tǒng)總中斷;
輸出單元503,用于將環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前讀出序號的元素中的內(nèi)容輸出至輸出通道;
判斷單元504,用于判斷環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容是否讀完;
第二開啟單元505,用于若環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容已經(jīng)讀完,則開啟系統(tǒng)總中斷,否則,輸出單元503繼續(xù)輸出環(huán)形結(jié)構(gòu)數(shù)組元素中的內(nèi)容。
附圖5-a至附圖5-c示例的判斷單元504可以包括第二自增模塊601、第二模運算模塊602和確定模塊603,如附圖6-a至附圖6-c所示本發(fā)明實施例八至十提供的調(diào)試嵌入式系統(tǒng)多中斷的裝置,其中:
第二自增模塊601,用于輸出單元503將環(huán)形結(jié)構(gòu)數(shù)組對應(yīng)于當前讀出序號的元素中的內(nèi)容輸出至輸出通道后,對當前讀出序號的值執(zhí)行增1操作;
第二模運算模塊602,用于將值執(zhí)行增1操作后的讀出序號的值與環(huán)形結(jié)構(gòu)數(shù)組包含的元素個數(shù)n進行模運算并賦值給讀出序號;
確定模塊603,用于若已讀取元素的總個數(shù)達到n,則確定環(huán)形結(jié)構(gòu)數(shù)組的所有元素中的內(nèi)容已經(jīng)讀完。
需要說明的是,上述裝置各模塊/單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實施例基于同一構(gòu)思,其帶來的技術(shù)效果與本發(fā)明方法實施例相同,具體內(nèi)容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。
本領(lǐng)域普通技術(shù)人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于一計算機可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:只讀存儲器(rom,readonlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁盤或光盤等。
以上對本發(fā)明實施例所提供的一種調(diào)試嵌入式系統(tǒng)多中斷的方法和裝置進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。