Modifications

Sauter à la navigation Sauter à la recherche
585 octets ajoutés ,  5 mars 2017 à 12:34
Ligne 2 : Ligne 2 :     
== Introduction ==
 
== Introduction ==
{{bloc-etroit|text=Si vous avez eu l'occasion de lire nos autre tutoriel I2C pour '''Arduino''' et '''Raspberry''', vous vous êtes certainement rendu compte que vous êtes face à une technologie à la fois simple et puissante.
+
{{bloc-etroit|text=Si vous avez eu l'occasion de lire nos autres tutoriels I2C pour '''Arduino''' et '''Raspberry''', vous vous êtes certainement rendu compte que vous êtes face à une technologie à la fois simple et puissante.
   −
Comme toutes les technologies, il y a parfois quelques limites qui sont, de temps à autre, contournable.
+
Comme toutes les technologies, il y a parfois quelques limites technique qui peuvent, de temps à autre, être contournées.
   −
Le but de cet article est d'en rassembler quelques hacks assez simple mais terriblement efficaces :-)  
+
Le but de cet article est de rassembler quelques hacks assez simple mais terriblement efficaces :-)  
   −
Ces hacks sont très facile à mettre en oeuvre avec Arduino... peut être un peu mois aisé a faire fonctionner avec Raspberry (dans le cas du Pi, c'est l'OS qui décide quand il faut communiquer sur le BUS I2C... pas votre code).}}
+
Ces hacks sont très facile à mettre en oeuvre avec Arduino... peut être un peu moins aisé a faire fonctionner avec Raspberry car, pour ce dernier, c'est l'OS qui décide quand il faut communiquer sur le BUS I2C... pas votre code).}}
    
== En savoir plus sur I2C ==
 
== En savoir plus sur I2C ==
Ligne 29 : Ligne 29 :  
   |img=tlogo-P82B715PN.jpg
 
   |img=tlogo-P82B715PN.jpg
 
   |link=P82B715PN: I2C Bus Extender
 
   |link=P82B715PN: I2C Bus Extender
 +
}}
 +
 +
{{ttuto
 +
  |label=SjtBits I2C Extender
 +
  |descr=Comment étendre un bus I2C avec une ligne différentielle! Sa mise en oeuvre avec un '''I2C Extender de SJTBits'''
 +
  |img=tlogo-JSTBITS-I2C.jpg
 +
  |link=SjtBits I2C Bus Extender
 
}}
 
}}
   Ligne 40 : Ligne 47 :  
{{ttuto-end}}
 
{{ttuto-end}}
   −
== Le cas du BMP085 ==
+
== Ressources ==
{{ambox|text=A mettre dans un article différent}}
+
Voici quelques références glanées ici et là sur le Net.
 
  −
Sur un bus I2C, chaque périphérique doit avoir sa propre adresse, adresse qui doit être unique sur le bus.
     −
Dans le cas du BMP, vous ne pouvez donc avoir qu'un seule périphérique à l'adresse 0x77 (etc.). Comme ce composant ne dispose pas de broches permettant de modifier son adresse, il ne peut normalement y avoir qu'un seul BMP sur le bus I2C :-/
+
* [http://letsmakerobots.com/blog/unixguru/running-both-5v-and-33v-devices-i2c Running 3.3v and 5v I2C peripherals on the same I2C bus] (''letsmakerobots.com, anglais'')
 +
* [http://www.gammon.com.au/i2c I2C - Two-Wire Peripheral Interface - for Arduino] ('''http://www.gammon.com.au, anglais''')
 +
** Une '''ressource chaudement recommandée''' avec des recherches détaillées sur les signaux, ACK et NAK
 +
** Etude sur les résistances pull-up présentes sur le bus (voir plus bas dans les messages)
 +
** Utilisation d'une EEProm I2C
 +
** I2C Scanner pour Arduino (en fin de billet).
 +
* [http://www.esacademy.com/en/library/technical-articles-and-documents/miscellaneous/i2c-bus/frequently-asked-questions/i2c-faq.html IC2 FAQ] (''esacademy.com, anglais'')<br />Propose des réponses aussi intéressantes que:
 +
** I'd like to extend the I2C bus. Is there something like a repeater for I2C?+**
 +
** Can I do galvanic decoupling of my I2C bus?
 +
** Are there stand-alone I2C controllers?
 +
** How can I generate a repeated start condition?
 +
** Can I abort an ongoing I2C bus transmission?
 +
** Do I need to generate an ACK in read mode on the last byte?
 +
** How can I monitor the I2C bus?
 +
** ...
   −
=== Le BMP085 ===
  −
'''SAUF QUE''' le BMP085 dispose aussi d'une broche RESET qui permet de le désactive! En fin de compte, il est possible d'avoir plusieurs BMP à l'adresse 0x77 sur le même bus I2C. Il faut seulement veiller à activer le RESET (broche XCLR=Reset à LOW) pour tous les périphériques BMP à l'exception de celui avec lequel nous voulons dialoguer (broches XCLR = HIGH pour désactiver le Reset). Le périphérique I2C qui ne sera pas en Reset répondra sur le bus I2C.
      
{{I2C-Hacking-TRAILER}}
 
{{I2C-Hacking-TRAILER}}
29 837

modifications

Menu de navigation