[Numérique] Piloter par SPI un extendeur I/O MCP23S17
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Piloter par SPI un extendeur I/O MCP23S17



  1. #1
    electro575

    Piloter par SPI un extendeur I/O MCP23S17


    ------

    Bonjour à tous,

    Dans le cadre d'une mission en entreprise je dois piloter un MCP23S17.

    En voici la doc technique : http://www.microchip.com/wwwproducts/en/MCP23S17

    Mon controleur SPI de 24 bit (à changer si besoin) est code en VHDL.

    Mon seul souci est que dans la doc ils décrivent le protocole I2C (p7/48) mais pas celui-ci du SPI. A priori je peux me calquer sur le protocole de l'I2C. Dans mes souvenirs, l'I2C est identique au SPI sauf que l'I2C ne peux pas gérer plusieurs composants à la fois.

    Par manque de temps, je n'ai pas fais le tour des différents registres à configure du MCP23S17, quelqu'un saurait ce qu'il en retourne ?

    En vous remerciant sincèrement.

    Très bonne après-midi à tous.

    -----

  2. #2
    vincent66

    Re : Piloter par SPI un extendeur I/O MCP23S17

    Bonjour,

    Il me semble que le spi est bien documenté à partir de la page 15...
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  3. #3
    electro575

    Re : Piloter par SPI un extendeur I/O MCP23S17

    Oui d'accord, tout depend quell doc on prend, tu es bien sur celle que j'ai donné?

    Page 15 et la suite parle de registre, pas de spi.

  4. #4
    SportsEngine

    Re : Piloter par SPI un extendeur I/O MCP23S17

    Bonjour,
    Dans mes souvenirs, l'I2C est identique au SPI sauf que l'I2C ne peux pas gérer plusieurs composants à la fois.
    Pas tout à fait, l'I²C peut gérer plusieurs composants dans la mesure où il n'y a qu'un maître (le multi-maître est peut être possible mais nécessite une gestion supplémentaire pour éviter les conflits) et plusieurs esclaves avec des adresses différentes
    La vraie différence entre l'I²C et le SPI est que l'I²C ne nécessite que 2 fils SCL et SDA pour une communication bidirectionnelle avec un certain nombre de périphérique.
    Le SPI nécessite au moins 3 fils (SCK, MISO, MOSI). En plus de ces 3 fils, il y a généralement besoin d'un adressage externe avec la broche Chip Select (pas d'adressage logiciel). Donc à chaque composant supplémentaire tu ajoutes une broche supplémentaire...

    Le MCP23S17 est assez simple à configurer, la plupart des uC avec lesquels je travaille ne gère que des mots de 8 bits pour le SPI.
    Je n'ai pas de code sous la main, mais il me semble que j'avais eu un soucis avec cette petite bête, et que pour communiquer avec lui il fallait inverser l'octet de poids fort et l'octet de poids faible (pas inverser les bits 1 à 1, seulement les octets). C'est valable autant pour l'écriture des registres que pour lire la valeur qu'il te retourne.

    Je n'en suis pas certain mais c'est à vérifier.

    Mise à part ça il est assez facile de configurer les pins en entrée, sortie, open drain, avec pullup... Le seul point négatif qui m'a fait perdre du temps, c'est qu'on ne peut à priori pas mapper les 2 interruptions sur une seule broche... En gros si tu veux recevoir des interruptions du port A et du port B, tu es obligé de relier les deux pins INTA et INTB sur ton contrôleur...

  5. A voir en vidéo sur Futura

Discussions similaires

  1. piloter pwm en tension
    Par speedi57 dans le forum Électronique
    Réponses: 8
    Dernier message: 30/07/2014, 17h31
  2. MCP23S17 - I/O port expander -> Driver SPI
    Par jorg1n dans le forum Électronique
    Réponses: 8
    Dernier message: 08/08/2011, 16h32
  3. Piloter LCD
    Par invite8fe13b0e dans le forum Électronique
    Réponses: 1
    Dernier message: 30/11/2009, 12h30
  4. [PIC]-Integration d'un 16bit I/O Expander - MCP23S17 (SPI)
    Par jorg1n dans le forum Électronique
    Réponses: 6
    Dernier message: 30/10/2009, 07h25
  5. Extendeur/Prolongateur HDMI
    Par invitec334fbb0 dans le forum Électronique
    Réponses: 0
    Dernier message: 06/04/2009, 13h26
Découvrez nos comparatifs produits sur l'informatique et les technologies.