穩(wěn)定可靠的I2C通信的設(shè)計(jì)計(jì)算
求解
各種工作電壓的最大上升時(shí)間由I2C標(biāo)準(zhǔn)指定,并通過(guò)上拉電阻確定。根據(jù)該時(shí)間和總線電容,我們可以計(jì)算允許的最大上拉電阻(Rp)。當(dāng)電壓為5V,時(shí)鐘頻率為400kHz時(shí),給定總線電容CBUS為100pF,則規(guī)定的最大上升時(shí)間(TR)為300ns。
公式3:符合I2C上升時(shí)間標(biāo)準(zhǔn)的最小上拉電阻。
高電平總輸入電流(IIH)
即使沒(méi)有器件拉低線的電平,線仍處于邏輯高電平時(shí),電流仍會(huì)繼續(xù)流過(guò)上拉電阻。該電流由總線上器件的數(shù)字輸入的泄漏產(chǎn)生,也可能是質(zhì)量較差的PCB材料以及焊接殘留物所導(dǎo)致。其中一些因素是無(wú)法預(yù)見(jiàn)的,但采用高質(zhì)量材料和良好的制造工藝時(shí),輸入引腳泄漏是主要原因。
根據(jù)圖2,沒(méi)有器件拉低總線電平時(shí),線的電平需要高于VIH才能被視為邏輯高電平。泄漏電流會(huì)限制Rp的最大值,這樣其兩端的電壓降不會(huì)阻止線的電平被拉高至VIH以上。對(duì)于VIH規(guī)范,還應(yīng)謹(jǐn)慎留出一些保護(hù)裕量,以防止噪聲尖峰將電壓拉低至VIH電平以下。要在高噪聲環(huán)境下穩(wěn)定工作,I2C規(guī)范建議采用0.2 Vdd作為高出VIH的適當(dāng)裕量。
公式4:邏輯高輸入電平上的額外裕量。
通常會(huì)在器件的數(shù)據(jù)手冊(cè)中給出數(shù)字輸入的泄漏電流,對(duì)于Microchip的I2C EEPROM器件,最大輸入泄漏電流(IlIEE)為1µA。組成系統(tǒng)的最少元件是單片機(jī)I2C主器件和I2C從器件。對(duì)于本例,采用一個(gè)輸入泄漏電流(IlIMCU)為1µA的單片機(jī)和四個(gè)I2C EEPROM器件,允許100%裕量,IIH為10µA。
公式5:已定義總線的引腳泄漏產(chǎn)生的泄漏電流。
應(yīng)用歐姆定律,我們可以確定符合這些規(guī)范的Rp最大值。
公式6:確保邏輯高電平的最小上拉電阻值。
電阻值計(jì)算
通過(guò)計(jì)算電源電壓、總線電容和泄漏電流,我們可以得出RP值的范圍。
評(píng)論