我得到了 VL53L3CX-Satel 套件,它的行为非常奇怪。
我连接了 i2c 引脚(SDA 和 SCL)、GND 和 VDD(3.3V)。
每次运行 i2cdetect 时我都会得到不同的地址:
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: 03 -- -- 06 -- -- 09 0a -- -- 0d -- --
- 10: -- 11 -- 13 -- 15 16 17 18 -- 1a -- 1c 1d -- --
- 20: -- -- 22 -- -- 25 -- -- -- -- -- 2b 2c -- 2e 2f
- 30: -- -- 32 33 34 35 -- 37 -- -- 3a 3b 3c -- 3e --
- 40: -- -- 42 43 -- 45 46 47 -- -- -- -- 4c -- -- 4f
- 50: 50 51 -- -- -- -- -- -- -- -- -- 5b -- -- 5e --
- 60: -- -- -- -- 64 65 -- -- 68 69 6a -- 6c -- -- --
- 70: -- -- -- -- 74 -- -- 77
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: -- -- -- 06 07 08 09 -- 0b 0c -- -- --
- 10: -- -- 12 13 -- -- -- 17 18 19 -- -- 1c 1d -- --
- 20: -- 21 22 -- 24 -- 26 -- 28 29 2a 2b 2c -- -- 2f
- 30: -- -- -- 33 -- 35 -- -- 38 39 -- -- 3c 3d 3e --
- 40: -- 41 -- 43 44 45 46 47 -- 49 -- 4b -- -- 4e 4f
- 50: -- 51 -- 53 -- -- 56 57 -- 59 -- 5b -- -- -- --
- 60: 60 -- 62 -- -- -- 66 -- 68 69 6a -- -- -- -- --
- 70: 70 71 72 73 74 -- -- 77
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: -- 04 -- -- -- -- 09 0a -- -- -- 0e --
- 10: 10 -- 12 13 14 15 16 -- -- 19 1a -- -- -- 1e --
- 20: 20 21 -- -- -- 25 26 -- 28 -- -- -- -- -- 2e --
- 30: -- 31 -- 33 -- 35 -- 37 -- -- -- 3b 3c 3d 3e 3f
- 40: 40 -- 42 -- -- -- -- -- -- -- -- -- 4c -- 4e --
- 50: -- 51 -- -- -- 55 -- -- -- 59 -- -- -- 5d -- --
- 60: -- -- 62 63 -- 65 66 67 -- -- -- -- -- 6d 6e --
- 70: 70 -- -- -- 74 75 76 --
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: -- -- 05 -- -- -- -- -- -- -- 0d 0e --
- 10: 10 11 12 -- 14 15 -- -- 18 -- -- -- 1c 1d 1e --
- 20: -- 21 22 -- 24 -- -- -- 28 29 -- -- 2c 2d -- --
- 30: 30 -- 32 -- 34 35 36 37 -- 39 -- -- 3c -- 3e 3f
- 40: -- 41 -- -- 44 45 -- -- -- -- -- -- -- -- -- --
- 50: -- 51 -- 53 -- 55 -- -- -- 59 -- -- -- 5d -- --
- 60: -- -- -- -- -- -- 66 -- 68 -- -- -- -- -- -- --
- 70: 70 -- 72 -- -- -- -- 77
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: -- 04 -- 06 07 -- -- -- -- 0c -- 0e --
- 10: 10 11 12 -- 14 -- 16 -- -- 19 -- -- -- 1d 1e 1f
- 20: 20 21 -- -- 24 25 -- 27 28 -- -- -- -- -- -- --
- 30: -- -- 32 33 -- 35 36 -- 38 -- 3a -- -- -- 3e --
- 40: -- 41 42 -- 44 45 -- -- -- 49 4a -- -- -- -- 4f
- 50: 50 51 52 -- -- 55 -- 57 -- 59 -- -- -- 5d -- 5f
- 60: -- 61 62 -- -- 65 -- 67 -- 69 6a 6b 6c -- 6e --
- 70: -- -- -- -- -- 75 -- --
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: 03 04 -- -- -- 08 09 0a -- -- 0d -- --
- 10: 10 -- 12 -- 14 -- -- -- 18 19 -- -- -- 1d -- 1f
- 20: -- 21 22 -- 24 -- 26 -- -- -- -- -- 2c -- 2e 2f
- 30: -- -- -- 33 -- -- 36 -- 38 39 -- -- 3c -- 3e 3f
- 40: -- -- -- -- -- 45 46 -- 48 49 -- -- 4c 4d -- --
- 50: -- 51 -- 53 -- -- -- -- -- 59 -- -- -- -- 5e --
- 60: 60 61 62 -- 64 -- -- -- -- -- 6a 6b 6c 6d 6e --
- 70: 70 71 72 -- 74 -- 76 --
我测试了其他 IC 的 i2c 端口,它工作正常。
我自己也为 VL53L3CX 制作了一个分线板,没有用于电平转换的 TXS0108EPWR,它每次都检测得很好(检查下面的输出)。
我的
电路板的原理图也在下面。
- devboard:~ $ i2cdetect -y 1
- 0 1 2 3 4 5 6 7 8 9 a b c d e f
- 00: -- -- -- -- -- -- -- -- -- -- -- -- --
- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- 20: -- -- -- -- -- -- -- -- -- 29 -- -- -- -- -- --
- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- 70: -- -- -- -- -- -- -- --
注意:芯片是VL53L3CX,不是VL53L1。引脚是等效的。
我仍然在软件方面苦苦挣扎,但至少它被正确检测到了。
我测试了所有我能想到的让 Satel 板工作的东西,甚至添加了上拉电阻(我知道我的
开发板已经有了)。没有任何效果。
任何指针?