WhyCan Forum(哇酷开发者社区)

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn

您尚未登录。

#1 2020-01-21 17:49:14

joyhope
会员
注册时间: 2020-01-16
累计积分: 38

lichee zero 的I2C的问题

lichee zero 的尝试i2c

# i2cdetect -y 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
# i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          [   25.766326] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   27.846321] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   29.926323] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   32.006326] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   34.086333] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   36.166322] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   38.246323] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   40.326324] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   42.406330] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   44.486322] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   46.566369] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- [   48.646323] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0
-- ^C
[   50.726323] i2c i2c-1: mv64xxx: I2C bus locked, block: 1, time_left: 0

i2c0 看dts tree 是配置了ns2009, i2c1 应该没有接东西,我dts 里面打开了i2c

&i2c1 {
    status = "okay";
    pinctrl-0 = <&i2c1_pins>;
};

&pio {
    i2c1_pins: i2c1 {
        pins = "PE21", "PE22";
        function = "i2c1";
    };
   
};

但是i2c-1 不工作。为什么?

离线

#2 2020-01-21 18:01:03

红白机
会员
注册时间: 2020-01-02
累计积分: 133

Re: lichee zero 的I2C的问题

PE21/PE22 上拉了吗?

离线

#3 2020-01-21 20:19:11

joyhope
会员
注册时间: 2020-01-16
累计积分: 38

Re: lichee zero 的I2C的问题

肯定没有上拉,默认的lichee zero 的板子。  还没有找到这个板子的原理图。

i2c0 的我还可以接I2C的设备做测试吧,例如:ads1115 。

离线

#4 2020-01-21 21:01:08

超级萌新
会员
注册时间: 2018-05-04
累计积分: 406

Re: lichee zero 的I2C的问题

如果没上拉,就会出现上面那个错误。

离线

#5 2020-05-26 22:21:09

jou_1703
会员
注册时间: 2019-10-13
累计积分: 10

Re: lichee zero 的I2C的问题

我用
i2c1_pins: i2c1 {
                pins = "PE21", "PE22";
                function = "i2c1";
            };

没问题:
# i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- 53 -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

但是用
i2c1_pins: i2c1 {
                pins = "PB8", "PB9";
                function = "i2c1";
            };
无法detect 到0x53,也许还需要其他特别设置

离线

#6 2020-05-29 20:30:48

jou_1703
会员
注册时间: 2019-10-13
累计积分: 10

Re: lichee zero 的I2C的问题

看到电路图里有上拉的,TWI0 & TWI 都有上拉,但是为什么我的"PB8", "PB9" detect 不到设备呢?

离线

#7 2020-05-29 20:32:20

pythinker
会员
注册时间: 2019-02-12
累计积分: 185

Re: lichee zero 的I2C的问题

jou_1703 说:

看到电路图里有上拉的,TWI0 & TWI 都有上拉,但是为什么我的"PB8", "PB9" detect 不到设备呢?

是不是被其他功能复用了?比如 UART

离线

#8 2020-05-29 20:41:08

jou_1703
会员
注册时间: 2019-10-13
累计积分: 10

Re: lichee zero 的I2C的问题

我在linux dts已经把uart0 delete 掉了,回头直接在uboot dts 去掉uart0 试试!

离线

#9 2020-06-17 18:31:27

小熊猫
会员
注册时间: 2020-05-21
累计积分: 60

Re: lichee zero 的I2C的问题

20年06月17日1813_1.jpg


我的nano 配上i2c0 也是这样

离线

#10 2020-06-17 19:32:16

哇酷小二
管理员
注册时间: 2020-04-22
累计积分: 1,809

Re: lichee zero 的I2C的问题

小熊猫 说:

检查 I2C SCL/SDA 有无上拉

在线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB