i2c的接口到底能不能用呢?怎么感觉不太对劲呢。



  • 网上的i2cdetect看到的是这样的,明显能看到有两个设备在i2c连接着如下图:
    0_1495032649047_D0BA64D9-2579-4405-92DB-48695954334C.png
    可我的确实这样的:
    0_1495032656682_BD8F494E-CE8D-4268-8387-63067B831B6D.png
    明显感觉不太对,我现在用它接的设备,直接操作的i2c,总感觉貌似好像发不出去,
    谁懂i2c,请求帮助,感激不尽



  • 没有人知道吗,求回复,求大神停留



  • 0_1495091244615_EC4BA951-3B45-4A25-AB88-7277FBB57BC4.png
    已经好了,i2c的针脚是没问题的,可以确定绝对可用的
    只是i2cdetect的问题,
    但是用i2cdump 来查询我得设备,确实可以看到设备的
    之前之所以没有找到,想通过i2cdetect来找,是因为我不知道我的设备地址,刚才仔细看了一下datasheet之后,在一个不起眼的角落看到了一个二进制的设备地址,转换成16进制是0x3c,然后赶紧用i2cdump -y 0 0x3c看了一下,确实是我的设备0_1495091390280_5EEC8A2C-C4AA-4BDF-B8D0-2A2F6E6C7CEC.png
    然后用lua操作i2c,一开始用lua-i2c的组件不好使,不知道为什么
    后来改用的是lua-periphery,屏幕终于出现了显示,虽然是乱码,但是可以确定两点:
    1、i2c针脚,绝对没被占用,也可以发送数据
    2、lua-periphery不愧是大神的作品,我用它操作uart、i2c都成功了
    谁如果也准备用lua开发的话,lua-periphery我已经编译好,放在群共享里了,需要的人可以下载
    到此,关于i2c接口的问题就告一段落了。折腾了5天,可笑的竟然是一个地址不对的问题,我一直以为是0x50,好囧~
    剩下的就是让屏幕正确显示的问题。
    本人在嵌入式开发也是小白,这么白菜的问题折磨了5天,希望大家不要笑话我哈。


  • administrators

    目前i2cdetect存在问题,具体来说并不是i2c程序包问题。而是linux内i2c驱动在MT7688上有些bug。这个我过后可以修复一下。


  • administrators

    帮作者补充一下最新战果。
    0_1495152466123_psb.jpeg