[STM32F0] 使用 HSI 内部时钟时能否同时使用 I2C1 和 I2C2

[复制链接]
1044|108
小熊01 发表于 2026-7-23 20:20 | 显示全部楼层
判断I2C时钟不准,可检查SCL和SDA的上升沿和下降沿时间是否稳定,使用示波器测量实际波形与预期标准波形对比。
xinpian101 发表于 2026-7-2 14:22 | 显示全部楼层
可以同时使用 I2C1 + I2C2,只要时钟树配置正确、引脚资源不冲突;HSI 作为系统时钟源完全支持多路 I2C 外设并行工作。
Undshing 发表于 2026-7-3 17:32 | 显示全部楼层
确认了,两个I2C同时使用HSI时钟时,确实可能出现时序问题。你可以降低I2C的通信速率,试试使用100kHz的标准模式。如果还不行,建议检查GPIO是否配置正确,尤其是PB8/PB9和PB10/PB11的复用功能和上拉电阻是否独立配置。
Jacquetry 发表于 2026-7-4 20:44 | 显示全部楼层
检查I2C1和I2C2的时钟源配置是否一致,确保GPIO复用正确,上拉电阻分路使用。
亚瑟 发表于 2026-7-6 12:56 | 显示全部楼层
先检查I2C的时钟源是否确实指向HSI,然后降低I2C通信速率,看是否能稳定工作。
sfd123 发表于 2026-7-10 11:46 | 显示全部楼层
关注一下  STOPF标志位冲突
哪吒哪吒 发表于 2026-8-3 09:18 | 显示全部楼层
精度对I2C通信稳定至关重要,需确保数据准确无误。
AIsignel 发表于 2026-8-7 19:08 | 显示全部楼层
要验证i2c1和i2c2在hsi下的频率,首先确保i2c和hsi配置正确,然后使用示波器测量i2c数据线上的时钟信号周期,通过周期计算频率。
643757107 发表于 2026-7-16 09:14 | 显示全部楼层
完全可以同时使用 I2C1、I2C2,只要系统时钟配置合法,HSI 做主系统时钟不冲突;唯一限制来自外设时钟总线分配,和 HSI 本身无关。
MintMilk 发表于 2026-8-19 19:31 | 显示全部楼层
确保HSI高精度是保障I2C通信稳定性的关键。
线稿xg 发表于 2026-8-21 15:33 | 显示全部楼层
STM32用HSI同时管理I2C1和I2C2没问题,硬件支持,不会冲突。
星闪动力 发表于 2026-8-28 17:19 | 显示全部楼层
设置APB1时钟分频,使频率与I2C总线规范相匹配。具体值取决于总线速度要求。
lllook 发表于 2026-7-25 14:29 | 显示全部楼层
STM32的HSI时钟源可同时供I2C1和I2C2,硬件无误,能同时控制。
Moon月 发表于 2026-9-2 13:43 | 显示全部楼层
检查I2C时钟频率是否过高,降低频率或优化时钟电路。
jf101 发表于 2026-8-4 18:17 | 显示全部楼层
IIC1和IIC2实际最终都是经过分频的总线上,时钟要排除一下配置
哪吒哪吒 发表于 2026-9-4 11:46 | 显示全部楼层
检查I2C时钟频率是否在规定范围内,使用示波器观察时钟信号波形是否稳定,若不稳定或频率不准确,可能导致通信失败。
未来AI 发表于 2026-9-8 12:33 | 显示全部楼层
STM32用HSI做系统时钟,可以同时运行I2C1和I2C2。
物联万物互联 发表于 2026-9-10 15:57 | 显示全部楼层
计算STM32F1系列I2C1和I2C2的时钟频率,需用系统时钟频率除以APB1总线预分频值再除以I2C分频值。
21mengnan 发表于 2026-8-9 18:24 | 显示全部楼层
可以同时使用 I2C1、I2C2,HSI 作为系统主时钟完全支持两路 I2C 外设并行工作,前提是满足时钟分支、外设使能、引脚资源互不冲突即可。
zhuotuzi 发表于 2026-8-13 08:29 | 显示全部楼层
使用 HSI 做系统时钟,硬件允许 I2C1、I2C2 同时工作;但 HSI 精度不足,400kHz 高速 I2C 有通信异常风险,100kHz 一般尚可。引脚、外设时钟、中断资源没有冲突就可以。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部