Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Pull-up resistors on I2C port

Status
Not open for further replies.

emreer3442

Newbie
Joined
Jun 28, 2021
Messages
5
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
56
1638778360639.png



Hi everyone, I am confuse about I2C pull-up resistors. I use 4 I2C sensors. I am not sure is it true that pull-up resistors count. I use every sensors for pull-up resistors. If I use pull-up resistors only for I2C port (I mean one port for all sensors) is it enough?

Also, I heard "Pull-up resistors are not require because STM32F already have one." Is that true? Please help me about it. I will be really appriciated.
 

Hi,

What I did: I read the I2C specification. I recommend to do the same. No need to read the whole document at once. Just focus on the pull ups. (It´s the most reliable source of information. All other documents should refer to the I2C specification)

But maybe you are confused, because the specification does not give a simple answer.
Why is there no simple answer? Because it depends on your application. Every application is different.

* Different voltage levels
* different I2C speed
* different line and IC IO capacitance
* external noise sources
...are the most important parameters.

***
Initially I2C was designed for short busses on a PCB (signals not leaving the PCB).
For this a 10k pullup should be sufficient. For more lenghty busses, higher speed, higher noise you need to go more low impedance. Maybe down to 1k. But you need to read the IC datasheets to verify whether they are able to drive the accoring milliamperes while maintianing safe voltage margins.

One resitor per line is sufficient, don´t use one resistor per IC.

Maybe the microcontroller has internal pull ups. Usually they are too high ohmic to meet I2C specifications. You have to check the datasheet.
With external resistors you are safe and more flexible to adjust the value to your application. (I never relied on the internal pull ups for I2C on my designs)

Klaus
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top