2024-01-30 10:57 PM - last edited on 2024-01-31 12:54 AM by SofLit
I want to know the Bus capacitance and Rise time of STM32F072V8T6 for I2C Calculation, Anyone who has know kindly tell me. Thank you.
2024-01-31 02:02 AM
The capacitance of the bus, as the name suggests, is defined by the whole bus - not just the microcontroller!
IO pin capacitance will be in the chip's Datasheet - under electrical characteristics:
The following pages give further AC characteristics
See also:
@murali wrote:and Rise time .
Again, that is defined by the external bus - not the microcontroller.
Specifically, it is defined by your pull-up resistors.
See this post:
It contains this diagram - which shows you the effect of the pullup value:
2024-01-31 06:45 PM
Thank you
2024-01-31 07:04 PM
Hi Andrew Neil,
Would you inform me of the Hold time of SDA? I want to configure with LT8491 IC of which hole time is at least 300 ns needed.
2024-01-31 10:55 PM
The hold time should be at least half a clock cycle (after a rising edge of I2C SCK I2C SDA remains stable: SDA can only change when SCK is low...).
The bits on SDA changes when SCK is low and should be stable for at least half-a-clock period of SCK (to the next falling edge, if SCK is high: SDA should never change: except for START and STOP).
Hold Time is not really so important (it should be guaranteed by I2C device in MCU, it is hold for a half-clock cycle): a "Setup time" could be more interesting (how long before an SCK edge is SDA already stable).
BTW:
as mentioned by Andrew Neil: the capacitance comes from:
The "Raise Time" is now a function of this:
Also, to bear in mind:
The "rule" is:
When you say "Raise Time" which sounds to me as: "how fast are the signals (both: SCK and SDA) going back from low to high - this is only a function of you pull-up vs. the number of I2C slaves ("capacitors", plus cable). There is nothing on MCU which could control/set the "Raise Time"!
2024-02-01 01:52 AM
"Rise Time" means specifically the time it takes the bus to rise from the low level to the high level.
This is controlled by the pullups - not the drivers.
"Fall Time", conversely, means the time it takes the bus to fall from the high level to the low level.
This is controlled by the drivers.
2024-02-01 04:54 PM
I totally agree with you. Nice explanation (for the OP).
He has mentioned "hold time" in one reply: a completely different topic.
Nothing to add: also very clearly to see the effect of a pull-up (raise time) vs. Open Drain sink for fall time.
A very great picture! (explaining the importance to have the right pull-up values).