查看: 9028|回复: 11

I2C 调了两天,最后竟然是数据线过长的影响。

  [复制链接]
  • TA的每日心情
    慵懒
    2013-5-12 13:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-8-7 02:57:06 | 显示全部楼层 |阅读模式
    分享到:
    STM32,硬件I2C操作ADS1110.在野火的板子上顺利调通。但新买了块ZET6最小系统板,把程序移植到最小系统板上,除了ADS1110不应答,其它一切正常。看到网上说STM32的I2C有bug,就开始把问题推到芯片问题上了。没调通心里还是不舒服,上电突然发现有反应,但不稳定,一下行一下不行。这时候意识到应该是硬件有问题了。只好把I2C协议下了下来。看协议的时候突然发现协议里说到总线长度的问题。这时候才意识到,我犯了个很大而且很低智商的错误。而且我有使用逻辑分析仪的习惯。由于要拓展端口只能先把端口引出再接线,问题这就来了。。这几根线太长了。。远超过了10cm。
    这就是找了两天的原因啊。虽然野火的板子这样用没问题,但最小系统板可能布线的原因吧。导致了传输不稳定。。。
    今天终于知道了PCB布线对电路性能的影响了。。
    仅以此贴提醒下像我这样的小菜鸟。。。注意布线。不要怀疑芯片的问题(因为还是菜鸟)。还有很重要的一点要阅读Datasheet和协议。
    感觉各个教程教I2C的不少,但拿出真正I2C协议认真分析的太少了。。如果不是看到协议书上的那一点,说不定还要调几个通宵。。。
    菜鸟贴。。欢迎各位大大拍砖。。。。顺手发下协议,我知道以前有人发。但还是发下吧。。
    1.jpg

    I2C协议V2.1_中文版.pdf

    1.46 MB, 下载次数: 139

    I2C总线协议V2.1.pdf

    279.86 KB, 下载次数: 57

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2017-10-9 10:25
  • 签到天数: 886 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2013-8-7 03:08:15 | 显示全部楼层
    这都是珍贵的经验啊。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-10-9 10:25
  • 签到天数: 886 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2013-8-7 03:27:25 | 显示全部楼层
    以前也遇到过因为上拉电阻造成的小错误
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2014-5-8 11:45
  • 签到天数: 113 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2013-8-7 07:13:56 | 显示全部楼层
    学习了,这个宝贵的经验
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-22 19:39
  • 签到天数: 316 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-8-7 08:00:17 | 显示全部楼层
    这样也可以,只知道串口通信的波特率,对线的长度有影响!

    点评

    线的长度的问题,学习了  发表于 2013-8-7 08:27
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-5-17 12:36
  • 签到天数: 116 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2013-8-7 09:33:05 | 显示全部楼层
    最近正在看I2C协议 很受用
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2013-5-12 13:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

     楼主| 发表于 2013-8-7 11:39:59 | 显示全部楼层
    因为原来这个模块是用在5v系统上的,上拉电阻是10k。刚刚测试了换成4.7k上拉,恢复原来的接法,通信成功。说明主要原因还是在于上拉电阻。但线的长度更加剧了问题的存在
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-4-2 16:02
  • 签到天数: 257 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2013-8-8 15:36:05 | 显示全部楼层
    估计是线材不好,线材影响也很大的,10-20cm的距离肯定没问题的,即使是1米的距离照样可以通讯,HDMI接口里是有I2C总线的,照样可以长距离通讯!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2014-6-11 09:35
  • 签到天数: 15 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2013-8-9 21:56:55 | 显示全部楼层
    恭喜楼主,取得抗战胜利啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2013-8-15 21:07:13 | 显示全部楼层
    感谢楼主提供的宝贵经验!!也许为我省下了不只几个通宵的时间呢!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-5-16 16:20 , Processed in 0.204328 second(s), 34 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.