1. 首页
  2. 编程语言
  3. C
  4. STM32 cubemx HAL IIC 之BUG解决办法

STM32 cubemx HAL IIC 之BUG解决办法

上传者: 2018-12-28 16:53:09上传 C文件 6.32KB 热度 104次
在使用STM32F103vct6开发硬件IIC的时候,用cubemx(版本4.20.0)生成的代码有重大bug,导致IIC通讯无论发送和接收都一直返回busy(返回值是2)。 究其原因是 stm32f1xx_hal_msp.c生成过程中出了问题,详细请参见附件中的标注(注意看HAL_I2C_MspInit函数)
下载地址
用户评论
码姐姐匿名网友 2018-12-28 16:53:09

看看。。。。。。。。。

码姐姐匿名网友 2018-12-28 16:53:09

这东东花3分有点多,我分享一下: //bug在这里,请注意看下面的注释 void HAL_I2C_MspInit(I2C_HandleTypeDef* hi2c) { GPIO_InitTypeDef GPIO_InitStruct; if(hi2c->Instance==I2C2) { /* USER CODE BEGIN I2C2_MspInit 0 */ __HAL_RCC_I2C2_CLK_ENABLE(); //将这个函数提前执行,先启动时钟,后进行IIC GPIO的初始化 /* USER CODE END I2C2_MspInit 0 */ ……