Modifications

Sauter à la navigation Sauter à la recherche
1 944 octets ajoutés ,  29 août 2017 à 20:46
aucun résumé de modification
Ligne 1 : Ligne 1 :  
{{Rasp-Hack-GPIO-NAV}}
 
{{Rasp-Hack-GPIO-NAV}}
   −
L'interface I2C est un standard très utilisé conçu pour permettre à un circuit intégré<br />
+
== A propos de I2C ==
de communiquer avec une autre.  
+
I2C est un standard utilisé très souvent, standard conçu pour permettre à un composant de communiquer avec un autre. Etant donné que le Raspberry Pi est capable de communiquer en I2C nous pouvons donc brancher une multitude de composant et modules I2C sur un Raspberry-Pi.  
   −
Puisque Raspberry Pi est capable de dialoguer en I2C, nous pouvons donc connecter une<br />
+
Voici quelques projets et produits qui utilisent des modules et composants I2C:
grande variété de composants et modules supportant le protocole I2C.
  −
 
  −
Voici quelques projets qui utilisent des modules et composants I2C:
      
* [[Rasp-Hack-MCP230XX|GPIO Expander pour Raspberry Pi]] Ajouter des entrées/sorties digitales à votre Pi.
 
* [[Rasp-Hack-MCP230XX|GPIO Expander pour Raspberry Pi]] Ajouter des entrées/sorties digitales à votre Pi.
 
* [[RASP-LCD-RGB|Afficheur 16x2 lignes + Keypad]] pour Raspberry Pi
 
* [[RASP-LCD-RGB|Afficheur 16x2 lignes + Keypad]] pour Raspberry Pi
* [[Rasp-Hack-RTC-DS1307|Support RTC DS1307]] (horloge temps réel) pour Raspberry PI
+
* [[RASP-PCF8523|Support RTC DS1307]] (horloge temps réel) pour Raspberry PI
 
* [[Rasp-Hack-Led-Backpack|Contrôleur LED (Led Backpack) pour afficheur 4x7 segments et matrice LED]]
 
* [[Rasp-Hack-Led-Backpack|Contrôleur LED (Led Backpack) pour afficheur 4x7 segments et matrice LED]]
 
* [[Rasp-Hack-MCP4725|MCP4725 Convertisseur Digital Analogique 12-Bit]]
 
* [[Rasp-Hack-MCP4725|MCP4725 Convertisseur Digital Analogique 12-Bit]]
Ligne 17 : Ligne 14 :  
* [[Rasp-Hack-BMP085|Mesure de pression avec le BMP085]]
 
