打印
[FAQ]

APM32F103xE_I2C_加入六轴传感器后,I2C通讯EEPROM会挂死

[复制链接]
1004|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Gfan|  楼主 | 2022-3-31 16:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  
芯片型号
  
APM32F103xE
问题类型/涉及模块
I2C
简要描述
加入六轴传感器后,发现I2C通讯EEPROM会挂死
  
对比测试:不加六轴后,I2C挂掉概率降低很多;但由于概率性发生没有抓到包。
原因分析
1、硬件上,I2C的上拉电阻是10k,驱动能力较弱
  
2软件上,MCU在接收数据失败后会一直死等,出现死机现象。
解决方案
1.     硬件上,加入6轴后,传感器增加,总线电流有变化,将客户使用的10K上拉电阻调成成4.7K。
  
2.     软件上,在原先代码中,加入I2C总线判定,若接收数据失败,产生9个CLK的时钟,模拟I2C时序,并释放总线,强制拉高引脚电平,然后重新进行收发数据,继续通信。
总结
1、按照推荐的硬件电路设计,电阻太大,驱动能力较弱,干干扰能力较弱。
  
2、建议增加通信过程中接收、失败异常的代码,以提高通信可靠性,避免MCU死等,出现死机现象。

使用特权

评论回复
沙发
海滨消消| | 2022-4-2 09:20 | 只看该作者
很专业的解决思路

使用特权

评论回复
板凳
caigang13| | 2022-4-3 10:41 | 只看该作者
10K上拉是有点大

使用特权

评论回复
地板
一个人破| | 2022-4-15 10:26 | 只看该作者
楼主的昵称我太喜欢了,是干饭的意思吗 /偷笑

使用特权

评论回复
5
macpherson| | 2022-11-5 09:43 | 只看该作者
硬件iic可能太坑了。              

使用特权

评论回复
6
maudlu| | 2022-11-5 09:57 | 只看该作者
是不是可以eeprom挂在mpu6050的aux接口?

使用特权

评论回复
7
pentruman| | 2022-11-5 10:26 | 只看该作者
这个是驱动能力不足了吗              

使用特权

评论回复
8
sesefadou| | 2022-11-5 10:51 | 只看该作者
现在的六轴传感器模块都是自带上拉电阻的。

使用特权

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

本版积分规则

认证:极海半导体
简介:珠海极海半导体有限公司是一家致力于开发工业级/车规级微控制器、模拟与混合信号IC及系统级芯片的集成电路设计型企业。极海团队拥有20年集成电路设计经验和嵌入式系统开发能力,可为客户提供核心可靠的芯片产品及方案,实现准确感应、安全传输和实时控制,助力客户在智慧家居、高端消费电子、工业控制、汽车电子、智慧能源以及通信设施等领域的拓展创新。

119

主题

186

帖子

15

粉丝