I2C Raspberry Pi

Le bus I2C (ou I²C), pour Inter Integrated Circuit, a été développé en 1982 par Philips 1) et permet de connecter divers équipements électroniques entre eux. Il dispose d’un système d’adressage permettant de connecter de nombreux périphériques I2C sur les mêmes câbles, ce qui signifie ici que l’on utilisera un nombre restreint de GPIO, quel que soit le nombre de périphériques I2C installés. Dans le contexte du Raspberry Pi, ce bus est très utile, puisqu’il permet de rajouter diverses fonctionnalités. On trouvera par exemple des puces pour ajouter des GPIO, des horloges temps réel, des capteurs, et bien d’autres composants en I2C. Par défaut, l’I2C n’est pas forcément activé (Raspberry Pi), et nous verrons comment faire cela.

Vérifier que le système est à jour

Avant toute chose, nous vérifierons que le système est à jour, en utilisant les commandes suivantes :

# apt-get update
# apt-get upgrade

Installation des outils I2C

Nous allons maintenant installer des outils qui nous permettront de vérifier le bon fonctionnement de nos périphériques I2C, via les commandes suivantes :

# apt-get install python-smbus
# apt-get install i2c-tools

Installation du module noyau I2C

Par défaut, le support de l’I2C n’est pas activé dans le noyau linux  de Raspbian. Pour pouvoir le faire, nous allons utiliser l’utilitaire raspi-config, que l’on lancera en tapant la commande suivante :

# raspi-config

raspi-config

raspi-config_i2c

Essayer le bus I2C

Une fois que le Raspberry pi aura redémarré, il sera alors possible d’utiliser les outils installés pour regarder ce qui est connecté sur le bus I2C. Sur les anciens Raspberry Pi (les vieux modèles B,en révision 1), le bus I2C est 0. Les nouveaux modèles B, ainsi que les A+, B+ et les Raspberry Pi 2 B ont un bus I2C en 1. Ainsi nous utiliserons la commande suivante pour visualiser les périphériques I2C connectés :

sudo i2cdetect -y 1

ou selon le cas

sudo i2cdetect -y 0

 

root@raspberrypi:/home/pi# 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: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
root@raspberrypi:/home/pi#

On constate que rien n’est connecté sur le bus I2C, mais il est fonctionnel.

 

 

 

Une réflexion au sujet de « I2C Raspberry Pi »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *