i2c超时
1.有的时候读写的时候,从设备的反应时间不见得那么快 ,所以经常会出现i2c读写概率性的超时失败。特别是一次读写很多个byte的时候
所以需要将i2c中的超时等待时间调大一点。但是调太大的话会影响单次i2c的传输速率
2.i2c driver中有个retry操作,对于每次写单个byte都会概率性的出现i2c失败显示超时,即没有收到ack,那么不妨在设置retry次数为2.即当每次失败的时候
在重新发送或者读写一次。已降低发生i2c超时的概率
1 2 3 4 5 6 7 8 9 | case I2C_RETRIES: client->adapter->retries = arg; break ; case I2C_TIMEOUT: /* For historical reasons, user-space sets the timeout * value in units of 10 ms. */ client->adapter->timeout = msecs_to_jiffies(arg * 10); break ; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2019-07-05 Windows 10系统快捷键
2018-07-05 NTSC、PAL、SECAM三大制式简介