Supprimer un message
philfr
Aujourd'hui j'ai câblé les 4 capteurs avec du fil téléphonique, en leur configurant des adresses différentes.
Deux capteurs avec un fil de 15 cm fonctionnaient bien, mais pas simultanément sur le bus I²C. Les deux autres câblés plus long ne fonctionnaient pas du tout, même seuls sur le bus. J'ai changé le Vcc de +5V à +3.3V, et c'est rentré partiellement dans l'ordre. Les 4 capteurs sont maintenant bien détectés:
# i2cdetect s3c2410-i2c
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c/0.
I will probe address range 0x03-0x77.
Continue? [Y/n]
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- 4b -- 4d -- 4f
50: 50 51 52 53 -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Mais la lecture de la température est aléatoire: parfois ça marche, parfois j'ai un read failed.
# i2cget -y s3c2410-i2c 0x49 0x00 w
0x9015
# i2cget -y s3c2410-i2c 0x49 0x00 w
Error: Read failed
# i2cget -y s3c2410-i2c 0x49 0x00 w
0x9015
#
Je vais sans doute devoir ajouter une capa de 0.1µF (comme prévu dans la note d'application) sur chaque capteur pour corriger cela...
Deux capteurs avec un fil de 15 cm fonctionnaient bien, mais pas simultanément sur le bus I²C. Les deux autres câblés plus long ne fonctionnaient pas du tout, même seuls sur le bus. J'ai changé le Vcc de +5V à +3.3V, et c'est rentré partiellement dans l'ordre. Les 4 capteurs sont maintenant bien détectés:
# i2cdetect s3c2410-i2c
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c/0.
I will probe address range 0x03-0x77.
Continue? [Y/n]
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- 4b -- 4d -- 4f
50: 50 51 52 53 -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Mais la lecture de la température est aléatoire: parfois ça marche, parfois j'ai un read failed.
# i2cget -y s3c2410-i2c 0x49 0x00 w
0x9015
# i2cget -y s3c2410-i2c 0x49 0x00 w
Error: Read failed
# i2cget -y s3c2410-i2c 0x49 0x00 w
0x9015
#
Je vais sans doute devoir ajouter une capa de 0.1µF (comme prévu dans la note d'application) sur chaque capteur pour corriger cela...