Le bus SPI interne : le dialogue entre le microcontrôleur et ses périphériques
Dans le boîtier, le microcontrôleur est rarement seul. Il commande une puce d'alimentation, des drivers de puissance, des interfaces de capteurs, parfois un convertisseur externe ou la configuration d'un émetteur CAN. Tous parlent sur une même conversation courte, rapide, à quatre fils : le SPI. C'est le dialogue intérieur du calculateur.
Quatre fils, une horloge maîtresse
- Le SPI est un bus série synchrone. Le maître, le microcontrôleur, fournit l'horloge (SCLK) ; chaque bit se déplace sur un front d'horloge, sans devinette de débit.
- MOSI porte les données du maître vers le périphérique, MISO les ramène. C'est du full duplex : les deux sens sur la même horloge, en même temps.
- Une ligne de sélection (chip select, CS) désigne qui écoute. Un CS par périphérique, ou une chaîne où la trame se décale à travers tous.
Maître et esclaves
- Le microcontrôleur est toujours maître ; la puce d'alimentation, les interrupteurs intelligents, les interfaces de capteurs sont esclaves. Le maître ouvre chaque échange — un esclave ne parle jamais sans qu'on le lui demande.
- Le watchdog du System Basis Chip est très souvent servi par ce même bus : le microcontrôleur répond à la question du watchdog par le SPI.
- D'où le danger d'un bus SPI figé : le perdre, c'est ne plus pouvoir nourrir le watchdog, qui réinitialise alors tout le calculateur.
Quand la trame se corrompt : mode et intégrité
- Le SPI a quatre modes, selon la polarité et la phase de l'horloge. Maître et esclave doivent s'accorder sur l'instant où un bit est valide, sinon chaque octet revient en bouillie.
- C'est le bug de remise en route classique sur une carte réparée ou clonée : mauvais mode, et le périphérique ne répond que du charabia. Les fils sont bons ; c'est la convention de timing qui ne l'est pas.
- Dans les calculateurs de sécurité, les trames SPI portent une somme de contrôle ou un CRC. Un seul bit inversé sur une commande de driver pourrait allumer la mauvaise sortie — la trame est donc vérifiée, pas crue sur parole.
- Un CS bloqué, ou un esclave qui ne relâche jamais MISO, empoisonne le bus pour tout le monde. Sur un bus partagé, un seul esclave sourd peut faire taire toute la conversation.
Pourquoi le SPI reste dans le boîtier
- Le SPI est rapide, du mégahertz et plus, mais il ne supporte que des pistes courtes. Étirez-le sur un faisceau et les fronts sonnent, les données se corrompent.
- Il n'a pas d'adressage ni de robustesse pensés pour un réseau : juste une horloge, une sélection, des données. Léger, direct, fait pour dialoguer sur quelques centimètres de circuit imprimé.
- C'est le partage des rôles : le SPI pour l'intérieur, court et véloce ; le CAN pour l'extérieur, plus lent mais robuste sur des mètres de câble et des dizaines de calculateurs.
- Le perdre coûte cher justement parce qu'il est central : tout l'intérieur du calculateur en dépend d'un coup.
Ce que ça veut dire au diagnostic
- Les codes de défaut de communication interne signifient souvent qu'un échange SPI a échoué : le maître a demandé, le périphérique n'a pas répondu correctement.
- Sur l'établi, le SPI montre sa vie à l'oscilloscope ou à l'analyseur logique : horloge, sélection, trafic. Horloge muette, périphérique mort ; horloge présente mais pas de réponse, un esclave à terre.
Dehors, le véhicule parle CAN ; dans le boîtier, la vraie conversation est en SPI — et quand elle se tait, c'est tout le calculateur qui perd pied.
Sur ANP Engineering — file service de reprogrammation moteur pour professionnels : file service ECU, correction de checksum, calculateurs pris en charge, tarifs.
