VT-System VT2710-RS485

VT-System VT2710-RS485通信
使用VT2710板卡进行RS485通信时,不同于以往使用的RS485通信方式,有一下注意事项:
1、无打开串口操作
电脑和第三方设备进行UART、RS485/RS232通信,都通过电脑的通信端口发送数据。发送数据前要选择端口号,设置波特率、数据位、停止位、奇偶校验位,发送数据时要打开串口,常见调试工具是串口调试助手。
使用VT2710板卡进行RS485通信时,使用的是Vector的硬件,无法选择端口号,无法打开串口。此时一般方法不可用,必须要按照Vector操作VT2710板卡的方式进行。
2.、无发送数据函数
电脑的通信端口向第三方设备发送数据时,调用的是串口发送函数,发送时会确认端口号、发送的数据buffer、数据的发送方式等。使用VT2710板卡进行RS485通信时,无上述操作。
3.、无接收数据函数
电脑的通信端口向第三方设备发送数据后,设备会返回数据,通过接收函数可以获取到设备返回的数据。使用VT2710板卡进行RS485通信时,如何获取接收数据,数据返回方式,如何判断是否接收完成,如何处理接收的数据?
在这里插入图片描述
使用VT2710板卡进行RS485通信时,通信回路拓扑:电脑端口—VT2710板卡—仪器。Vector的硬件板卡VT2710功能较多,支持I2C、UART、SPI、FPGA、DI/DO等功能,不是单一的485通信功能,而且Vector的板卡集成在CANoe软件中,在进行通信前必须选择和配置才能使用。
主要从以下方面进行解决:
1、板卡添加和配置
打开CANoe软件,在Hardware→VT System→Configuration中选中VT2710板卡,在VT2710板卡Pin配置中选择Pin4-Pin7为RS-485通信。
在这里插入图片描述
2、Sensors配置
在CANoe软件界面,Hardware→Sensors→Protocol Configuration中进行Rs485通道配置,要进行通道分配,波特率、数据位、停止位、优先级、保留位的配置。
在这里插入图片描述
3、CANoe板卡系统变量
只有在进行了Vector板卡(VT2710)通信配置以及通道配置,CANoe才会生成系统定义的系统变量,用于发送数据、接收数据以及诊断错误。

在这里插入图片描述

4、发送数据
发送数据时要调用系统变量进行发送,提供了两种发送方式:
方式1:发送指定帧数据
// Send a single frame with payload “42”
sysvar::SENSOR:: RS485::IMD.QueueSerialFrame(42);

方式2:发送一个序列数据
dword SetStartOn[8] = {0x03,0x06,0x0B,0xD1,0x00,0x01,0x1B,0xF5}
sysvar::SENSOR:: RS485::IMD.QueueSerialFrames(SetStartOn,strlen(SetStartOn));
dword SetValue[11]={0x01,0x0F,0x00,0x00,0x00,0x0A,0x02,0x01,0x01,0x25,0x68}
sysvar::SENSOR:: RS485::IMD.QueueSerialFrames(SetStartOn,strlen(SetValue));
注意:发送Modbus协议的数据时要加校验码;非Modbus协议的数据要加结束符。
char MeasureCurrenet[50] = “MEASure:CURRent?”;
sysvar::SENSOR::RS485::AuxPower.QueueSerialFrames(MeasureCurrenet, strlen(MeasureCurrenet));
sysvar::SENSOR::RS485::AuxPower.QueueSerialFrames(“\n”,1);
5、接收数据
调用接收函数,每次接收一个byte数据,需要对接收数据进行存储,判断是否接收完成,然后进行数据解析。
接收的数据-byte Rs485Rec_IMD [100] ;数据长度-dowrd Rs485RecLen_IMD;
接收数据使用Sensors系统变量Frame_Rx,方法如下:
on sysvar_update sysvar::SENSOR::RS485::IMD::Frame_Rx
{
Rs485Rec_IMD[Rs485RecLen_IMD]
= @sysvar::SENSOR::RS485::IMD::Frame_Rx.Data
}
判断数据是否接收完成:
发送数据时每帧数据间隔能保证数据接收完成,并且发送数据有发送标志位,判断发送数据标志位发生变化,表示上一帧数据接收完毕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蜉蚁撼树

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值