打印
[应用相关]

关于STM32使用硬件IIC无输出问题解决方法

[复制链接]
656|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
AdaMaYun|  楼主 | 2023-5-30 22:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
网上查了一下说是硬件bug,经过以下操作忽然可以使用了,但没有复现bug。
方法如下:
1、HAL_I2C_MspInit函数中的__HAL_RCC_I2C1_CLK_ENABLE()提前到__HAL_RCC_GPIOB_CLK_ENABLE()前面。
2、提高系统时钟频率。后来尝试降回内部时钟的8MHz,bug没有复现


使用特权

评论回复
沙发
vivilyly| | 2023-6-7 12:50 | 只看该作者
STM32的IIC通讯有个bug

使用特权

评论回复
板凳
lihuami| | 2023-6-8 13:32 | 只看该作者
stm32硬件i2c缺陷解决方法

使用特权

评论回复
地板
linfelix| | 2023-6-8 14:24 | 只看该作者
需要检查是否有其他设备正在使用I2C总线,并将其释放。

使用特权

评论回复
5
mollylawrence| | 2023-6-8 22:09 | 只看该作者
检查I2C从设备地址是否正确,并根据需要进行修改。

使用特权

评论回复
6
Mowergy| | 2023-6-11 15:24 | 只看该作者
检查一下有没有其他设备正在使用I2C总线

使用特权

评论回复
7
chenqianqian| | 2023-6-11 15:35 | 只看该作者
是时钟没有配置对吧

使用特权

评论回复
8
Jacquetry| | 2023-6-11 22:19 | 只看该作者
硬件iic好像有点问题吧

使用特权

评论回复
9
zerorobert| | 2023-6-13 20:37 | 只看该作者
在使用硬件I2C通信时,需要了解相关的寄存器和操作方法,并结合实际应用场景进行相应的设置和调试。

使用特权

评论回复
10
hudi008| | 2023-6-13 21:25 | 只看该作者
想用IIC的话,就用软件模拟吧。

使用特权

评论回复
11
macpherson| | 2023-6-13 21:51 | 只看该作者
因为ack信号时间很短暂,一旦错过了这个短暂的ACK信号,STM32就挂了。

使用特权

评论回复
12
Stahan| | 2023-6-13 22:59 | 只看该作者
是不是有其他设备没释放啊

使用特权

评论回复
13
10299823| | 2023-6-14 10:58 | 只看该作者
如果配置错误,可能会导致通信失败。此时需要检查I2C引脚的配置是否正确,并根据需要进行修改。

使用特权

评论回复
14
primojones| | 2023-6-14 14:11 | 只看该作者
在使用硬件I2C通信时,需要正确设置I2C时钟频率。

使用特权

评论回复
15
louliana| | 2023-6-19 10:36 | 只看该作者
看看时序图,按照时序图写程序              

使用特权

评论回复
16
wengh2016| | 2023-6-19 13:12 | 只看该作者
stm的i2c设计很难用              

使用特权

评论回复
17
51xlf| | 2023-6-19 14:13 | 只看该作者
在使用硬件I2C通信时,如果I2C总线被其他设备占用,可能会导致通信失败。

使用特权

评论回复
18
Pretext| | 2023-6-19 19:08 | 只看该作者
别用硬件的了呗,用内部8MHz晶振多不好啊。

使用特权

评论回复
19
朝生| | 2023-6-19 19:08 | 只看该作者
【1、HAL_I2C_MspInit函数中的__HAL_RCC_I2C1_CLK_ENABLE()提前到__HAL_RCC_GPIOB_CLK_ENABLE()前面。】这个只是初始化的时候用的吧。

使用特权

评论回复
20
芯路例程| | 2023-6-19 19:09 | 只看该作者
我觉得IIC还是别用硬件的了,随时容易出现问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

186

主题

1356

帖子

3

粉丝