SlideShare une entreprise Scribd logo
1  sur  16
Introduction aux
Bus I2C
Introduction aux Bus I2C
- Le Bus I2C est un bus de communication série
bidirectionnel facilitant l'échange de données entre
composants électroniques à petits et moyens débits.
- Il utilise deux fils : SDA (données) et SCL (horloge),
permettant la connexion de multiples périphériques à un
microcontrôleur, réduisant ainsi l'encombrement des circuits.
- Dans l'électronique, le Bus I2C est essentiel pour la
communication entre capteurs, modules et puces mémoire,
offrant une solution pratique et efficace pour synchroniser
les opérations.
Historique des Bus I2C
- Le Bus I2C a été créé en 1982 par Philips pour simplifier la
communication entre composants électroniques.
- Il a évolué pour supporter des vitesses plus élevées, plus
d'appareils connectés et est largement utilisé dans l'IoT.
- Aujourd'hui, l'I2C est un standard important pour la
connectivité des périphériques électroniques dans de
nombreux domaines.
Fonctionnement du Bus I2C
- Communication à deux fils, maître-esclave, avec adresse
unique par périphérique pour des échanges de données
efficaces et synchrones.
- Permet de connecter plusieurs périphériques à un
microcontrôleur, avec des vitesses de transmission
configurables pour chaque appareil.
- Protocole flexible supportant la communication
bidirectionnelle, l'horodatage des données et la détection
d'erreurs pour une fiabilité améliorée.
Avantages du Bus I2C
- Le Bus I2C permet la communication avec plusieurs
composants en utilisant seulement deux fils, ce qui réduit le
nombre de connexions physiques.
- Il offre une adresse unique pour chaque périphérique
connecté, facilitant la gestion et la configuration des
différents éléments du système.
- La vitesse de transmission du Bus I2C est modérée, idéale
pour des applications où la vitesse n'est pas critique.
Inconvénients du Bus I2C
- Vitesse limitée: Le Bus I2C fonctionne à des vitesses
relativement basses, ce qui peut limiter les performances de
transmission de données.
- Distance limitée: La longueur du câble est limitée en raison
de la capacité de charge des appareils connectés,
restreignant la portée du bus.
- Nombre d'appareils limité: Plus le nombre d'appareils
connectés augmente, plus la charge électrique totale peut
affecter la communication et la performance.
Exemples d'utilisation du Bus
I2C
- Contrôle de capteurs environnementaux comme la
température et l'humidité avec des microcontrôleurs Arduino
via le Bus I2C.
- Communication rapide entre une carte Raspberry Pi et un
écran OLED pour afficher des données en temps réel grâce
au Bus I2C.
- Intégration du Bus I2C dans des projets d'Internet des
objets (IoT) pour connecter divers capteurs et actionneurs à
un dispositif central.
Configuration du Bus I2C sur
Arduino
- Utilisez la bibliothèque Wire.h pour configurer le Bus I2C et
communiquer entre périphériques sur Arduino.
- Consultez les exemples fournis dans l'IDE Arduino pour
comprendre la mise en oeuvre de la communication I2C.
- Recherchez des tutoriels en ligne et des forums pour
résoudre les problèmes et approfondir votre compréhension
du Bus I2C.
Communication I2C Maître-
Esclave
- Le Maître initie et contrôle la communication, transmettant
des adresses aux Esclaves pour lire ou écrire des données.
- Les Esclaves écoutent les ordres du Maître et répondent
en fonction des adresses reçues, participant à l'échange de
données.
- Les signaux SDA et SCL du Bus I2C facilitent la
communication en permettant la transmission
bidirectionnelle des données entre les composants.
Exemple de Communication I2C
avec Arduino
- Connectez les pins SDA et SCL de l'Arduino aux mêmes
pins du périphérique, en utilisant des résistances de pull-up.
- Initialisez la communication I2C en spécifiant l'adresse du
périphérique et échangez des données en lecture et
écriture.
- Exemple : Utilisez la bibliothèque Wire.h sur Arduino pour
configurer la communication I2C et échanger des données
avec un capteur de température.
Gestion des Adresses I2C
- Utiliser des adresses uniques pour chaque périphérique
connecté afin d'éviter les conflits d'adressage sur le Bus I2C.
- Vérifier les adresses des périphériques existants avant
d'ajouter un nouveau composant pour éviter les doublons et
garantir la fiabilité de la communication.
- En cas de conflit, envisager l'utilisation de multiplexeurs
I2C ou de modifications matérielles pour résoudre les
problèmes d'adressage.
Protocole de Communication
I2C
- Le protocole I2C commence par un signal de démarrage,
suivi de l'adresse du périphérique et du type de transfert.
- La transmission des données se fait en octets, avec
l'émetteur et le récepteur confirmant chaque octet reçu.
- La communication se termine par un signal d'arrêt,
assurant la libération de la ligne de données pour d'autres
transferts.
Dépannage des Problèmes de
Communication I2C
- Vérifier les connexions physiques du bus I2C pour détecter
tout fil desserré ou court-circuit.
- Utiliser des outils de diagnostic comme des analyseurs
logiques pour identifier les problèmes de synchronisation.
- Assurer la bonne configuration des adresses des
périphériques et éviter les conflits d'adresses sur le bus.
Exemple de Projet Arduino avec
Bus I2C
- Matériel nécessaire : Arduino Uno, module I2C LCD,
capteurs (ex. température), câbles de connexion.
- Montage : Connecter le module I2C LCD et les capteurs à
l'Arduino Uno en utilisant le bus I2C (SDA, SCL).
- Code de programmation : Utiliser la bibliothèque Wire.h
pour communiquer avec les périphériques via le bus I2C et
afficher les données sur l'écran LCD.
Perspectives d'Évolution des
Bus I2C
- Augmentation potentielle de la vitesse de transmission
pour des applications plus gourmandes en données et des
transferts plus rapides.
- Amélioration de la capacité de charge pour permettre la
connexion de plus de périphériques sans compromettre la
performance du bus.
- Renforcement de la compatibilité avec d'autres protocoles
de communication pour faciliter l'interopérabilité avec divers
appareils et systèmes.
Conclusion sur les Bus I2C avec
Arduino
- Les Bus I2C offrent une solution efficace pour la
communication entre multiples périphériques, simplifiant le
câblage et économisant des broches sur Arduino.
- L'utilisation des Bus I2C permet une intégration
transparente de capteurs supplémentaires, augmentant les
fonctionnalités et la modularité des projets électroniques
avec Arduino.
- Comprendre et maîtriser les Bus I2C est essentiel pour
exploiter pleinement le potentiel d'Arduino et créer des
projets plus avancés et complexes.

