專利名稱::控制i2c器件的方法及裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及計(jì)算機(jī)通信領(lǐng)域,尤其是關(guān)于一種在計(jì)算機(jī)通信設(shè)備中控制I2C器件的裝置及方法。
背景技術(shù):
:近年來,隨著一些應(yīng)用IC的功能增強(qiáng),IC的控制越來越復(fù)雜,為使IC的功能更容易被使用,IC供應(yīng)商一般都會做塊DEMO板,并配合PC(計(jì)算機(jī))軟件界面控制其功能。一般說來,IC都是由I2C(即fC)總線所控制,而PC本身不具備I2C協(xié)議的接口,因此這就會涉及到如何將PC的控制信號轉(zhuǎn)換成12C總線協(xié)議的控制信號。目前轉(zhuǎn)換的方法有如下幾種1)利用PC的并口直接模擬I2C總線,優(yōu)點(diǎn)是價格便宜,缺點(diǎn)是接口器件體積較大;2)利用USB轉(zhuǎn)換芯片,優(yōu)點(diǎn)是體積小,但價格較貴;3)利用RS232串口與MCU通信,再由MCU模擬I2C總線,優(yōu)點(diǎn)是DEMO板可在脫離PC的情況下還能進(jìn)行控制,但軟件工作量會比較大,除了PC語言的編程外還需要MCU的軟件編程。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是,克服現(xiàn)有技術(shù)的不足,提供一種價格便宜且體積小的控制I2C器件的裝置及方法。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是該控制I2C器件的方法是用計(jì)算機(jī)的RS232串口模擬I2C總線。1所述方法通過控制RS232串口的DTR、CTS、RTS、DSR握手信號的電平高低來模擬I2C總線操作。所述的DTR握手信號與I2C總線的數(shù)據(jù)線SDA的輸出對應(yīng),DSR握手信號與I2C總線的數(shù)據(jù)線SDA的輸入對應(yīng),RTS握手信號與I2C總線的時鐘線SCL的輸出對應(yīng),CTS握手信號與I2C總線的時鐘線SCL的輸入對應(yīng)。一種控制I2C器件的裝置包括具有RS232串口的計(jì)算機(jī)及具有I2C總線接口的I2C器件,計(jì)算機(jī)的RS232串口、電平轉(zhuǎn)換電路、電平反向電路及I2C總線接口順次連接,電平轉(zhuǎn)換電路將RS232串口的電平邏輯轉(zhuǎn)換成TTL電平邏輯,電平反向電路將TTL電平邏輯反向而使反向后的電平邏輯與I2C總線的電平邏輯對應(yīng)。所述的電平轉(zhuǎn)換電路選自SP3232芯片、MAX232芯片,電平反向電路為74HC05芯片。所述的電平轉(zhuǎn)換電路為SP3232芯片,RS232串口的引腳DTR、CTS、RTS、DSR分別與SP3232芯片的四個引腳連接,SP3232芯片的兩個時鐘SCL引腳和兩個數(shù)據(jù)SDA引腳分別與74HC05芯片的另外四個引腳連接,74HC05芯片的時鐘引腳與I2C總線接口的時鐘SCL線連接,74HC05芯片的數(shù)據(jù)引腳與I2C總線接口的數(shù)據(jù)SDA線連接。所述RS232串口的引腳DTR、RTS的輸出電平經(jīng)過整流電路和穩(wěn)壓電路后得到5V電壓,該5V電壓給SP3232芯片和74HC05芯片供電。所述的SP3232芯片的兩個時鐘SCL引腳接雙色發(fā)光二極管。本發(fā)明的有益效果是,利用RS232串口直接模擬I2C總線,實(shí)現(xiàn)計(jì)算機(jī)對I2C器件的控制,不需要專用的轉(zhuǎn)換芯片,降低了整個轉(zhuǎn)換裝置的價格,而且減小了轉(zhuǎn)換裝置的體積。圖1是本實(shí)施方式控制I2C器件的方法對I2C器件進(jìn)行寫操作時的流程圖2是本實(shí)施方式控制I2C器件的方法對I2C器件進(jìn)行讀操作時的流程圖3是本實(shí)施方式控制I2C器件的裝置的電路原理圖。具體實(shí)施例方式本實(shí)施方式控制I2C器件的方法是用于實(shí)現(xiàn)計(jì)算機(jī)對I2C器件的控制,其是通過計(jì)算機(jī)的RS232串口來模擬I2C總線。該RS232串口共有九個引腳,具體如表1所示表1<table>complextableseeoriginaldocumentpage5</column></row><table><table>complextableseeoriginaldocumentpage6</column></row><table>其中,只需要RXD、TXD、GND三個引腳就可以完成RS232串口的通信工作。RXD、TXD弓l腳只能用作RS232串口通信而不能直接控制其輸出電平。通過控制RS232串口的DTR、DSR、RTS、CTS握手信號(分別由引腳DTR、DSR、RTS、CTS輸出)的電平高低即可模擬I2C總線操作,即模擬I2C總線的時鐘線SCL和數(shù)據(jù)線SDA的電平高低變化。各握手信號與I2C總線的對應(yīng)關(guān)系如表2:表2RS231串口握手信號與I2C總線的對應(yīng)關(guān)系<table>complextableseeoriginaldocumentpage6</column></row><table>DTR、RTS握手信號除作為I2C總線輸出的同時還承擔(dān)串口取電的工作,當(dāng)不進(jìn)行I2C總線操作時,使DTR、RTS握手信號處于高電平。通過本實(shí)施方式的方法對I2C器件進(jìn)行控制時,其包括讀操作和寫操作,寫操作即計(jì)算機(jī)的CPU向12C器件的寄存器中寫入數(shù)據(jù),讀操作即計(jì)算機(jī)的CPU從I2C器件的寄存器中讀取數(shù)據(jù)。如圖1所示,寫操作包括如下步驟a)發(fā)送起始信號,即操作開始;b)寫I2C器件的地址;c)CPU讀取I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則寫寄存器地址并進(jìn)入步驟d),若不是則停止操作(即發(fā)出結(jié)束信號);d)CPU讀取I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則向寄存器寫入數(shù)據(jù)并進(jìn)入步驟e),若不是則停止操作;e)CPU讀取I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則表示寫入數(shù)據(jù)成功而繼續(xù)寫入數(shù)據(jù),若不是則停止操作。如圖2所示,讀操作包括如下步驟a)發(fā)送起始信號;b)寫入需讀取的I2C器件的地址;c)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則寫入寄存器地址并進(jìn)入步驟d),若不是則停止操作;d)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則再次發(fā)送起始信號并進(jìn)入步驟e),若不是則停止操作;e)將I2C器件的地址加hf)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則讀取寄存器數(shù)據(jù)并在讀取完畢后停止操作,若不是則停止操作。本實(shí)施方式控制I2C器件的方法可以對掛在同一I2C總線上的多個I2C器件進(jìn)行控制。如圖3所示,本實(shí)施方式控制I2C器件的裝置包括具有RS232串口的計(jì)算機(jī)及具有I2C總線接口的I2C器件,該計(jì)算機(jī)的RS232串口、電平轉(zhuǎn)換電路、電平反向電路及I2C總線接口順次連接。電平轉(zhuǎn)換電路將RS232串口的電平邏輯轉(zhuǎn)換成TTL電平邏輯,電平反向電路將TTL電平邏輯反向而使反向后的電平邏輯與I2C總線的電平邏輯對應(yīng)。電平轉(zhuǎn)換電路選自SP3232芯片、MAX232芯片。電平反向電路為74HC05芯片。RS232串口JP1的引腳DTR、CTS、RTS、DSR分別通過連接線與SP3232芯片IC1的四個引腳(引腳R1IN、T20UT、R2IN、T10UT)連接,SP3232芯片的兩個時鐘SCL引腳(引腳T2IN、R20UT)分別通過連接線與74HC05芯片IC2的兩個引腳(引腳4Y、3A)連接,SP3232芯片的兩個數(shù)據(jù)SDA引腳(引腳T1IN、RIOUT)分別通過連接線與74HC05芯片的兩個引腳(引腳5Y、2A)連接,74HC05芯片的時鐘引腳(引腳4A)和數(shù)據(jù)引腳(5A)分別通過連接線與I2C接口插頭JP2的引腳SCL、SDA連接,該I2C接口插頭JP2與I2C接口插座JP3插接。另外,RS232串口的引腳DTR、RTS通過二級管D2、D3整流后再經(jīng)過5V的穩(wěn)壓二極管D4得到穩(wěn)定的5V電壓,該5V電壓為SP3232芯片和74HC05芯片供電;SP3232芯片的兩個時鐘SCL引腳分別通過電阻R5、R6與雙色發(fā)光二極管D1連接,從而通過該雙色二極管Dl指示I2C總線的相關(guān)電平。本實(shí)施方式中,SP3232芯片(或MAX232芯片)完成電平轉(zhuǎn)換,因RS232串口的電平邏輯采用的是負(fù)邏輯,取電時會造成I2C總線處于低電平而被拉死,因此用74HC05芯片將相關(guān)電平反向,既方便串口取電,又使握手信號的高低電平與I2C總線的高低電平相對應(yīng),方便PC控制軟件的編寫工作。另外,因RS232串口的握手信號為單向傳輸,而I2C總線的數(shù)據(jù)線是雙向傳輸,因此74HC05也完成I2C總線輸入輸出的隔離工作。以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對本發(fā)明所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說明。對于本發(fā)明所屬
技術(shù)領(lǐng)域:
的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。權(quán)利要求1.一種控制I2C器件的方法,其特征在于用計(jì)算機(jī)的RS232串口模擬I2C總線。2.根據(jù)權(quán)利要求1所述的控制I2C器件的方法,其特征在于通過控制RS232串口的DTR、CTS、RTS、DSR握手信號的電平高低來模擬I2C總線操作。3.根據(jù)權(quán)利要求2所述的控制I2C器件的方法,其特征在于所述的DTR握手信號與I2C總線的數(shù)據(jù)線SDA的輸出對應(yīng),DSR握手信號與I2C總線的數(shù)據(jù)線SDA的輸入對應(yīng),RTS握手信號與I2C總線的時鐘線SCL的輸出對應(yīng),CTS握手信號與I2C總線的時鐘線SCL的輸入對應(yīng)。4.根據(jù)權(quán)利要求1-3中任意一項(xiàng)所述的控制I2C器件的方法,其特征在于當(dāng)計(jì)算機(jī)的CPU往I2C器件的寄存器中寫入數(shù)據(jù)時,其包括如下步驟a)發(fā)送起始信號;b)寫該I2C器件的地址;c)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則寫寄存器地址并進(jìn)入步驟d),若不是則停止操作;d)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則向寄存器寫入數(shù)據(jù)并進(jìn)入步驟e),若不是則停止操作;e)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則表示寫入數(shù)據(jù)成功而繼續(xù)寫入數(shù)據(jù),若不是則停止操作。5.根據(jù)權(quán)利要求4所述的控制I2C器件的方法,其特征在于當(dāng)計(jì)算機(jī)CPU讀取I2C器件的寄存器中的數(shù)據(jù)時,其包括如下步驟a)發(fā)送起始信號;b)寫入需讀取的I2C器件的地址;c)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則寫入寄存器地址并進(jìn)入步驟d),若不是則停止操作;d)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則再次發(fā)送起始信號并進(jìn)入步驟e),若不是則停止操作;e)將I2C器件的地址加1;f)CPU讀取該I2C器件的應(yīng)答信息,判斷是否為收到數(shù)據(jù)的低電平,若是則讀取寄存器數(shù)據(jù)并在讀取完畢后停止操作,若不是則停止操作。6.—種控制I2C器件的裝置,其特征在于包括具有RS232串口的計(jì)算機(jī)及具有I2C總線接口的I2C器件,計(jì)算機(jī)的RS232串口、電平轉(zhuǎn)換電路、電平反向電路及I2C總線接口順次連接,電平轉(zhuǎn)換電路將RS232串口的電平邏輯轉(zhuǎn)換成TTL電平邏輯,電平反向電路將TTL電平邏輯反向而使反向后的電平邏輯與I2C總線的電平邏輯對應(yīng)。7.根據(jù)權(quán)利要求6所述的控制I2C器件的裝置,其特征在于所述的電平轉(zhuǎn)換電路選自SP3232芯片、MAX232芯片,電平反向電路為74HC05心片。8.根據(jù)權(quán)利要求7所述的控制I2C器件的裝置,其特征在于所述的電平轉(zhuǎn)換電路為SP3232芯片,RS232串口的引腳DTR、CTS、RTS、DSR分別與SP3232芯片的四個引腳連接,SP3232芯片的兩個時鐘SCL引腳和兩個數(shù)據(jù)SDA引腳分別與74HC05芯片的另外四個引腳連接,74HC05芯片的時鐘引腳與I2C總線接口的時鐘SCL線連接,74HC05芯片的數(shù)據(jù)引腳與I2C總線接口的數(shù)據(jù)SDA線連接。9.根據(jù)權(quán)利要求8所述的控制I2C器件的裝置,其特征在于所述RS232串口的引腳DTR、RTS的輸出電平經(jīng)過整流電路和穩(wěn)壓電路后得到5V電壓,該5V電壓給SP3232芯片和74HC05芯片供電。10.根據(jù)權(quán)利要求9所述的控制I2C器件的裝置,其特征在于所述的SP3232芯片的兩個時鐘SCL引腳接雙色發(fā)光二極管。全文摘要本發(fā)明公開了一種控制I2C器件的方法及裝置,該控制I2C器件的方法是用計(jì)算機(jī)的RS232串口模擬I2C總線。該控制I2C器件的裝置包括具有RS232串口的計(jì)算機(jī)及具有I2C總線接口的I2C器件,計(jì)算機(jī)的RS232串口、電平轉(zhuǎn)換電路、電平反向電路及I2C總線接口順次連接,電平轉(zhuǎn)換電路將RS232串口的電平邏輯轉(zhuǎn)換成TTL電平邏輯,電平反向電路將TTL電平邏輯反向而使反向后的電平邏輯與I2C總線的電平邏輯對應(yīng)。利用RS232串口直接模擬I2C總線,實(shí)現(xiàn)計(jì)算機(jī)對I2C器件的控制,不需要專用的轉(zhuǎn)換芯片,降低了整個轉(zhuǎn)換裝置的價格,而且減小了轉(zhuǎn)換裝置的體積。文檔編號G06F13/42GK101344874SQ20071007586公開日2009年1月14日申請日期2007年7月11日優(yōu)先權(quán)日2007年7月11日發(fā)明者金永進(jìn)申請人:深圳創(chuàng)維-Rgb電子有限公司