I2C误码了怎么处理

简介: I2C误码了怎么处理

我相信不少人有遇到I2C设备识别不到,或者概率性误码。


我相信大部分工程师的做法如下:

1.调整上拉电阻的大小,然后重新老化测试;

2.降低I2C速率,然后老化测试;

3.软件加入一定判断条件,将能剔除的误码剔除掉。

       

站在硬件角度来看:


第一点,盲目调整,没有调整依据。

第二点,降低I2C速率可能影响使用体验,例如触摸屏应用;降低I2C速率并不能保证就OK。

第三点,软件并不能完全剔除掉误码。

       

所以此文章推荐硬件接入做I2C的信号测试。下面列举了I2C的Standard-mode,Fast-mode,Fast-mode Plus,Hs-mode,Ultra Fast-mode各个模式信号的要求。

Standard-mode,Fast-mode,Fast-mode Plus:

       

640.png640.png640.png


Hs-mode


640.png640.png640.png


Ultra Fast-mode

640.png640.png640.png

       

从上可知,信号要求一般有电平大小、电平宽度、速率、上升下降时间、建立时间、保持时间。所以我们应该先保证自己板上的I2C信号符合标准要求后,再去做其他排查或者规避措施。


如下是我列出的Standard-mode,Fast-mode测试表,如下:


Standard-mode

640.png


Fast-mode

640.png


咋们只需要填写黄色部分,如信号名、电平以及测试结果,则可以自动得出是否测试通过。

当然也建议各位可以导入到公司的硬件测试中,很多公司都是有在做这个测试的。

测试表文件可以后台回复“硬件人-I2C测试表”获取。


推荐阅读:

IIC总线的硬件解析

相关文章
https://www.shijunheng.com 现在还不通过怎么回事呢
备案还不通过原因,https://www.shijunheng.com
184 0
https://www.shijunheng.com 现在还不通过怎么回事呢
|
2月前
|
缓存 UED 网络架构
网站404该怎么解决
网站404错误通常表示用户尝试访问的网页不存在或无法找到
为啥会这样啊?
通义灵码,加法计算不准确
|
7月前
|
数据库 Python
什么问题会导致404?如何解决404?
什么问题会导致404?如何解决404?
|
消息中间件 存储 资源调度
订单超时怎么处理?我们用这种方案
在电商业务下,许多订单超时场景都在24小时以上,对于超时精度没有那么敏感,并且有海量订单需要批处理,推荐使用基于定时任务的跑批解决方案。
1650 13
订单超时怎么处理?我们用这种方案
|
微服务
什么是服务雪崩,怎么解决这个问题?
什么是服务雪崩,怎么解决这个问题?
269 0
|
监控 Dubbo Cloud Native
如何解决服务雪崩?
一.什么是服务雪崩 (1)分布式系统环境下,通常会有很多层的服务调用。由于网络原因或自身的原因,服务一般无法保证100%可用。如果一个服务出现了问题,调用这个服务就会出现线程阻塞的情况,此时若有大量的请求涌入,就会出现多条线程阻塞等待,进而导致服务瘫痪。 (2)如下图,对于同步调用,当底层的库存服务不可用时,商品服务请求线程被阻塞,当有大批请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。 (3)由于服务与服务之间的依赖性,故障会传播,不可用沿请求调用链向上传递,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩效应”。
465 0
如何解决服务雪崩?
|
编译器
rpath失效是怎么回事
rpath失效是怎么回事
124 0
这一篇让你知道怎么处理异常
这一篇让你知道怎么处理异常
这一篇让你知道怎么处理异常
获取服务插件失败,请问这个怎么解决
获取服务插件失败,请问这个怎么解决