When set PSoC6 I2C Speed 400kbps, the actual result is only 330kbps

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
WaYa_2582946
Level 1
Level 1

When I use PSoC Creator to set I2C data rate to 400kHz, it shows "Actual data rate(kbps): 378".

I think the 400kHz is the standard speed, why makes it 378kbps? By the way, the peri clock is 50MHz.

I use the sample soft of PSoC6 and find that the actual data rate is only 330kbps,

why does it make the error rate to more than 10%?

Is there any settings that can solve this problem?

0 Likes
1 Solution
LinglingG_46
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 10 questions asked

You can delete the series resistance in the I2C SCL and SDA. And use the 2.2K pull up resistor instead of others. Maybe the clock will be higher.

View solution in original post

0 Likes
2 Replies
NoriTan
Employee
Employee
25 sign-ins 5 questions asked 10 sign-ins

I cannot find the reason why 400kbps is not used.

Anyway I can use 400kbps bus speed as follows.

GS004519.png

GS004520.png

Please specify the "SCL Low Phase" and "SCL High Phase" to adjust the duty ratio of SCL.

LinglingG_46
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 10 questions asked

You can delete the series resistance in the I2C SCL and SDA. And use the 2.2K pull up resistor instead of others. Maybe the clock will be higher.

0 Likes