Contenu connexe

Similaire à recherche master Introduction aux Bus I2C.pptx

Cablage structuré
Cablage structuréCablage structuré
Cablage structuréaziz rafa
 
Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs Abdelkader Moussidene
 
diaporama presentation arduino [Mode de compatibilité].pdf
diaporama presentation arduino [Mode de compatibilité].pdfdiaporama presentation arduino [Mode de compatibilité].pdf
diaporama presentation arduino [Mode de compatibilité].pdfnouraChaanoune1
 
éTude des techno de stockage
éTude des techno de stockageéTude des techno de stockage
éTude des techno de stockagekhech123
 
Sujet 2 - LES BUS
Sujet 2 - LES BUSSujet 2 - LES BUS
Sujet 2 - LES BUSRMwebsite
 
API: Utilisation de l'automate programmable Industruel
API: Utilisation de l'automate programmable IndustruelAPI: Utilisation de l'automate programmable Industruel
API: Utilisation de l'automate programmable IndustruelMohamed Amine Bahhane
 
121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheads121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheadscgodefroy
 
ADMINISTRATION SYST ME ET R SEAUX
ADMINISTRATION SYST ME ET R SEAUXADMINISTRATION SYST ME ET R SEAUX
ADMINISTRATION SYST ME ET R SEAUXMonica Waters
 
Arduino Algiers MeetUp
Arduino Algiers MeetUpArduino Algiers MeetUp
Arduino Algiers MeetUpLakhdar Meftah
 
Introduction à la plateforme arduino (nano, uno, ... )
Introduction à la plateforme arduino (nano, uno, ... )Introduction à la plateforme arduino (nano, uno, ... )
Introduction à la plateforme arduino (nano, uno, ... )Thierry Gayet
 
7177_reseaux-CH-11.pdf
7177_reseaux-CH-11.pdf7177_reseaux-CH-11.pdf
7177_reseaux-CH-11.pdfSouadZid
 

Similaire à recherche master Introduction aux Bus I2C.pptx (20)

Routing in 6lowpan (in French)
Routing in 6lowpan (in French) Routing in 6lowpan (in French)
Routing in 6lowpan (in French)
 
Cablage structuré
Cablage structuréCablage structuré
Cablage structuré
 
