Vue d'ensemble des principaux bus de communication en embarqué — caractéristiques, schémas de câblage, chronogrammes, cas d'usage. Du UART point-à-point au CAN industriel multi-nœuds.
| Protocole | Fils | Topologie | Vitesse typique | Distance | Usage |
|---|---|---|---|---|---|
| UART | 2 (+GND) | Point-à-point | 9.6k – 921.6k bauds | < 15 m (RS-232) | Debug, modems, GPS |
| SPI | 4+ (SCK,MOSI,MISO,CS) | Maître/multi-esclaves | 1 – 50 MHz | < 10 cm | Mémoires, écrans, ADC rapides |
| I²C | 2 (SDA,SCL) | Multi-maîtres/esclaves | 100k / 400k / 1M Hz | < 1 m | Capteurs, EEPROM |
| CAN | 2 (CAN-H,CAN-L) | Multi-nœuds (bus) | 125k – 1M bps | 40 – 1000 m | Automobile, industriel |
| Modbus | 2/4 (RS-485) | Maître/esclaves (RTU) | 9.6k – 115.2k bauds | jusqu'à 1200 m | Automatisme, SCADA |
| USB | 4 (D+,D-,VBUS,GND) | Host/devices | 1.5M / 480M / 5G+ bps | < 5 m | PC périphériques, debug |
| Ethernet | 4 paires (RJ45) | Réseau switché | 10M / 100M / 1G+ bps | 100 m / brin | IoT, supervision, OTA |
Communication série asynchrone : pas d'horloge partagée, les deux côtés doivent s'accorder sur le baud rate. Chaque octet est encadré par un start bit (0) et un stop bit (1).
Bus synchrone full-duplex : à chaque coup d'horloge SCK, un bit est envoyé sur MOSI et reçu sur MISO simultanément. Le CS (chip select) sélectionne l'esclave actif.
Bus 2 fils où chaque esclave a une adresse unique. Le maître initie tout par une condition START, envoie l'adresse, puis lit/écrit. SDA et SCL sont en open-drain avec résistances de pull-up obligatoires.
Bus différentiel très robuste (immunité au bruit), conçu pour l'automobile. Pas de maître : chaque nœud peut émettre, et l'arbitrage par identifiant garantit que le message le plus prioritaire passe sans collision.
Protocole applicatif standard de l'industrie : automates programmables, SCADA, capteurs industriels. Le maître interroge tour à tour les esclaves par leur ID. 4 types de registres : Coils (bits R/W), Discrete Inputs (bits R), Input Registers (16-bit R), Holding Registers (16-bit R/W).
| Protocole | Caractéristique | Usage typique |
|---|---|---|
| RS-485 | Différentiel, multipoint, jusqu'à 1200 m | Couche physique Modbus, automatisme |
| RS-232 | Single-ended, point-à-point, ±12V | Console legacy, modems série |
| LIN | Bus 1 fil 20 kbps maître/esclaves | Sous-bus automobile (lève-vitres, sièges) |
| FlexRay | 2 canaux 10 Mbps déterministe | X-by-wire automobile critique |
| USB | Différentiel host/device 480 Mbps+ | Connexion PC, debug, mass storage |
| Ethernet | Réseau switché 100M–10G bps | IoT, supervision, mise à jour OTA |
| PROFIBUS | RS-485 industriel, déterministe | Automatisme Siemens, instrumentation |
| PROFINET | Ethernet temps-réel industriel | Successeur PROFIBUS, automation moderne |
| EtherCAT | Ethernet maître/esclaves très rapide | Servo-drive, robotique, motion control |
| BLE | Sans-fil basse conso 2.4 GHz | Wearables, beacons, IoT mobile |
| LoRa / LoRaWAN | Sans-fil longue portée (km) | Compteurs intelligents, agriculture, ville |
| Zigbee | Mesh sans-fil 2.4 GHz | Domotique, smart home |
| 1-Wire | 1 seul fil (alimentation comprise) | Capteurs DS18B20, identification |
Courte distance, haute vitesse → SPI (mémoires, écrans) · Multi-capteurs simples → I²C · Multi-MCU/ECU robuste → CAN · Industrie/automatisme → Modbus sur RS-485 · Debug/console → UART · Sans-fil basse conso → BLE ou LoRa · Performance temps-réel industriel → EtherCAT