最近客户突然买了一个新设备,之前一直用的致远科技的CAN盒,今天买了一个Kvaser Leaf Light v2,设备到手的时候一脸懵。查阅了官方资料后发现它不像USBCANFD-200U那样需要打开设备这个前置动作,直接开通道就行了。
表中为
Canlib.canOpenChannel()
第二个参数的说明。默认使用 canOPEN_ACCEPT_VIRTUAL 就可以了
canOPEN_EXCLUSIVE | 不允许共享CANlib Channel频道。简而言之就是这个通道只能在当前打开的线程中访问,不允许其他线程或应用访问。 |
canOPEN_REQUIRE_EXTENDED | 默认使用拓展帧。如果指定的电路不允许拓展帧则调用失败;在写入数据时,如果没有指定帧类型,默认发送拓展帧。 |
canOPEN_ACCEPT_VIRTUAL | 允许打开虚拟通道和物理通道。 |
canOPEN_OVERRIDE_EXCLUSIVE | 打开通道,即便这个通道是单独访问的。应该和canOPEN_EXCLUSIVE是相对的 |
canOPEN_REQUIRE_INIT_ACCESS | 需要配合通道初始化一起使用,否则会失败,但失败的返回结果也是CANOK |
canOPEN_NO_INIT_ACCESS | 不需要初始化打开设备 |
canOPEN_ACCEPT_LARGE_DLC | 支持发送DLC大于8字节的内容,否则将截断为8字节 |
canOPEN_CAN_FD | 该通道将使用CAN FD协议,ISO兼容。这也意味着现在可以使用带有canFDMSG_xxx标志的消息。 |
canOPEN_CAN_FD_NONISO | 通道将使用CAN FD NON-ISO协议 |
canOPEN_INTERNAL_L | 不要用!内部使用的。 |
CANlib.dll 说明文档下载链接:
KvaserCANlibAPI资源-CSDN文库https://download.csdn.net/download/m0_60850934/87818897
在github上找到了一个大佬写的CANlib的WPF demo,下载地址:
基于CANlib.dll编写的wpfdemo资源-CSDN文库https://download.csdn.net/download/m0_60850934/87818911
这个DEMO里面的数据是没有进行换算处理的,如果晦涩的话可以在评论区留言,我弄一个集成了DbcPaser的给你们。