Présentation FINAM).pptx
Présentation FINAM).pptxPrésentation FINAM).pptx
Présentation FINAM).pptx
 
Présentation FINAM).pptx
Présentation FINAM).pptxPrésentation FINAM).pptx
Présentation FINAM).pptx
 
Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs Les réseaux capteurs / actionneurs
Les réseaux capteurs / actionneurs
 
Ccna1
Ccna1Ccna1
Ccna1
 
diaporama presentation arduino [Mode de compatibilité].pdf
diaporama presentation arduino [Mode de compatibilité].pdfdiaporama presentation arduino [Mode de compatibilité].pdf
diaporama presentation arduino [Mode de compatibilité].pdf
 
Info reseaux
Info reseaux Info reseaux
Info reseaux
 
éTude des techno de stockage
éTude des techno de stockageéTude des techno de stockage
éTude des techno de stockage
 
ccna1-3.pdf
ccna1-3.pdfccna1-3.pdf
ccna1-3.pdf
 
Sujet 2 - LES BUS
Sujet 2 - LES BUSSujet 2 - LES BUS
Sujet 2 - LES BUS
 
Présentation FINAM).pptx
Présentation FINAM).pptxPrésentation FINAM).pptx
Présentation FINAM).pptx
 
BCRI-CH4.pdf
BCRI-CH4.pdfBCRI-CH4.pdf
BCRI-CH4.pdf
 
API: Utilisation de l'automate programmable Industruel
API: Utilisation de l'automate programmable IndustruelAPI: Utilisation de l'automate programmable Industruel
API: Utilisation de l'automate programmable Industruel
 
121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheads121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheads
 
Cisco routing slm v40
Cisco routing slm v40Cisco routing slm v40
Cisco routing slm v40
 
ADMINISTRATION SYST ME ET R SEAUX
ADMINISTRATION SYST ME ET R SEAUXADMINISTRATION SYST ME ET R SEAUX
ADMINISTRATION SYST ME ET R SEAUX
 
Arduino Algiers MeetUp
Arduino Algiers MeetUpArduino Algiers MeetUp
Arduino Algiers MeetUp
 
Introduction à la plateforme arduino (nano, uno, ... )
Introduction à la plateforme arduino (nano, uno, ... )Introduction à la plateforme arduino (nano, uno, ... )
Introduction à la plateforme arduino (nano, uno, ... )
 
7177_reseaux-CH-11.pdf
7177_reseaux-CH-11.pdf7177_reseaux-CH-11.pdf
7177_reseaux-CH-11.pdf
 

