都说stm32的iic有bug,都过去这么多年了,现在2025年了还没有修复吗?
是硬件bug?
还是标准库bug?
现在都是HAL库,使用还会有问题吗?
st这么大的公司,按说该解决了,但是看好多人都是模拟iic,这到底是怎么回事?
望高人指点迷津!
都说stm32的iic有bug,都过去这么多年了,现在2025年了还没有修复吗?
是硬件bug?
还是标准库bug?
现在都是HAL库,使用还会有问题吗?
st这么大的公司,按说该解决了,但是看好多人都是模拟iic,这到底是怎么回事?
望高人指点迷津!
阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
问题分析
你提到了STM32F1的IIC(I2C)可能存在bug,质疑STMicroelectronics是否已经解决了这个问题。具体问题包括:
解决方案
建议
核心代码
#include "stm32f1xx_hal.h"
void IIC_Init(void)
{
// IIC初始化
IIC_InitTypeDef IIC_InitStruct;
IIC_InitStruct.IIC_Mode = IIC_Mode_I2C;
IIC_InitStruct.IIC_DutyCycle = IIC_DutyCycle_2;
IIC_InitStruct.IIC_Speed = IIC_Speed_FastMode;
IIC_InitStruct.IIC_ClockSpeed = 100000;
HAL_I2C_Init(&hi2c1, &IIC_InitStruct);
}
上述代码是使用HAL库初始化IIC的示例代码。