電源中常用的總線技術(shù)
⑶故障自檢功能
由于I2C總線上的信息是由SDA和SCL兩線串行數(shù)據(jù)信號(hào)線雙向傳輸?shù)?,因此CPU可以對(duì)I2C總線的通信情況和被控集成電路的工作狀態(tài)進(jìn)行監(jiān)測(cè),并在屏幕上顯示檢測(cè)結(jié)果,為維修人員提供有關(guān)故障自檢信息。被控器送來(lái)的低電平應(yīng)答信號(hào),CPU就會(huì)判斷該被控器有故障,并終止數(shù)據(jù)傳送。由于各被控集成電路和器件均有自己的地址,所以,在總線上不同時(shí)間傳送著眾多的控制信號(hào),但各被控器只要把與自己地址相同的控制信號(hào)從總線上取下來(lái),并進(jìn)行識(shí)別和處理,得到相應(yīng)的控制信號(hào),就可以實(shí)現(xiàn)相應(yīng)的控制。
2.4 I2C總線系統(tǒng)的控制過(guò)程
⑴CPU與存儲(chǔ)器之間的數(shù)據(jù)交換
I2C總線系統(tǒng)中的存儲(chǔ)器存儲(chǔ)有兩種信息:一是用戶信息,是用戶寫(xiě)入的控制信息,此信息用戶可以更改,如各種模擬控制量(例如電源的OVP、OCP、OTP和所需輸出電壓值等);另一種是控制信息,是由廠家寫(xiě)入的控制數(shù)據(jù),此信息用戶不能改變。電器正常工作時(shí),CPU從存儲(chǔ)器中取出有關(guān)用戶信息和控制信息,并送往被控電路使其處于正常工作狀態(tài);當(dāng)調(diào)整電器時(shí),CPU也從存儲(chǔ)器中取出控制信息,檢修人員使用正確的調(diào)試步驟來(lái)改變這些控制信息,以確保采用I2C總線的電器處于最佳工作狀態(tài)。
⑵CPU對(duì)被控電器的控制過(guò)程
CPU對(duì)采用I2C總線的被控電器控制需經(jīng)過(guò)以下過(guò)程。
①CPU尋址過(guò)程。當(dāng)CPU要對(duì)某被控器進(jìn)行控制時(shí),CPU將向總線發(fā)出該被控器的地址指令,被控器收到指令后,便發(fā)出應(yīng)答信息,CPU總線收到應(yīng)答信息后,就將該被控器作為控制對(duì)象。
②CPU調(diào)用數(shù)據(jù)過(guò)程。CPU找到被控器后,就從存儲(chǔ)器中調(diào)出相應(yīng)的用戶信息及控制信息,并通過(guò)I2C總線送到被控器,使被控器處于所要求的工作狀態(tài)。
③被控器執(zhí)行指令的過(guò)程。被控器接收到指令后,便對(duì)指令進(jìn)行譯碼,并將譯碼的結(jié)果與自己的控制內(nèi)容編碼進(jìn)行比較,以確定進(jìn)行何種操作,這項(xiàng)工作是由總線接口電路中的譯碼器來(lái)完成的。確定進(jìn)行何種操作后,總線接口電路中的相應(yīng)控制開(kāi)關(guān)便自動(dòng)接通,控制數(shù)據(jù)經(jīng)過(guò)控制開(kāi)關(guān)送到D/A轉(zhuǎn)換器,轉(zhuǎn)換成模擬控制電壓,用以控制相應(yīng)的模擬電路,完成有關(guān)操作。I2C總線數(shù)據(jù)傳送最繁忙的時(shí)刻是在采用I2C總線電路的剛開(kāi)機(jī)一瞬間,由于被控電路沒(méi)有存儲(chǔ)數(shù)據(jù)的功能,因此,每次開(kāi)機(jī)時(shí)CPU都要從存儲(chǔ)器中取出控制數(shù)據(jù),送往各被控器,使被控器進(jìn)人相應(yīng)的工作狀態(tài)。因此,剛開(kāi)機(jī)時(shí)CPU的控制任務(wù)最繁重,控制過(guò)程最復(fù)雜,損壞的可能性也就最大,所以使用I2C總線的電器應(yīng)盡量避免頻繁開(kāi)/關(guān)機(jī)。
根據(jù)電器功能的強(qiáng)弱以及在I2C總線上掛接的被控電路的不同,在I2C總線采用的CPU上可引出一組或多組I2C總線。
由I2C總線控制的集成電路或器件必須具有專用的總線端子,即SDA端子與SCL端子。凡是具有SDA、SCL端子(引腳)的集成電路或器件,均可以由總線控制。
2.5 I2C總線信號(hào)的傳輸方式
I2C總線中的兩根信號(hào)線(SDA、SCL)在傳輸各種控制信號(hào)的過(guò)程中是有嚴(yán)格分工的。其中,SDA數(shù)據(jù)線用來(lái)傳輸各控制信號(hào)的數(shù)據(jù)及這些數(shù)據(jù)占有的地址等內(nèi)容;SCL時(shí)鐘線用來(lái)控制器件與被控器件之間的工作節(jié)拍。為保證總線輸出電路得到供電,SDA線和SCL線均通過(guò)上拉電阻和電源連接,當(dāng)總線空閑時(shí),SDA和SCL兩線均保持高電平。I2C總線控制信號(hào)傳輸波形如圖3所示。
圖3 I2C總線控制信號(hào)傳輸波形
(1)時(shí)鐘線控制信號(hào)
SCL線為高電平期間,SDA線上傳輸?shù)臄?shù)據(jù)必須保持穩(wěn)定,在此期間,控制器件與被控制器件之間可以交換數(shù)據(jù);SCL線為低電平期間,SDA線上傳輸?shù)臄?shù)據(jù)可以變化,即允許數(shù)據(jù)線上電平高低跳變。
(2)數(shù)據(jù)線控制信號(hào)
數(shù)據(jù)線上傳輸?shù)目刂菩盘?hào),均按圖3所示的內(nèi)容和順序先后傳輸:起始狀態(tài)信號(hào)、被控電路地址、讀寫(xiě)方式(數(shù)據(jù)傳輸方向位)、應(yīng)答信號(hào)、數(shù)據(jù)信號(hào)、應(yīng)答信號(hào)、數(shù)據(jù)信號(hào)、應(yīng)答信號(hào)、終止?fàn)顟B(tài)信號(hào)。
在時(shí)鐘線為高電平期間,數(shù)據(jù)線上一個(gè)電平由高到低的跳變規(guī)定為起始狀態(tài),電平由低到高的跳變規(guī)定為終止?fàn)顟B(tài),起始狀態(tài)信號(hào)和終止?fàn)顟B(tài)信號(hào)均由CPU發(fā)出。當(dāng)CPU發(fā)出起始狀態(tài)信號(hào)后,總線即處于占用狀態(tài);當(dāng)CPU發(fā)出終止?fàn)顟B(tài)信號(hào)后,總線又處于空閑狀態(tài)。在SDA線上傳輸?shù)臄?shù)據(jù),其字節(jié)為8位。前7位是被控電路的地址,第8位是數(shù)據(jù)傳輸?shù)姆较蛭?,?”表示由CPU發(fā)送數(shù)據(jù),“1”表示CPU接收數(shù)據(jù)。每傳輸一個(gè)數(shù)據(jù)字節(jié)后,跟著一位應(yīng)答(確認(rèn))信號(hào),這個(gè)應(yīng)答信號(hào)是由CPU發(fā)出的,在應(yīng)答位時(shí)鐘期間,CPU釋放數(shù)據(jù)線,以便被控器在這一位上送出應(yīng)答信號(hào)。
當(dāng)被控器的數(shù)據(jù)接收無(wú)誤時(shí),被控器發(fā)出低電平應(yīng)答信號(hào),經(jīng)確認(rèn)后的數(shù)據(jù)才有效。當(dāng)數(shù)據(jù)被確認(rèn)后,CPU便可以繼續(xù)傳送數(shù)據(jù)并繼續(xù)對(duì)數(shù)據(jù)加以確認(rèn),直到CPU發(fā)出終止?fàn)顟B(tài)信號(hào)為止。若在應(yīng)答位時(shí)鐘期間,CPU未接收到被控器送來(lái)的低電平應(yīng)答信號(hào),CPU就會(huì)判斷該被控器有故障,并終止數(shù)據(jù)傳送。由于各被控集成電路和器件均有自己的地址,所以,在總線上不同時(shí)間傳送著眾多的控制信號(hào),但是各被控器只要把與自己的地址相同的控制信號(hào)從總線上取下來(lái),并進(jìn)行識(shí)別和處理,得到相應(yīng)的控制信號(hào),就可以實(shí)現(xiàn)相應(yīng)的控制。
2.6 I2C總線系統(tǒng)與外部電路的連接方式
I2C總線系統(tǒng)的外部電路結(jié)構(gòu)簡(jiǎn)單,它與被控電路之間的連接方式有直接式和隔離式兩種。
(1)直接式I2C總線
直接式I2C總線是指被控集成電路直接或通過(guò)電阻掛在I2C總線上,其電路工作原理圖如圖4所示。因?yàn)镃PU的I2C總線輸出端口內(nèi)部電路形式為集電極開(kāi)路(或漏極開(kāi)路)形式,所以在CPU的I2C總線輸出端必須通過(guò)上拉電阻R接+5V電源,為CPU的I2C總線輸出端口的內(nèi)部電路供電。圖4中的電阻R為隔離電阻,C為抗干擾電容,主要是為了提高I2C總線上數(shù)據(jù)傳輸?shù)目煽啃?,防止誤動(dòng)作進(jìn)人維修狀態(tài)和防止由于外部干擾信號(hào)改變I2C總線數(shù)據(jù)。穩(wěn)壓管VS是為了防止外部高電壓損壞CPU的I2C總線輸出端的內(nèi)部電路。
圖4 直接式I2C總線工作原理圖
(2)隔離式I2C總線
隔離式I2C總線是指CPU引出的總線通過(guò)隔離器與被控集成電路相連接。隔離器一般由晶體管組成,其電路工作原理圖如圖5所示。這種電路的優(yōu)點(diǎn)是CPU與被控集成電路被晶體管隔離器隔離開(kāi),當(dāng)被控對(duì)象發(fā)生故障使I2C總線上電壓升高時(shí),晶體管會(huì)截止,從而保護(hù)CPU不被高電壓沖擊而損壞。
圖5 隔離式I2C總線工作原理圖
評(píng)論