问鼎国际

【网站地图】
当前地点地位:首页 > 技术知识 > 安全?

在Windows环境下通过C++说话开发--批改并构建自己的CAN利用法式

颁布功夫:2023-08-15

问鼎国际(中国区) - 官方网站

本文将具体解说若何通过VCI驱动的API接口急剧的节造一个CAN设备的收发。

若是您必要在您的PC机械上进行CAN接口的开发和测试,由于PC机械自身不具备CAN接口,您必要通过额表的硬件来将您的PC机上扩大CAN接口,常见的CAN接口扩大方式有:通过USB接口扩大、通过PCIe总线扩大、通过以太网网络扩大等。我们能够提供常见的CAN接口设备,并盛开相应的API接口以支持客户进行二次开发,以下内容为通过问鼎国际Ixxat系列产品的API接口开发CAN的演示用例。

这次我将演示持续在Windows环境下通过C++进行CAN设备开发。上一次我们已经成功的运行了VCI预设的CANdemo,想要节造您的设备这必要您凭据现实情况开发利用。我们必要批改CAN通路的波特率,并发送数据的IDMessage让其发送梦想的数据包。

VCI工程架构

您能够在Visual studio 右侧的树中找到有关的文件,CAN节造有关的demo都是在VCIConsoleSample.cpp这个文件中进行界说和节造的。


问鼎国际(中国区) - 官方网站


VCIConsoleSample.cpp这个文件实现了CAN的初始化、CAN界说、CAN周期收发的作为。由于篇幅的限度,我们不在这里发展解说,下图是CAN执行后的周期执行地位。此处能够看到,上文中按键“t”、“w”的职能就是在这里实现的。


问鼎国际(中国区) - 官方网站


VCI API接口

Ixxat为客户筹备了丰硕的API接口,我将在这里解说最常用的几个API接口。

首先是初始化接口,它决定了CAN的工作模式和波特率。它的界说如下:


问鼎国际(中国区) - 官方网站


我们以批改波特率为例,在demo中找到初始化地位D芄豢吹讲ㄌ芈室丫柚梦嗽ど璧125K,打开界说能够看到波特率能够被设置为125k~1M的若干选择。


问鼎国际(中国区) - 官方网站


除了初始化之表,我们还能够时时必要批改设定CAN ID和发送的CAN数据包。

这都必要用到问鼎国际CAN发送API,它界说如下:


问鼎国际(中国区) - 官方网站


我们必要找到demoID预设的地位:


问鼎国际(中国区) - 官方网站


能够看到预设的ID100,这和我们上篇文章看到的数据一样。

在这之后我们找到批改CAN数据的地位:

这里的数据是逐位递增的,应该是00 01 02 03 04 05 06 07.

若是想要批改发送的数据帧,就必要批改上面的地位。

我们有两种分歧的发送方式,第二种方式对应了按键中的w”按键,它界说如下:


问鼎国际(中国区) - 官方网站


我们必要找到demoID预设的地位:

能够看到预设的ID200,这和我们上篇文章看到的数据一样。

在这之后我们找到批改CAN数据的地位:


问鼎国际(中国区) - 官方网站


这里的数据是逐位递增的,应该是00 01 02 03 04 05 06 07.

若是想要批改发送的数据帧,就必要批改上面的地位。

VCI demo批改示例

我们通过一个单一的例子来演示API的用法:

我们将demo自:125k波特率;ID200;数据00 01 02 03 04 05 06 07

批改为250k波特率;ID120;数据02 04 06 08 0A 0C 0E 10


问鼎国际(中国区) - 官方网站


我们通过CanAnalyser3 mini抓包查看一下成效。


问鼎国际(中国区) - 官方网站


能够看到数据被正确的批改了。

以上就是VCI驱动API操作的单一演示,若是有更多API操作的问题,能够直接与我们进行联系,拨打010-62740270,我们将提供具体的技术支持。

【网站地图】