Le zoo des connecteurs : les écosystèmes I2C
I2C est une merveilleuse interface. Avec quatre fils et seulement deux GPIO, vous pouvez connecter de nombreux capteurs et appareils – en parallèle, en plus ! Vous verrez I2C utilisé pratiquement partout, dans chaque téléphone, ordinateur portable, ordinateur de bureau et tout appareil contenant plus de quelques circuits intégrés – et la plupart des microcontrôleurs intègrent la prise en charge I2C dans leur matériel. En conséquence, il existe une myriade d’appareils intéressants et utiles avec lesquels vous pouvez utiliser I2C. Parfois, les entreprises en contact avec les fabricants créent des interfaces plug-and-play pour les composants I2C qu'elles produisent, avec des brochages et des connecteurs standardisés.
Suivre un brochage standard est bien mieux que d'inventer le vôtre, et votre expérience avec des brochages d'en-tête de broche incohérents sur les modules I2C génériques en provenance de Chine le reflétera sûrement. Ne serait-il pas merveilleux si vous pouviez simplement brancher un seul connecteur porteur I2C sur un connecteur MPU9050, MLX90614 ou HMC5883L que vous avez acheté pour quelques dollars, par opposition à l'obstacle habituel consistant à regarder la sérigraphie du module et à y souder des broches. et en disposant soigneusement les connecteurs femelles sur les bonnes broches ?
Comme pour toute norme, lorsqu'il s'agit de conventions I2C sur connecteur, vous devineriez à juste titre qu'il y en a plusieurs, et elles ont toutes leurs avantages et leurs inconvénients. Il n'y en a pas quinze, mais il y en a certainement six et demi ! Ils sont pour la plupart intercompatibles, et leur utilisation signifie que vous pouvez accéder facilement à certains périphériques assez puissants. Commençons par les deux écosystèmes qui ne présentent que des différences mineures, et que vous rencontrerez le plus !
Il existe deux écosystèmes de modules I2C basés sur des connecteurs JST-SH à quatre broches (pas de 1 mm), et ils sont très interchangeables ! L'un d'eux est le QWIIC de Sparkfun, et l'autre est le STEMMA QT d'Adafruit (prononcé « mignon »). Les deux sont simples à ajouter à votre PCB, à condition que vous disposiez de quelques connecteurs JST-SH à quatre broches. De plus, les connecteurs Adafruit et Sparkfun ont le même brochage !
Les connecteurs utilisés sont des JST-SH, à montage en surface, avec un pas de 1 mm. Leur famille JST est SR/SH et le numéro de pièce de la pièce JST d'origine est SM04B-SRSS-TB, mais vous pouvez trouver des connecteurs tiers bon marché avec les mêmes dimensions sur LCSC en utilisant les termes de recherche « 1x4P SH 1 mm ». QWIIC et STEMMA ont tous deux des pages auxquelles se référer lorsque vous réalisez vos propres conceptions. Maintenant, quelles sont les différences entre les deux ?
QWIIC se limite à 3,3 V du côté de l'hôte (c'est-à-dire la carte MCU, fournissant l'énergie) et du côté de l'appareil (c'est-à-dire le capteur, consommant de l'énergie) – une décision raisonnable, simplifiant beaucoup les choses. Une écrasante majorité des appareils avec lesquels nous travaillons aujourd’hui fonctionnent en 3,3 V, à tel point que les problèmes de changement de niveau sont pour la plupart inconnus. Peut-être que le passage éventuel à 1,8 V bouleversera cela, mais nous n'en sommes pas encore là, et des facteurs tels que les tensions directes des LED nécessiteront de toute façon une sorte de référence supérieure à 1,8 V dans notre projet lorsque nous y arriverons. Donc, une alimentation de 3,3 V et deux signaux I2C de niveau logique de 3,3 V sur un seul connecteur – clair et simple. Il y a de fortes chances que vous puissiez déjà ajouter QWIIC à votre capteur ou à votre carte MCU – sans aucun composant supplémentaire requis à part le connecteur lui-même !
En revanche, STEMMA QT est conçu pour étendre la valeur éducative et pratique possible, conformément aux autres offres d'Adafruit. En tant que tel, il autorise des hôtes 5 V – avec des appareils conçus pour fonctionner dans la plage de niveaux de puissance et de logique 3,3 V-5 V, garantissant ainsi que votre Arduino Uno n'est pas laissé de côté. Cela est possible car chaque module dispose d'un régulateur de tension à faible chute comme l'AP2112K ou le MIC5219, qui permet de maintenir les choses à près de 3,3 V lorsque vous alimentez la carte avec 3,3 V. Le raisonnement est simple – à part des hôtes 5 V comme Arduino Uno. , vous souhaiterez peut-être également chaîner vos appareils STEMMA avec certains appareils gourmands en énergie, comme des servos compatibles I2C ou des bandes RVB. En bref, brancher n'importe quoi sur n'importe quoi, avec n'importe quel type de chaîne, ne devrait pas entraîner l'échappement de fumée magique – un événement rarement sur la liste TODO d'un projet de créateur. Un autre avantage de STEMMA QT est la standardisation des tailles de carte de périphérique, vous permettant d'intégrer facilement mécaniquement de nouveaux capteurs dans le projet avant même qu'ils n'arrivent à vous, et de générer des hacks astucieux comme ce socket hotswap imprimable en 3D STEMMA Qt !