Интерфейс CAN (Controller Area Network) — это промышленный последовательный протокол обмена данными, изначально разработанный для автомобильной электроники, но широко используемый и в промышленности, медицине, энергетике. Его основная задача — обеспечить надежную, помехоустойчивую и быструю связь между несколькими электронными устройствами (контроллерами) без использования центрального компьютера. CAN работает по принципу «общей шины», где все узлы подключены к двум сигнальным линиям (CAN_H и CAN_L) и обмениваются сообщениями с проверкой целостности данных (CRC), при этом используется механизм приоритета сообщений и автоматического повторного отправления при ошибке.
Микросхемы для реализации CAN могут включать контроллеры CAN (например, Microchip MCP2515 — внешний SPI-контроллер) и CAN-трансиверы (например, Texas Instruments SN65HVD230 или NXP TJA1050), которые преобразуют цифровые сигналы микроконтроллера в дифференциальные сигналы для линии CAN и обратно. Современные микроконтроллеры (STM32, PIC, Atmega с CAN) часто имеют встроенный CAN-контроллер, требуя только внешнего трансивера для подключения к шине. Эти микросхемы обеспечивают высокую скорость передачи (до 1 Мбит/с для классического CAN и выше для CAN FD) и высокую устойчивость к электромагнитным помехам, что особенно важно в транспортных и промышленных системах.