没有合适的资源?快使用搜索试试~ 我知道了~
STM32F1HAL库的I2C应用注意事项
5星 · 超过95%的资源 17 下载量 194 浏览量
2020-07-18
03:41:41
上传
评论 3
收藏 34KB PDF 举报
温馨提示
试读
1页
因为要用到I2C和流量传感器通信,也是第一次使用,直接使用stm32F1 HAL库来实现初始化,在STM32F10E评估板上直接和传感器通信,一次性成功通过。当把调试好的流量计驱动程序往实际的板子上应用的时候发现会死等在某一处的问题。
资源详情
资源评论
资源推荐
STM32F1HAL库的库的I2C应用注意事项应用注意事项
因为要用到I2C和流量传感器通信,也是第一次使用,直接使用stm32F1 HAL库来实现初始化,在STM32F10E
评估板上直接和传感器通信,一次性成功通过。当把调试好的流量计驱动程序往实际的板子上应用的时候发现
会死等在某一处的问题。
因为要用到I2C和流量传感器通信,也是第一次使用,直接使用stm32F1 HAL库来实现初始化,在STM32F10E评估板上直接
和传感器通信,一次性成功通过。
当把调试好的流量计驱动程序往实际的板子上应用的时候发现会死等在某一处如下:
while(__HAL_I2C_GET_FLAG(hi2c, Flag) != RESET) { /* Check for the Timeout */ if(Timeout != HAL_MAX_DELAY).......
以上代码是HAL库中的
网上查阅是I2C的固有BUG,真的是这样吗,官方的HAL库更新了好几代了都。。。
尝试
void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle) { GPIO_InitTypeDef GPIO_InitStruct; if(i2cHandle-
>Instance==I2C2) { /* USER CODE BEGIN I2C2_MspInit 0 */ /*自已加了这一句代码,提前打开时钟,能解决前面的问题*/
__HAL_RCC_I2C2_CLK_ENABLE();</font> /* USER CODE END I2C2_MspInit 0 */ /**I2C2 GPIO Configuration PB10 ------>
I2C2_SCL PB11 ------> I2C2_SDA */ GPIO_InitStruct.Pin = GPIO_PIN_10|GPIO_PIN_11; GPIO_InitStruct.Mode =
GPIO_MODE_AF_OD; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
/* Peripheral clock enable */
非常奇怪的时,在STM32f10E评估板上不用对CUBE生成的代码更改。
没有深入研究,好用就行。
weixin_38710557
- 粉丝: 2
- 资源: 937
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论10