在本文中,将使用 Microchip MCP2515 CAN 总线模块和 Arduino 板进行基于CAN总线通信协议通信。 实例中使用一对 CAN 总线模块 MCP2515,我们将在一定的距离内发送 DHT11 传感器数据。 通常情况下,CAN 的通信速度范围从 50 Kbps 到 1Mbps,距离范围可以从 1Mbps 的 40 米到 50kpbs 的 1000 米。
控制器局域网(Controller Area Network)也称为CAN-BUS,是一种常见的工业总线,具有传输距离长、通信速度中等、可靠性高等特点。 它常见于现代机床和汽车诊断总线。
CAN总线是博世(Bosch)开发的汽车总线,允许微控制器和设备在没有主机的情况下在车内相互通信。
CAN总线是一种基于消息的协议,专为汽车应用而设计,但现在也用于航空航天、工业自动化和医疗设备等其他领域。
CAN总线于 1994 年成为国际标准 (ISO 11898),专为机动车辆电子控制器之间的快速串行数据交换而开发。 它连接各个系统和传感器,作为传统多线织机的替代品。 它允许汽车组件在高达 1Mbps 的单线或双线网络数据总线上进行通信。
在现代车辆系统中,有超过 60 到 100 个传感器单元用于传感和交换信息。 同样,汽车制造商也在不断地通过增加自动驾驶、安全气囊系统、ABS(防制动系统)、远程信息处理、变速箱控制、电池管理系统、巡航控制系统等功能来使他们的汽车更智能。 数据在非常高速的标准汽车通信协议中是必需的。 UART、SPI 和 I2C 等标准通信协议对于该系统来说并不可靠。 因此,需要一个像 CAN 协议这样的