專利名稱:用于控制具有多個(gè)型號(hào)的硬件裝置的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及控制具有多個(gè)型號(hào)的硬件裝置的方法和系統(tǒng),尤其是用于控制具有多個(gè)型號(hào)的兼容硬件裝置的方法和系統(tǒng),這些型號(hào)的兼容硬件裝置多數(shù)控制參數(shù)是相同的,只有一小部分是不同的。
由軟件控制的硬件通常根據(jù)價(jià)格、使用目的、性能、發(fā)布日期、容量等等在一個(gè)系列中具有多種型號(hào)。
在同一系列的硬件裝置中,這些硬件裝置的主要結(jié)構(gòu)是相同的,但是這些硬件裝置的某些功能和為了實(shí)現(xiàn)某些功能的某些結(jié)構(gòu)是根據(jù)在同一系列硬件裝置中的各個(gè)型號(hào)而變化的。為便于理解,
圖1a和1b示出了一些例子。在硬件裝置中的型號(hào)A和型號(hào)B從結(jié)構(gòu)和工作過程上看是相同的,但是它們的不同在于激勵(lì)發(fā)光二極管(LED)的信號(hào)是從不同的端口輸出的。型號(hào)A使用了端口1輸出激勵(lì)發(fā)光二極管的信號(hào),而信號(hào)B使用了端口2輸出激勵(lì)發(fā)光二極管的信號(hào)。
因此,由于在硬件上的微小差別,為了控制每一個(gè)硬件應(yīng)該開發(fā)相類似的只是少許不同的軟件。如圖1a和1b所示的簡(jiǎn)單例子,型號(hào)A的軟件被編程使得端口1的輸出受控以便激勵(lì)發(fā)光二極管,而型號(hào)B的軟件被編程為致使端口2的輸出受控以便激勵(lì)發(fā)光二板管。然而,這樣做的話將消耗很多人力和時(shí)間。此外,由型號(hào)造成的硬件和軟件之間的差別應(yīng)該被識(shí)別出,以便于應(yīng)用最新的軟件。此外,在升級(jí)每一型號(hào)的硬件的情況下,應(yīng)該識(shí)別由型號(hào)造成的每一硬件和每一軟件之間的差別。
為解決上述的問題,本發(fā)明的目的是提供一種通過使用公用的軟件控制具有多個(gè)型號(hào)的硬件裝置的方法和系統(tǒng),這些硬件裝置在多數(shù)情況下控制參數(shù)是相同的,但在少數(shù)情況下是不同的。
為實(shí)現(xiàn)本發(fā)明的上述目的,提供了一種用于兼容地控制具有多個(gè)型號(hào)的硬件裝置的方法,其中多數(shù)控制參數(shù)是相同的,只是少數(shù)參數(shù)不同,本控制方法包括如下步驟對(duì)每一型號(hào)的硬件裝置指定一標(biāo)識(shí)符(ID);提供分別應(yīng)用到每一型號(hào)硬件裝置的多個(gè)特定型號(hào)函數(shù);識(shí)別將被控制的硬件裝置的ID;指定對(duì)應(yīng)于被識(shí)別的ID的一特定型號(hào)函數(shù)作為一函數(shù)指針,從而控制一相對(duì)應(yīng)的硬件裝置。
在此,ID識(shí)別步驟最好包括提供一ID端口,用于按每一型號(hào)輸出對(duì)硬件裝置的不同的ID的步驟。
最好是特定函數(shù)分配步驟使用在C語言中的函數(shù)指針的函數(shù)。
還提供了一種用于控制具有多個(gè)型號(hào)的兼容硬件裝置的系統(tǒng),其中多數(shù)控制參數(shù)是相同的,只是少數(shù)控制參數(shù)是不同的,該控制系統(tǒng)包括用于識(shí)別每一硬件的型號(hào)的一型號(hào)識(shí)別器;一控制器,通過使用分別應(yīng)用于每一種型號(hào)的硬件的多個(gè)特定型號(hào)函數(shù),用于指定與在型號(hào)識(shí)別器中被識(shí)別的型號(hào)相對(duì)應(yīng)的一特定型號(hào)函數(shù)作為一函數(shù)指針和控制相對(duì)應(yīng)的硬件裝置。
通過參照附圖對(duì)本發(fā)明的結(jié)構(gòu)和工作過程的詳細(xì)描述,本發(fā)明的目的和優(yōu)點(diǎn)將變得更加清楚明了。
圖1a和1b分別圖示了用于說明常規(guī)硬件裝置控制方法的簡(jiǎn)單硬件裝置的結(jié)構(gòu);圖2是本發(fā)明實(shí)施例的控制系統(tǒng)的方塊圖;圖3a和3b示出了用于說明本發(fā)明的硬件裝置控制方法的簡(jiǎn)化的硬件裝置的結(jié)構(gòu);圖4是用于說明本發(fā)明的實(shí)施例的控制方法的流程圖。
下面將參照附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)地描述。
在圖2中,控制系統(tǒng)1包括一型號(hào)識(shí)別器11和一控制器12。系列中的每一硬件2依據(jù)每一型號(hào)輸出一不同的ID值。型號(hào)識(shí)別器11接收從硬件裝置2輸出的ID值,然后識(shí)別該硬件裝置2具有的型號(hào)??刂破?2根據(jù)識(shí)別出的型號(hào)指定一特定型號(hào)函數(shù)給一函數(shù)指針,然后控制硬件裝置的每一型號(hào)。
圖3a和3b示出了用于說明控制本發(fā)明實(shí)施例的硬件裝置的方法的簡(jiǎn)化的硬件裝置2的結(jié)構(gòu)。型號(hào)C和型號(hào)D具有各自的用于輸出其型號(hào)的ID值的端口3。當(dāng)端口3的電壓是Vcc時(shí),也就是端口3的電壓對(duì)應(yīng)于一系統(tǒng)電壓時(shí),型號(hào)識(shí)別器11識(shí)別該硬件裝置為型號(hào)C,當(dāng)端口3被接地時(shí),型號(hào)識(shí)別器11識(shí)別該硬件裝置為型號(hào)D。其余的硬件裝置在結(jié)構(gòu)和工作過程上是相同的,但是它們具有用于輸出激勵(lì)發(fā)光二極管的信號(hào)的不同的端口。型號(hào)C通過端口1輸出激勵(lì)發(fā)光二極管的信號(hào),型號(hào)D通過端口2輸出激勵(lì)發(fā)光二極管的信號(hào)。
圖4是用于說明本發(fā)明的實(shí)施例的控制方法的流程圖。下面將詳細(xì)地描述其中的每一步驟。
首先,在硬件裝置中按照每一型號(hào)分配一ID(S10)。當(dāng)如在此實(shí)施例那樣有兩個(gè)型號(hào)時(shí),可以使用一單個(gè)直叉開關(guān)簡(jiǎn)單地分配兩個(gè)型號(hào)的ID。如果型號(hào)數(shù)是等于或大于2時(shí),一型號(hào)ID可以由直叉開關(guān)分配,作為整數(shù)中的最小值,其大于或等于Log2N。如果使用了模-數(shù)(A/D)變換器,那么各種型號(hào)的ID可以由使用電壓分壓電路的一單個(gè)的模擬輸入端口分配。
然后,定義一函數(shù)指針和一特定的型號(hào)函數(shù)(S20)。在表1中,函數(shù)指針和定義接通或斷開型號(hào)C和D的發(fā)光二極管的函數(shù)的處理過程是由C語言表現(xiàn)的。編碼L100至L106定義函數(shù)指針Fn_LED_On和Fn_LED_Off,函數(shù)Fn_LED_On_C和Fn_LED_Off_C用于控制型號(hào)C的發(fā)光二極管(LED),以及函數(shù)Fn_LED_On_D和Fn_LED_Off_D定義型號(hào)D的發(fā)光二極管。L103的一語法“port1|=0x1;”是與“port1=port1|0x1;”相同的,其表示在不同位的數(shù)據(jù)被發(fā)送到端口1的情況下,即連接到端口1的發(fā)光二極管被接通,則最后一個(gè)位被“1”所代替。L104的一語法“port1&=~0x1;”是與“port1=port1&~0x1;”相同的,其表示在不同位的數(shù)據(jù)被發(fā)送到端口1的情況下,即連接到端口1的發(fā)光二極管被斷開時(shí),最后一個(gè)位被“0”所代替。L105和L106具有與L100至L104相似的意義。
表1L100 typedef void(*VFnDef)(void)L101 VFnDef Fn_LED_On,F(xiàn)n_LED_Off;L102 int port1,port2,port3;L103 void Fn_LED_On_C(void){port1|=0x1;}L104 void Fn_LED_Off_C(void){port1&=~0x1;}
L105 void Fn_LED_On_D(void){port2|=0x1;}L106 void Fn_LED_Off_D(void){port2&=~Ox1;}……………..
然后,識(shí)別一型號(hào)ID(S30)。在端口3的輸入被識(shí)別之后,如果端口3的輸入是“0”,那么則認(rèn)為硬件裝置是型號(hào)D,如果端口3的輸入是“1”,那么則認(rèn)為硬件裝置是型號(hào)C。
然后,一特定型號(hào)函數(shù)被分配給函數(shù)指針(S40)。在表2中,向一函數(shù)指針分配接通或斷開型號(hào)C和型號(hào)D的發(fā)光二極管的函數(shù)的處理過程是由C語言表現(xiàn)的。編碼L200至L207分配函數(shù)指針Fn_LED_On和Fn_LED_Off給相應(yīng)的函數(shù)。L201和L202意味著在端口3的輸入被識(shí)別之后,一函數(shù)指針Fn_LED_On被分配給函數(shù)Fn_LED_On_D。在端口3的輸入是“0”的情況下,即硬件裝置被識(shí)別為型號(hào)D,以及當(dāng)端口3的輸入是“1”時(shí),即硬件裝置被識(shí)別為型號(hào)C時(shí),函數(shù)指針Fn_LED_Off被分配給函數(shù)Fn_LED_Off_D。L204和L205具有與L200至L202相似地意義。
表2L200 switch(port3){L201 case 0Fn_LED_On=Fn_LED_0n_B;L202 Fn_LED_Off=Fn_LED_Off_B;L203 break;L204 case 1Fn_LED_On=Fn_LED_On_A;L205 Fn_LED_Off=Fn_LED_Off_A;L206 break;L207}然后一特定型號(hào)函數(shù)被用作識(shí)別函數(shù)指針(S50)。即,不考慮型號(hào)C或D,用Fn_LED_On()接通發(fā)光二級(jí)管,并用Fn_LED_Off()斷開發(fā)光二極管。
因此,型號(hào)C和D可以由相一個(gè)軟件控制。在型號(hào)數(shù)量增加的情況下,只可以增加函數(shù)定義過程和函數(shù)分配過程,其中控制過程是相同的。
如上所述,本發(fā)明控制具有多個(gè)型號(hào)的硬件裝置,其中大多數(shù)控制參數(shù)是相同的,只有很小一部分參數(shù)是不同的。所以,軟件的開發(fā)和事后的管理可以有效地進(jìn)行。在增加通過升級(jí)已有的型號(hào)做出的新型號(hào)時(shí),可以提供硬件裝置的有效管理。
權(quán)利要求
1.一種用于兼容地控制具有多個(gè)型號(hào)的硬件裝置的方法,在所述多個(gè)型號(hào)的硬件裝置中大多數(shù)控制參數(shù)是相同的,只是極少數(shù)參數(shù)不同,其中所述控制方法包括如下步驟對(duì)每一型號(hào)的硬件裝置指定一標(biāo)識(shí)符(ID);提供分別應(yīng)用到每一型號(hào)硬件裝置的多個(gè)特定型號(hào)函數(shù);識(shí)別將被控制的硬件裝置的ID;以及分配對(duì)應(yīng)于被識(shí)別的ID的一特定型號(hào)函數(shù)作為一函數(shù)指針,從而控制一相對(duì)應(yīng)的硬件裝置。
2.根據(jù)權(quán)利要求1所述的控制方法,其特征在于所述ID識(shí)別步驟包括提供一ID端口的步驟,該ID端口用于按每一型號(hào)向硬件裝置輸出不同的ID值。
3.根據(jù)權(quán)利要求1所述的控制方法,其特征在于所述特定型號(hào)函數(shù)指定步驟使用C語言中的一函數(shù)指針的函數(shù)。
4.一種用于控制具有多個(gè)型號(hào)的兼容硬件裝置的系統(tǒng),在所述多個(gè)型號(hào)的兼容硬件裝置中大多數(shù)控制參數(shù)是相同的,只是極少數(shù)控制參數(shù)是不同的,其中所述系統(tǒng)包括用于識(shí)別每一硬件的型號(hào)的一型號(hào)識(shí)別器;一控制器,通過使用分別應(yīng)用于每一種型號(hào)的硬件的多個(gè)特定型號(hào)函數(shù),用于指定與在型號(hào)識(shí)別器中被識(shí)別的型號(hào)相對(duì)應(yīng)的一特定型號(hào)函數(shù)作為一函數(shù)指針和控制相對(duì)應(yīng)的硬件裝置。
5.根據(jù)權(quán)利要求4所述的控制系統(tǒng),其特征在于所述型號(hào)識(shí)別器根據(jù)每一型號(hào)硬件裝置提供的不同的一ID值識(shí)別一型號(hào)。
6.根據(jù)權(quán)利要求4所述的控制方法,其特征在于所述特定型號(hào)函數(shù)分配過程使用C語言中的一函數(shù)指針的函數(shù)。
全文摘要
一種用于兼容地控制具有多個(gè)型號(hào)的硬件裝置的方法和系統(tǒng),在所述多個(gè)型號(hào)的硬件裝置中大多數(shù)控制參數(shù)是相同的,只是極少數(shù)參數(shù)不同。該控制方法包括如下步驟:對(duì)每一型號(hào)的硬件裝置指定一標(biāo)識(shí)符(ID);提供分別應(yīng)用到每一型號(hào)硬件裝置的多個(gè)特定型號(hào)函數(shù);識(shí)別將被控制的硬件裝置的ID;指定對(duì)應(yīng)于被識(shí)別的ID的一特定型號(hào)函數(shù)作為一函數(shù)指針,從而控制一相對(duì)應(yīng)的硬件裝置。本控制系統(tǒng)可以兼容地控制多個(gè)型號(hào)的硬件裝置。
文檔編號(hào)G06F9/06GK1280334SQ9911954
公開日2001年1月17日 申請(qǐng)日期1999年9月2日 優(yōu)先權(quán)日1999年7月8日
發(fā)明者俞皓善 申請(qǐng)人:三星電子株式會(huì)社