This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于beaglebone black i2c设备与header上不对应的问题

beaglebone black 的原版系统自带了i2c的驱动,在/dev/下有 i2c-0和i2c-1两个设备。。。但是原理图上写着header9 的pin17和pin18是对应 I2C1的,而pin19,20是

对应I2C2的。将传感器接到19,20pin,读取/dev/i2c-1设备却能正确读取数据,而接到pin17,18则不能。。。。。这是怎么回事,是原理图设计标注不对??还是/dev/

下的设备命名的歧意????将传感器接到17,18引脚,无论读/dev/i2c-0, h还是/dev/i2c-1都不能读取数据。。。。。

求解答。。谢谢

  • 将传感器接到19,20pin,读取到的数据是正确的吗?

  • 对,将传感器19,20pin,读取到的数据是正确的。。。我觉得要么是原理图标注错了,这个可能性很小,要么是设备驱动生成的节点不对应,也就是/dev//i2c-1‍
    这个设备节点对应的不是i2c-1这个设备。。。。觉得不确定。。我现在用的系统是买的时候自带的的系统, 不知是不是这个版本系统有问题??
    下面是版本信息:
    root@beaglebone:~# 
    root@beaglebone:~# uname -a 
    Linux beaglebone 3.8.13-bone47 #1 SMP Fri Apr 11 01:36:09 UTC 2014 armv7l GNU/Linux
    root@beaglebone:~# ‍

  • 你好!

    请问使用的是什么版本的SDK?

    一般来说,i2c0的设备节点为i2c1,以此类推

  • 对,将传感器19,20pin,读取到的数据是正确的。。。我觉得要么是原理图标注错了,这个可能性很小,要么是设备驱动生成的节点不对应,也就是/dev//i2c-1‍
    这个设备节点对应的不是i2c-1这个设备。。。。觉得不确定。。我现在用的系统是买的时候自带的的系统, 不知是不是这个版本系统有问题??
    下面是版本信息:
    root@beaglebone:~# 
    root@beaglebone:~# uname -a 
    Linux beaglebone 3.8.13-bone47 #1 SMP Fri Apr 11 01:36:09 UTC 2014 armv7l GNU/Linux
    root@beaglebone:~# ‍

  • 这样吗??不是有一般是:i2c0就对应i2c0的设备节点,后面依次对应码???

    用的不是SDK,而是买回来时emmc‘里面自带的系统,版本是:BeagleBoard.org BeagleBone Debian Image 2014-04-23

    用sdk8的话,/dev目录下只有/dev/i2c-0 一个设备节点。用i2cdetect检测的话:

    root@am335x-evm:~#i2cdetect -y -r 0
    0 1 2 3 4 5 6 7 8 9 a b c d e f
    00: -- -- -- -- -- -- -- -- -- -- -- -- --
    10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    20: -- -- -- -- UU -- -- -- -- -- -- -- -- -- -- --
    30: -- -- -- -- UU -- -- -- -- -- -- -- -- -- -- --
    40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
    70: UU -- -- -- -- -- -- --

    不管接不接传感器,依然有这个输出,说明这个应该是接了内部的芯片,没有外接出来。看原理图上说接了eeprom。应该也是这样的。。按这个来说

    原理图应该没问题,可能是emmc里面的系统设备节点不对应吧。。

  • 这个是和驱动相关的,有可能debian的是把I2c2映射到/dev/i2c-1了。

    我们的SDK只初始化了I2C0