Comment utiliser l'expanseur d'E / S PCF8575 avec Arduino

How to Use the PCF8575 I/O Expander with Arduino

Le PCF8575 est un expanseur d'E / S 16 bits qui communique avec un microcontrôleur via l'interface I2C. Il vous permet d'étendre le nombre d'épingles d'entrée / sortie sur votre Arduino, ce qui le rend parfait pour les projets nécessitant de nombreux capteurs, boutons ou LED. Ce tutoriel vous guidera dans la connexion et l'utilisation du PCF8575 avec Arduino.


Ce dont vous aurez besoin

  1. PCF8575 Module d'expanneur d'E / S
  2. Board Arduino (par exemple, Uno, Mega, Nano)
  3. Capteurs, boutons ou LED pour les tests
  4. Fils de planche à pain et de cavalier
  5. Un ordinateur avec l'ide Arduino installé

Étape 1: Comprendre le module PCF8575

Le PCF8575 fournit 16 broches GPIO supplémentaires qui peuvent être configurées en entrées ou sorties. Il communique via le protocole I2C et dispose d'une adresse I2C réglable pour connecter plusieurs modules au même bus.

Brochage

Épingle Fonction
VCC Alimentation (3,3 V / 5V)
GND Sol
SDA Ligne de données I2C
SCL Ligne d'horloge i2c
P0-P15 Broches d'E / S à usage général

Configuration d'adresse I2C

  • L'adresse I2C est déterminée par les broches A0, A1 et A2:
    • Toutes les broches à GND: 0x20 (adresse par défaut)
    • Toutes les broches à VCC: 0x27

Étape 2: Câblage du PCF8575 à Arduino

Voici comment connecter le PCF8575 à un Arduino:

PIN PCF8575 Épingle arduino
VCC 5V
GND GND
SDA A4 (SDA)
SCL A5 (SCL)

Connectez vos périphériques (par exemple, LED ou boutons) aux broches P0-P15.

Note: Pour d'autres cartes Arduino, assurez-vous d'utiliser les broches I2C correctes.


Étape 3: Installez la bibliothèque requise

Pour simplifier le travail avec le PCF8575, installez la bibliothèque "PCF8575".

Étapes à installer:

  1. Ouvrez l'ide Arduino.
  2. Aller à Esquisser > Inclure la bibliothèque > Gérer les bibliothèques.
  3. Recherchez "PCF8575" et cliquez Installer.

Étape 4: Téléchargez le code

Exemple: contrôler les LED

Ce code montre comment activer et désactiver les LED à l'aide du PCF8575:

#include <Wire.h>
#include <PCF8575.h>

PCF8575 pcf8575(0x20); // Initialize with the default I2C address

void setup() {
  Serial.begin(9600);

  // Set all pins as outputs
  for (int i = 0; i < 16; i++) {
    pcf8575.pinMode(i, OUTPUT);
  }

  Serial.println("PCF8575 initialized.");
}

void loop() {
  // Turn all LEDs on
  for (int i = 0; i < 16; i++) {
    pcf8575.digitalWrite(i, HIGH);
  }
  delay(1000);

  // Turn all LEDs off
  for (int i = 0; i < 16; i++) {
    pcf8575.digitalWrite(i, LOW);
  }
  delay(1000);
}

Exemple: boutons de lecture

Ce code montre comment lire l'entrée des boutons connectés au PCF8575:

#include <Wire.h>
#include <PCF8575.h>

PCF8575 pcf8575(0x20); // Initialize with the default I2C address

void setup() {
  Serial.begin(9600);

  // Set all pins as inputs
  for (int i = 0; i < 16; i++) {
    pcf8575.pinMode(i, INPUT);
  }

  Serial.println("PCF8575 initialized.");
}

void loop() {
  for (int i = 0; i < 16; i++) {
    int state = pcf8575.digitalRead(i);
    Serial.print("Pin ");
    Serial.print(i);
    Serial.print(": ");
    Serial.println(state);
  }
  delay(500);
}

Étape 5: tester la configuration

  1. Connectez l'Arduino à votre ordinateur via USB.
  2. Ouvrez l'ide Arduino et sélectionnez le bon Conseil et Port sous Outils menu.
  3. Téléchargez le code sur l'Arduino en cliquant Télécharger.
  4. Pour l'exemple LED, observez les LED allumées et désactivées. Pour l'exemple du bouton, les états du bouton du moniteur dans le moniteur série.

Applications du PCF8575

  1. Expansion des broches GPIO pour les projets Arduino
  2. Construire des matrices LED complexes
  3. Lire plusieurs capteurs ou réseaux de bouton
  4. Contrôler les relais et les actionneurs

Dépannage

  • Aucune réponse du module: Vérifiez les connexions I2C et la configuration d'adresse.
  • Lectures incohérentes: Assurez-vous une alimentation stable et des résistances de traction appropriées pour les lignes I2C.
  • Comportement incorrect de la broche: Modes de broche à double recouvrement (entrée / sortie) dans le code.

Conclusion

Vous avez réussi à interfacer l'expanseur d'E / S PCF8575 avec Arduino, vous permettant de contrôler ou de lire à partir de 16 broches GPIO supplémentaires. Expérimentez avec différents périphériques et développez vos projets avec ce module polyvalent!

Laissez un commentaire

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.