EN
当前所在位置:首页 > 技术知识 > 安全模块

技术知识

北京盟通科技是工业自动化领域的高科技企业,依托于核心团队多年的海外和行业经验,致力实时现场总线技术及工业通讯技术的推广

在Windows环境下通过C++语言开发--测试你的第一个CANdemo

发布时间:2023-08-15


本文将详细讲解如何通过VCI驱动的API接口快速的控制一个CAN设备的收发

如果您需要在您的PC机器上进行CAN接口的开发和测试,由于PC机器本身不具备CAN接口,您需要通过额外的硬件来将您的PC机上扩展CAN接口,常见的CAN接口扩展方式有:通过USB接口扩展、通过PCIe总线扩展、通过以太网网络扩展等。我们可以提供常见的CAN接口设备,并开放相应的API接口以支持客户进行二次开发,以下内容为通过我们的Ixxat系列产品的API接口开发CAN的演示用例。

此次我将演示在Windows环境下通过C++进行CAN设备开发。首先,您需要安装我们的硬件设备驱动VCI,并在安装的时候选择全部安装,如下图所示:



打开API工程

您可以在以下路径下找到C++CAN驱动demo

C:\Users\Public\Documents\HMS\Ixxat VCI 4.0\Samples\SDK\Console



双击打开工程:



注意,如果想要运行工程,您需要安装visual studio2015及更高的版本。打开工程后,我们直接运行demo进行测试。

开始测试demo工程

点击上方的“本地Windows调试器”。



程序运行之后会先弹出一个窗口,我们需要在此选择设备,选择设备后会展示这个设备的详细信息,如果你想要控制这个设备,你还需要选择一个CAN控制器,这取决了你最后控制的是哪一个CAN通道。



通过CanAnalyser mini测试demo的收发

选择通道之后,设备如果打印如下信息,证明设备已经准备好进行CAN数据的收发了。我们的demo程序中已经预设了发送的数据帧,并会将接收到的数据通过窗口打印出来。



我们需要通过另一个CAN设备(通道)来与这个通道相互链接测试。

我这里测试的设备是USB-to-CAN V2 professional,它本身就具有两个通道,我们通过两个通道之间物理链接后对发的形式进行测试。



打开CanAnalyser mini,我们的驱动自带的免费软件。

我们设定好IDData并开启通道,发送一个数据帧。

我们回到Windows终端窗口上可以看到我们接收到了一个新的数据帧。



测试完接收后,我们进行发送的测试。我们的demo中预设了发送的数据帧为8位数据,从00递增至07ID100

可以通过窗口看到,我们可以按t”按键或者“w按键”来进行数据的发送。



按下t”按键后,我们在另一端观察CanAnalyser mini的接收情况,你应该看到数条数据帧。



按下w”按键后,你应该看到不同ID的数据帧。



至此,数据包的收发测试完毕。

最后你可以点击esc按键来退出demo程序。