Arduino-CAN是一款专为Arduino设计的软件库,支持通过CAN总线协议实现高效的数据传输与接收功能,简化了嵌入式系统的通信开发。
Arduino的CAN是一个用于使用CAN总线发送和接收数据的库。兼容硬件基于带有内置兼容CAN控制器的板/屏蔽或外部3.3V CAN收发器Microchip MCP2515接线微芯MCP2515,具体连接如下:Arduino VCC 5伏、地线接地线、SCK SCK(同步时钟)、CS CS(片选引脚,默认为10)和INT INT(中断请求,可选)。使用CAN.setPins(cs, irq)可以更改CS和INT引脚设置。如果使用了INT引脚,则必须通过具有中断功能的引脚进行配置。
注意:对于工作在3.3V逻辑电平下的板子,需要添加一个逻辑电平转换器来确保信号兼容性。例如,在ESP32上实现CAN通信时,同样需要外部3.3V CAN收发器,并且连接方式如下:ESP32 3V3引脚到CAN收发器的3V3、地线接地线、CTX(发送)和CRX(接收)。使用CAN.setPins(rx, tx)可以更改CTC和CRC引脚设置。