recherche master Introduction aux Bus I2C.pptx

  • 2. Introduction aux Bus I2C - Le Bus I2C est un bus de communication série bidirectionnel facilitant l'échange de données entre composants électroniques à petits et moyens débits. - Il utilise deux fils : SDA (données) et SCL (horloge), permettant la connexion de multiples périphériques à un microcontrôleur, réduisant ainsi l'encombrement des circuits. - Dans l'électronique, le Bus I2C est essentiel pour la communication entre capteurs, modules et puces mémoire, offrant une solution pratique et efficace pour synchroniser les opérations.
  • 3. Historique des Bus I2C - Le Bus I2C a été créé en 1982 par Philips pour simplifier la communication entre composants électroniques. - Il a évolué pour supporter des vitesses plus élevées, plus d'appareils connectés et est largement utilisé dans l'IoT. - Aujourd'hui, l'I2C est un standard important pour la connectivité des périphériques électroniques dans de nombreux domaines.
  • 4. Fonctionnement du Bus I2C - Communication à deux fils, maître-esclave, avec adresse unique par périphérique pour des échanges de données efficaces et synchrones. - Permet de connecter plusieurs périphériques à un microcontrôleur, avec des vitesses de transmission configurables pour chaque appareil. - Protocole flexible supportant la communication bidirectionnelle, l'horodatage des données et la détection d'erreurs pour une fiabilité améliorée.
  • 5. Avantages du Bus I2C - Le Bus I2C permet la communication avec plusieurs composants en utilisant seulement deux fils, ce qui réduit le nombre de connexions physiques. - Il offre une adresse unique pour chaque périphérique connecté, facilitant la gestion et la configuration des différents éléments du système. - La vitesse de transmission du Bus I2C est modérée, idéale pour des applications où la vitesse n'est pas critique.
  • 6. Inconvénients du Bus I2C - Vitesse limitée: Le Bus I2C fonctionne à des vitesses relativement basses, ce qui peut limiter les performances de transmission de données. - Distance limitée: La longueur du câble est limitée en raison de la capacité de charge des appareils connectés, restreignant la portée du bus. - Nombre d'appareils limité: Plus le nombre d'appareils connectés augmente, plus la charge électrique totale peut affecter la communication et la performance.
  • 7. Exemples d'utilisation du Bus I2C - Contrôle de capteurs environnementaux comme la température et l'humidité avec des microcontrôleurs Arduino via le Bus I2C. - Communication rapide entre une carte Raspberry Pi et un écran OLED pour afficher des données en temps réel grâce au Bus I2C. - Intégration du Bus I2C dans des projets d'Internet des objets (IoT) pour connecter divers capteurs et actionneurs à un dispositif central.
  • 8. Configuration du Bus I2C sur Arduino - Utilisez la bibliothèque Wire.h pour configurer le Bus I2C et communiquer entre périphériques sur Arduino. - Consultez les exemples fournis dans l'IDE Arduino pour comprendre la mise en oeuvre de la communication I2C. - Recherchez des tutoriels en ligne et des forums pour résoudre les problèmes et approfondir votre compréhension du Bus I2C.
  • 9. Communication I2C Maître- Esclave - Le Maître initie et contrôle la communication, transmettant des adresses aux Esclaves pour lire ou écrire des données. - Les Esclaves écoutent les ordres du Maître et répondent en fonction des adresses reçues, participant à l'échange de données. - Les signaux SDA et SCL du Bus I2C facilitent la communication en permettant la transmission bidirectionnelle des données entre les composants.
  • 10. Exemple de Communication I2C avec Arduino - Connectez les pins SDA et SCL de l'Arduino aux mêmes pins du périphérique, en utilisant des résistances de pull-up. - Initialisez la communication I2C en spécifiant l'adresse du périphérique et échangez des données en lecture et écriture. - Exemple : Utilisez la bibliothèque Wire.h sur Arduino pour configurer la communication I2C et échanger des données avec un capteur de température.
  • 11. Gestion des Adresses I2C - Utiliser des adresses uniques pour chaque périphérique connecté afin d'éviter les conflits d'adressage sur le Bus I2C. - Vérifier les adresses des périphériques existants avant d'ajouter un nouveau composant pour éviter les doublons et garantir la fiabilité de la communication. - En cas de conflit, envisager l'utilisation de multiplexeurs I2C ou de modifications matérielles pour résoudre les problèmes d'adressage.
  • 12. Protocole de Communication I2C - Le protocole I2C commence par un signal de démarrage, suivi de l'adresse du périphérique et du type de transfert. - La transmission des données se fait en octets, avec l'émetteur et le récepteur confirmant chaque octet reçu. - La communication se termine par un signal d'arrêt, assurant la libération de la ligne de données pour d'autres transferts.
  • 13. Dépannage des Problèmes de Communication I2C - Vérifier les connexions physiques du bus I2C pour détecter tout fil desserré ou court-circuit. - Utiliser des outils de diagnostic comme des analyseurs logiques pour identifier les problèmes de synchronisation. - Assurer la bonne configuration des adresses des périphériques et éviter les conflits d'adresses sur le bus.
  • 14. Exemple de Projet Arduino avec Bus I2C - Matériel nécessaire : Arduino Uno, module I2C LCD, capteurs (ex. température), câbles de connexion. - Montage : Connecter le module I2C LCD et les capteurs à l'Arduino Uno en utilisant le bus I2C (SDA, SCL). - Code de programmation : Utiliser la bibliothèque Wire.h pour communiquer avec les périphériques via le bus I2C et afficher les données sur l'écran LCD.
  • 15. Perspectives d'Évolution des Bus I2C - Augmentation potentielle de la vitesse de transmission pour des applications plus gourmandes en données et des transferts plus rapides. - Amélioration de la capacité de charge pour permettre la connexion de plus de périphériques sans compromettre la performance du bus. - Renforcement de la compatibilité avec d'autres protocoles de communication pour faciliter l'interopérabilité avec divers appareils et systèmes.
  • 16. Conclusion sur les Bus I2C avec Arduino - Les Bus I2C offrent une solution efficace pour la communication entre multiples périphériques, simplifiant le câblage et économisant des broches sur Arduino. - L'utilisation des Bus I2C permet une intégration transparente de capteurs supplémentaires, augmentant les fonctionnalités et la modularité des projets électroniques avec Arduino. - Comprendre et maîtriser les Bus I2C est essentiel pour exploiter pleinement le potentiel d'Arduino et créer des projets plus avancés et complexes.