This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LAUNCHXL2-RM57L: I2C Pull-up resistors selection

Part Number: LAUNCHXL2-RM57L
Other Parts Discussed in Thread: RM57L843

Hi,

Currently, I'm trying to communicate a LAUNCH2-RM57L and a DS1307 RTC through I2C interface. Due to the different supply voltage in each device, a voltage shift converter is needed. When I see in some applications notes, it is proposed that pull-up resistors in microcontrollers are selected based on Vcc, Vol(max), and I_OL (Supply voltage, Low-Level Voltage Output, and Low-Level Output Current) for minimum pull-up resistor. t_r and C_b (rise time and Capacitance of the bus) are used to compute maximum pull-up resistor. Equations proposed in appNote are below:

My question is related to the parameter values of these equations. When I see RM57L843 Hercules Datasheet I get confused about certain of these values.

To Vcc -> 3.3 V

To Vol -> 0.2 * 3.3 = 0.66

To the I_OL parameter, in section 5.8, according to pin type (2 mA drive strength), the document gives a value of 2mA.

To Cb, in section 7.10.2, the table gives a value of 400pF.

To tr, I see table 5-4 in section 5.10.2, according to pin type and load capacitance, it gives a list of values, however, I don't know what's the value of load capacitance. I assume that load capacitance as the same that N-Channel MOSFET BSS138L (that I use to convert digital voltage), 40pf. Then, I chose the nearest value, 50pf that gives a rise time value of 15ns.

When I compute both equations. I obtain the following resistors.

Rmin=1.32kOhms

Rmax = 44.25 Ohms

Values are not consistent with expected resistors. I think that problem would be related to tr value, it is too small. 

  • The output rise and fall times are specified for signals that drive the output signal both high/low. In typical I2C use cases, the outputs are configured as open-drain outputs, such that only the fall time specification from the datasheet is applicable. The output rise time is then controlled by your choice of an external pull-up.