arduino can模块组成了控制端
用到了
https://github.com/Seeed-Studio/CAN_BUS_Shield
接线和使用就不说了就收和发两个操作,只说下遇到的问题
- c610连到总线后收发信号都不通,c610只要通上电后就会开始以默认1kHz 的频率发信号。不通的话哪边的问题都有可能, 这时候就需要usb_can模块来调试,分别连两边都是ok的, 最后发现Seeed-Studio/CAN_BUS_Shield里面代码里设置了频率固定16MHz ,而mcp2515是8MHz,mcp_can.h中改为
byte begin(byte speedset, const byte clockset = MCP_8MHz); // init can - examples里信号的类型定义
unsigned char buf[8]; 这个不太好应该用 uint8_t stmp[8] ;
本文介绍在使用Arduino CAN模块进行信号收发时遇到的频率不匹配问题,详细解析了Seeed-Studio/CAN_BUS_Shield代码中固定的16MHz频率与mcp2515的8MHz频率冲突,并提供了修改mcp_can.h文件以解决该问题的方法。
1万+





