首先,要明白只有can_client才会与设备通信,在apollo中can_client提供了三种通信方式
enum CANCardBrand {
FAKE_CAN = 0; //假的数据通信,一般模拟使用
ESD_CAN = 1; //esd canbus卡通信
SOCKET_CAN_RAW = 2; //socket 通信,在gem车上使用
}
需要新增的通信方式,以serial为例
1.在modules/drivers/canbus/proto/can_card_parameter.proto
中新增如下
enum CANCardBrand {
FAKE_CAN = 0;
ESD_CAN = 1;
SOCKET_CAN_RAW = 2;
SERIAL_CAN = 3;