Table des matières:
- Étape 1: Options existantes
- Étape 2: DDC est I2C
- Étape 3: disséquer le câble
- Étape 4: L'adaptateur terminé
- Étape 5: Logiciels et projets
Vidéo: Adaptateur I2C (I-Squared-C) le moins cher au monde : 5 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:10
Créez une interface de capteur pour votre ordinateur pour moins d'un dollar ! Mise à jour 6/9/08: Après avoir exploré plusieurs pistes, j'ai conclu qu'il n'y avait aucun moyen pratique d'implémenter cette technique dans Microsoft Windows. Ce n'est pas un petit dénigrement du système d'exploitation, j'ai vraiment crevé un écrou en essayant ! Désolé! Les utilisateurs Windows ayant besoin de capacités I2C sont mieux servis par les solutions USB existantes. Consultez le fichier README.txt inclus avec le code source pour obtenir des instructions sur la compilation et la configuration sur Linux. I2C (abréviation de Inter-Integrated Circuit) est un bus série à deux fils généralement utilisé dans les ordinateurs pour la communication de bas niveau entre les composants internes. I2C est également populaire en robotique. Toutes sortes de capteurs et d'actionneurs sont disponibles sous une forme compatible I2C: télémètres à ultrasons, capteurs d'accélération, d'inclinaison, de température et de pression, servo-contrôleurs et extensions de bus qui fournissent des lignes supplémentaires à usage général (GPIO). La plupart des microcontrôleurs modernes (Atmel, Microchip PIC, etc.) prennent en charge I2C directement. Mais la puissance de traitement disponible sur les microcontrôleurs est limitée et le développement de logiciels - avec des compilateurs croisés et des environnements de programmation spécialisés - peut parfois être une corvée. Les ordinateurs portables et les ordinateurs monocarte devenant de plus en plus petits et abordables, il est de plus en plus courant de voir ces systèmes utilisés directement dans des projets de robotique et d'électronique. Cela fournit une puissance suffisante pour de nouvelles capacités telles que le traitement de la vision et une IA plus sophistiquée, et cela élargit considérablement la portée des outils de développement et des langages disponibles… mais cela présente également un nouveau problème: l'interfaçage de ces systèmes « réguliers » avec les périphériques se fait généralement via le grand public. des ports grand public tels que l'USB; il n'y a pas de "port I2C" disponible en externe sur lequel nous pouvons simplement puiser pour utiliser nos capteurs… ou existe-t-il ?
Étape 1: Options existantes
Une façon de connecter des périphériques I2C à un ordinateur de bureau ou portable ordinaire consiste à utiliser un adaptateur USB vers I2C. Il existe au moins une douzaine d'options de ce type, allant des kits de bricolage avec des logiciels open source aux unités commerciales sophistiquées avec chaque cloche et sifflet.
L'un des inconvénients de l'approche USB vers I2C est le coût. Un modèle commercial complet peut coûter 250 $ ou plus. Même les alternatives "gratuites" à l'homebrew supposent une collection de pièces et un investissement préalable dans un programmeur de microcontrôleur et les connaissances associées pour l'utiliser. Un autre inconvénient est la rareté relative de la prise en charge des pilotes en dehors du giron populaire de Windows. Peu de ces appareils fonctionnent nativement sur les ordinateurs Macintosh ou Linux.
Étape 2: DDC est I2C
Quand j'ai dit dans l'introduction qu'il n'y avait pas de port I2C externe sur la plupart des ordinateurs, j'ai menti. Il s'avère qu'il existe, et il est là depuis près d'une décennie maintenant, la plupart du temps en sommeil.
La plupart des cartes graphiques et des moniteurs modernes prennent en charge quelque chose appelé Display Data Channel (DDC), une liaison de communication dans un câble vidéo qui permet à l'ordinateur et à l'écran de négocier des résolutions mutuellement compatibles et de permettre le contrôle logiciel des fonctions du moniteur normalement accessibles avec des boutons physiques sur le affichage. DDC est, en fait, simplement une implémentation d'un bus I2C avec quelques règles établies. En exploitant cette connexion entre l'ordinateur et le moniteur (ou en utilisant les lignes DDC sur un port vidéo inutilisé disponible, comme la connexion du moniteur externe sur un ordinateur portable), on peut s'interfacer avec certains périphériques I2C pratiquement sans frais, en contournant le besoin habituel d'un appareil adaptateur entièrement. Tout ce dont nous avons besoin pour accéder physiquement à ce bus I2C est un câble vidéo piraté…
Étape 3: disséquer le câble
Quatre fils sont nécessaires pour notre interface I2C: alimentation +5V, masse, données série et horloge série. Les brochages des différents types de ports vidéo peuvent être trouvés sur Wikipedia ou Pinouts.ru. N'oubliez pas si vous utilisez un câble VGA pour en trouver un avec l'ensemble complet de broches; certains n'incluent qu'un sous-ensemble. En coupant l'isolation et le blindage de l'extérieur du câble, vous trouverez probablement deux groupes de fils à l'intérieur. Des fils plus épais, ou des faisceaux de fils enveloppés dans un blindage supplémentaire, transportent généralement le signal vidéo. Ceux-ci ne nous intéressent pas et ils peuvent être rognés. Des fils plus fins et non blindés transportent généralement les signaux DDC (I2C) entre autres. Un multimètre ou un testeur de continuité peut vous aider à trouver les quatre fils corrects pour votre câble. L'utilisation d'un connecteur nu peut être ici avantageuse, car il suffit de souder quatre fils aux broches d'intérêt. Une note sur l'alimentation +5V: le courant disponible est très limité; environ 50 mA selon la spécification DDC. La plupart des appareils I2C ne consomment qu'un tout petit peu de courant, il devrait donc être possible d'en exécuter plusieurs à la fois… mais si vous utilisez plus d'une ou deux LED (ou d'autres appareils à courant relativement élevé), une alimentation externe doit être fournie.
Étape 4: L'adaptateur terminé
Voici l'adaptateur terminé. C'est tout ce qu'on peut en dire! J'ai fait le mien très tronqué pour qu'il puisse tenir facilement dans mon sac d'ordinateur portable, et j'ai ajouté une prise à quatre broches qui se connecte directement à un servocontrôleur I2C que j'ai.
Étape 5: Logiciels et projets
Le code source Mac OS X et Linux pour travailler avec l'adaptateur peut être téléchargé à partir de mon site Web (le lien de téléchargement se trouve en bas de la page). Il est écrit en C et vous aurez besoin d'avoir installé gcc (Linux l'inclut généralement par défaut, tandis que les utilisateurs de Mac devront installer les outils de développement qui sont un programme d'installation facultatif sur votre disque OS d'origine, ou téléchargeables gratuitement depuis Apple). Un exemple de code est inclus pour lire un capteur de température, faire clignoter une « LED intelligente » BlinkM, écrire et vérifier une EEPROM série, lire un contrôleur Nintento Wii Nunchuk (Linux uniquement) et communiquer avec une carte de servocontrôleur. Malheureusement, ce schéma d'adaptateur n'est pas compatible avec tous les systèmes. La prise en charge de DDC n'est pas obligatoire, donc toutes les cartes vidéo ne prennent pas en charge cette capacité. J'ai eu de la chance jusqu'à présent avec les systèmes Mac dotés de puces graphiques ATI ou Intel, mais les systèmes basés sur NVIDIA n'ont pas de chance. Du côté de Linux, je n'ai testé avec succès qu'un IBM ThinkPad A31p (graphique ATI), mais cela ne fonctionnerait pas avec un Asus EeePC (Intel). Les images ici montrent un banc d'essai qui montre divers périphériques I2C en action. L'ordinateur lit en permanence la température ambiante à partir d'un capteur de température I2C, enregistre périodiquement ces données sur une puce EEPROM série I2C (oui, il pourrait simplement imprimer dans un fichier, mais c'était pour démontrer davantage les applications I2C), puis un servo (à travers un contrôleur I2C) sert de cadran indicateur de fortune. Avec la bibliothèque et l'exemple de code pour ces appareils déjà en place, il n'a fallu que quelques minutes pour mettre en place cette démo (et la majeure partie de cela consistait à fabriquer le cadran indicateur).
Conseillé:
Un bouclier WiFi ESP8266 moins cher pour Arduino et autres micros : 6 étapes (avec photos)
Un bouclier WiFi ESP8266 moins cher pour Arduino et autres micros : mise à jour : 29 octobre 2020Testé avec la bibliothèque de cartes ESP8266 V2.7.4 - travaux Mise à jour : 23 septembre 2016Ne pas utiliser la bibliothèque de cartes Arduino ESP V2.3.0 pour ce projet. V2.2.0 fonctionneMise à jour : 19 mai 2016 Rev 14 de ce projet révise les bibliothèques et le code pour fonctionner avec
Arduino personnalisé (MakeyMakey moins cher): 5 étapes (avec photos)
Arduino personnalisé (Cheaper MakeyMakey): Salut - j'ai 14 ans (du moins j'étais quand j'ai écrit ce Instructable) et j'ai construit ce projet pour un professeur d'une université locale, ainsi que pour ma grand-mère, qui travaille avec des enfants avec un handicap.Si vous aimez ce Instructable ou soutenez la cause
LE MOINS CHER DE L'INTERNET MOTORISE, ENTRAÎNÉ PAR COURROIE, 48" DIY CAMERA SLIDER : 12 étapes (avec photos)
LE MOINS CHER MOTORISE, ENTRAÎNÉ PAR COURROIE, 48" DIY CAMERA SLIDER: L'impression parallaxe présente une solution peu coûteuse pour la photographie de parallaxe motorisée. Remarque: ce guide date de plusieurs années et depuis sa rédaction, la fabrication de diapositives Opteka a modifié la conception de la plate-forme en enlevant le cor
Solid Steadicam / Steadycam en dessous de 20 $ GoPro, Dslr, Vdslr le moins cher et le meilleur Steadicam sur Instructables: 8 étapes (avec photos)
Steadicam solide / Steadycam en dessous de 20 $ GoPro, Dslr, Vdslr le moins cher et le meilleur Steadicam sur Instructables: Pour construire un besoin de steadicam1. Pièce de tôle plate d'une longueur de 1 m et d'une largeur de 30 mm.2. Poignée de perceuse3. Clé à douille 3/8 pouce4. Rondelle Vis 28mm - 13 pcs5. Roulement à billes, largeur intérieure 12 mm6. Tapis de liège7. Bouton avec vis M68. Cardan
Arduino le moins cher -- Le plus petit Arduino -- Arduino Pro Mini -- Programmation -- Arduino Neno : 6 étapes (avec photos)
Arduino le moins cher || Le plus petit Arduino || Arduino Pro Mini || Programmation || Arduino Neno :……………………………. Veuillez vous abonner à ma chaîne YouTube pour plus de vidéos……. .Ce projet concerne la façon d'interfacer un arduino le plus petit et le moins cher de tous les temps. L'arduino le plus petit et le moins cher est l'arduino pro mini. C'est similaire à l'arduino