L'MCP2551 è un transceiver CAN (Controller Area Network) che ha giocato un ruolo cruciale nelle comunicazioni nei sistemi automobilistici e industriali. Progettato per convertire segnali logici in segnali differenziali, l'MCP2551 supporta velocità di trasmissione fino a 1 Mbps, offrendo una connessione robusta e stabile, anche in ambienti rumorosi. Oramai industria e automotive hanno evoluto le proprie schede implementando CAN FD, una versione aggiornata e migliorata del protocollo CAN, e non supportata da MCP2551. Nonostante ciò, questo transceiver è un ottimo punto di partenza, anche economico, per imparare a interfacciarsi direttamente al CAN BUS.
L'MCP2551 supporta fino a 112 nodi che nello stesso momento si interfacciano allo stesso BUS. Accoppiare l'MCP2551 a un microcontrollore STM32 è semplice e diretto. Collegando i pin TX e RX dell'STM32 all'MCP2551 e alimentando correttamente il dispositivo, puoi utilizzare le librerie HAL per configurare il bus CAN in pochi passaggi. In particolare, oggi utilizzeremo una STNucleo con STM32L432KC per interfacciarci con l'MCP2551, e ci scambieremo dei messaggi con un Arduino Uno che monta un MCP2515 shield.