* [[Rasp-Hack-BMP085|Mesure de pression avec le BMP085]]
   −
{{bloc-etroit|text=
+
{{ambox | text = Avec le temps, nous traduirons de plus en plus des tutoriels mentionnés ci-dessus... mais peut-être oublierons nous de remplacer les liens. N'hésitez pas a nous envoyer un petit mail (soyez précis svp) depuis le formulaire de contact  de www.mchobby.be ;-) }}
 +
 
 +
Le bus I2C permet de connecter plusieurs périphériques sur le Raspberry-Pi, chacun ayant une adresse unique (qui peut souvent être modifiée à l'aide de cavaliers présents sur la carte). Il est très utile de pouvoir voir les périphériques connectés sur le Pi (cela permet également d'être certain que tout fonctionne bien).
 +
 
 +
L'outil i2c-tools permet de faire cela! Il est cependant nécessaire de l'installer en utilisant les commandes suivantes:
 +
 
 +
<syntaxhighlight lang="bash">
 +
sudo apt-get install -y python-smbus
 +
sudo apt-get install -y i2c-tools
 +
</syntaxhighlight>
 +
 
 +
== Installer le support noyau (avec Raspi-Config) ==
 +
 
 +
Exécuter {{fname|sudo raspi-config}} et suivre les options suivantes pour installer le support i2c pour le coeur ARM et le noyau linux
 +
 
 +
Rendez-vous dans '''Interfacing Options''' (Options d'interface):
 +
 
 +
[[Fichier:Rasp-Hack-GPIO-Config-I2C-10.png|640px]]
 +
 
 +
Pour les plus anciennes versions de Raspi-Config, voyez sous l'entrée '''Advanced''' (Options avancées)
 +
 
 +
[[Fichier:Rasp-Hack-GPIO-Config-I2C-11.png|640px]]
 +
 
 +
Puis I2C
 +
 
 +
[[Fichier:Rasp-Hack-GPIO-Config-I2C-12.png|640px]]
 +
 
 +
Et activez le bus I2C (en répondant Yes / Oui).
 +
 
 +
[[Fichier:Rasp-Hack-GPIO-Config-I2C-13.png|640px]]
   −
{{ambox | text = Avec le temps, nous traduirons de plus en plus des tutoriels mentionnés ci-dessus... mais peut-être oublierons nous de remplacer les liens. N'hésitez pas a nous envoyer un petit mail (soyez précis svp) depuis le formulaire de contact  de www.mchobby.be ;-) }}
+
[[Fichier:Rasp-Hack-GPIO-Config-I2C-14.png|640px]]
   −
}}
+
Redémarrez votre Pi pour activer le bus I2C!
   −
Si vous utilisez Occidentalis, alors votre Pi est déjà prêt à supporter I2C (pour autant qu'il soit possible au programme d'accéder au broches matérielles).  
+
{{ambox|text=Nous recommandons également de survoler les étapes de la configuration manuelle. Cela permet de vérifier que Raspi-Config a bien amené les modifications nécessaires!}}
   −
Par contre, si vous utilisez Raspbian, vous aurez besoin d'ouvrir LX Terminal et d'encoder la commande suivante:
+
== Installer le support noyau (à la main) ==
 +
Si vous n'utilisez pas une version moderne de Raspbian ou si vous désirez réaliser une installation à la main, cela est possible! Ouvrez un LXTerminal ou une console ou une session ssh puis saisissez les commandes suivantes :
    
  <nowiki>sudo nano /etc/modules</nowiki>
 
  <nowiki>sudo nano /etc/modules</nowiki>
   −
et d'ajouter les deux lignes suivantes à la fin du fichier
+
Et ajoutez les deux lignes suivante à la fin du fichier :
   −
  <nowiki>i2c-bcm2708  
+
  <nowiki>i2c-bcm2708
 
i2c-dev</nowiki>
 
i2c-dev</nowiki>
   −
[[Fichier:Rasp-Hack-GPIO-I2CConfig-1.png|500px]]
+
Ce qui ressemble à ceci :
 +
 
 +
[[Fichier:Rasp-Hack-GPIO-Config-I2C-20.png|640px]]
 +
 
 +
Puis sauvez le fichier avec la combinaison de touche '''Contrôle-X Y''' puis la touche "retour clavier".
 +
 
 +
En fonction de la distribution, vous pourriez également avoir un fichier nommé '''/etc/modprobe.d/raspi-blacklist.conf'''
 +
 
 +
Il n'y a rien à faire si le fichier n'est pas présent. Par contre, s'il est présent, il sera nécessaire d'en éditer le contenu pour '''mettre les deux lignes suivantes en commentaire''' :
   −
Après la modification du fichier, vous devrez redémarrer (rebooter) votre Pi pour les modifications soient appliquées.
+
<nowiki>blacklist spi-bcm2708
 +
blacklist i2c-bcm2708</nowiki>
   −
Si vous avez des problèmes I2C avec votre Raspbian, il est préférable de passer à la toute dernière version. Les instructions ci-présentes ont été testées sur une "release" datée du 28/10/2012.
+
.. en plaçant un # en début de ligne.
   −
Le bus I2C permet à plusieurs périphériques d'être connecté sur votre Raspberry Pi, chacun avec une adresse unique. Cette adresse unique peut souvent être modifiée sur le module à l'aide de cavalier (ou de pontage à souder pour réaliser des connexions).
+
Ouvrir le fichier dans un éditeur en saisissant le commande suivante :
   −
Il est très utile de pouvoir visualiser les appareils qui sont connectés au Pi. C'est une façon bien pratique de s'assurer que tout fonctionne correctement.
+
<nowiki>sudo nano /etc/modprobe.d/raspi-blacklist.conf</nowiki>
   −
Pour effectuer cette tâche il faut installer des utilitaires I2C, il est préférable d'utiliser la commande suivante dans un terminal poutr les installer
+
.. puis modifier le fichier pour qu'il apparaisse comme sur la capture suivante.
   −
<nowiki>sudo apt-get install python-smbus
+
[[Fichier:Rasp-Hack-GPIO-Config-I2C-21.png|640px]]
sudo apt-get install i2c-tools</nowiki>
     −
Une fois qu'ils sont installer, vous pouvez taper la commande suivantes pour voir tous les périphériques connectés (si vous utilisez un Raspberry Pi Modèle B 512MB)
+
Pour finir, sauver le fichier en utilisant la combinaison de touche Contrôle-X et Y.
 +
 
 +
=== config.txt ===
 +
Si vous utilisez un Raspberry Pi avec un système d'exploitation récent (noyau 3.18 ou supérieur) il sera également nécessaire de modifier le fichier {{fname|/boot/config.txt}} . Editer le fichier à l'aide de la commande {{fname|sudo nano /boot/config.txt}} et ajouter le texte suivant en fin de fichier :
 +
 
 +
<nowiki>dtparam=i2c1=on
 +
dtparam=i2c_arm=on</nowiki>
 +
 
 +
Note il s'agit du chiffre "1" dans "i2c1" et non de la lettre "L" en minuscule!
 +
 
 +
[[Fichier:Rasp-Hack-GPIO-Config-I2C-22.png|640px]]
 +
 
 +
Redémarrer le Pi après la modification!
 +
 
 +
sudo reboot
 +
 
 +
== Tester I2C ==
 +
Une fois installé, vous pouvez saisir la commande suivante pour détecter tous les périphériques connectés sur le bus I2C.
    
  <nowiki>sudo i2cdetect -y 1</nowiki>
 
  <nowiki>sudo i2cdetect -y 1</nowiki>
Ligne 74 : Ligne 126 :  
== Brochage ==
 
== Brochage ==
   −
Voici le nom des broches I2C et leurs positions sur le GPIO. Les 26 premières broches étant identiques entre le modèle Pi B et Pi B+, le schéma ci-dessous s'applique donc aussi à votre Pi PLUS :-).  
+
Voici le nom des broches du bus I2C matériel et leurs positions sur le GPIO.  
 +
 
 +
Les 26 premières broches étant identiques entre le modèle Pi B et Pi B+, le schéma ci-dessous s'applique donc aussi à votre Pi PLUS :-).  
    
[[Fichier:RaspberryPi-GPIO-SPI.png]]
 
[[Fichier:RaspberryPi-GPIO-SPI.png]]
    
Elles sont:
 
Elles sont:
* SDA - Broche 3 - GPIO #x (Ligne de donnée du Bus I2C, ligne dite ''DATA'')  
+
* SDA - Broche 3 - GPIO #0 (Ligne de donnée du Bus I2C, ligne dite ''DATA'')  
* SCL - Broche 4 - GPIO #y (Ligne du signal d'horloge du BUS I2C, ligne dite ''CLOCK'' et son diminutif ''CL'' ou ''CLK'')
+
* SCL - Broche 4 - GPIO #1 (Ligne du signal d'horloge du BUS I2C, ligne dite ''CLOCK'' et son diminutif ''CL'' ou ''CLK'')
* MISO - Broche 21 - GPIO #9
      
{{Rasp-Hack-GPIO-TRAILER}}
 
{{Rasp-Hack-GPIO-TRAILER}}
29 917

modifications

Menu de navigation