Espurna
CA
ComunicacióBàsicUARTI2CSPICANbusprotocol

Com parlen els xips (UART, I2C, SPI, CAN)

En 30 segonsUn bus són uns cables compartits. Cada protocol resol a la seva manera qui parla, amb qui i quan: UART punt a punt, I2C per adreça, SPI amb un cable de selecció i CAN per ID de missatge.

També disponible en: English · Castellano

La idea

Un bus són uns cables compartits per diversos dispositius. Cal resoldre tres problemes: qui parla, amb qui i quan.

Protocol Cables Com tria el destinatari Velocitat típica
UART 2 (TX, RX) No cal: punt a punt De 9600 a 1 Mbaud
I2C 2 (SDA, SCL) Adreça de 7 bits 100 o 400 kHz
SPI 4 + un CS per dispositiu Baixa la línia CS de l’escollit Diversos MHz
CAN 2 diferencials ID del missatge; guanya el menor Fins a 1 Mbit/s

Valors típics; depenen del xip.

UART

Bit d’inici (línia baixa), 8 bits de dades amb el menys significatiu primer i bit de parada. El baud rate fixa la velocitat. És la base dels adaptadors USB-sèrie, dels GPS i del bus dels servos Feetech.

I2C

Primer s’envia l’adreça; només el dispositiu que coincideix respon amb un ACK. Si ningú no té aquella adreça, es rep un NACK. Es fa servir en IMU, pantalles i sensors petits.

SPI

El controlador baixa la línia CS (chip select) del dispositiu que vol. Les dades surten i entren alhora. Ràpid, però amb més cables.

CAN

Ningú no té adreça: cada missatge porta un ID. Si dos parlen alhora, guanya l’ID menor i no es perd res (arbitratge). Es fa servir en cotxes i en articulacions de robots.

A la demo

Una pestanya per protocol. A l’I2C, prova una adreça que no té ningú per veure el NACK.

Demo interactiva

Conceptes relacionats