硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4025|回复: 3
收起左侧

[I2C] i2c timing配置

[复制链接]

55

主题

131

回帖

296

积分

高级会员

积分
296
发表于 2021-5-10 13:25:27 | 显示全部楼层 |阅读模式
看了工程示例i2c_timing_utility.c,函数I2C_Compute_SCLL_SCLH里面有个条件标注: tLOW(min) <= tAF(min) + tDNF + 2 x tI2CCLK + [(SCLL+1) x tPRESC ]

我在手册里怎么没有看到呢?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106840
QQ
发表于 2021-5-11 07:48:10 | 显示全部楼层
下载I2C的规格书看,ST的说明如下

For I2C peripheral version I2C v2 and I2C v3, the I2C frequency must be calculated using the system clock and the I2C control register based on the I2C timing. The BSP specification recommends insulating the bus frequency from the system configuration. Thus, a static service is added locally in the BSP BUS driver in order to calculate the timing field from I2C frequency expressed in Hz.
回复

使用道具 举报

55

主题

131

回帖

296

积分

高级会员

积分
296
 楼主| 发表于 2021-7-15 09:11:09 | 显示全部楼层
发现调用i2c_timing_utility.c里计算timing的值和用工具CubeMax计算的值不一样,下载了官方一个I2C_Timing_Configuration_V1.0.1.xsl,控件计算的结果也是和工具CubeMax一样,是不是i2c_timing_utility.c有误呢?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106840
QQ
发表于 2021-7-15 09:20:08 | 显示全部楼层
lindahnu 发表于 2021-7-15 09:11
发现调用i2c_timing_utility.c里计算timing的值和用工具CubeMax计算的值不一样,下载了官方一个I2C_Timing_ ...

没用过硬件I2C,帮顶。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-7 01:49 , Processed in 0.178385 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表