空燃比分析仪,horiba尾气分析仪,CAN总线分析仪,CAN数据记录仪

广州智维电子科技有限公司

Guangzhou Triv Electronic Technologies Co.LTD

技术服务
SUPPORT

目前位置: 首页 > 技术服务 > 技术资讯

2023-11-30

干货分享 | SENT-232、SENT-USB网关开放通讯协议使用

作者:Triv    点击:292

Part 1  COM口检测

SENT-USB或SENT-RS232模块可以通过USB连接PC进行通讯,另外,SENT-RS232需要额外连接电源(9-30 V),连接完毕后power灯亮起。首先需要确定对应设备的COM口,这里提供两种方式。

1.1  SENT Gateway Analyser

使用官方软件确定COM,软件会自动检测是否其支持的SENT网关,默认比特率为115200,如果成功连接,请记住COM口名。

或者可以选择重新插拔USB,每次打开软件都会扫描一次COM,多出来的COM就是我们要找的。

如果PC上有多个SENT设备,可以通过开关通道使能来确定具体是哪一个。


1.2  设备管理器
经典的方式,插拔USB依旧实用!
如果要修改COM可以采用:右键→属性→端口设置→高级→COM端口号。
需要注意COM口在使用中不能重复。

Part 2   通讯协议

2.1  数据规范


如图,在串口通讯中,SENT网关的数据结构以0x02开始,以0x03结束,开始/结束符(STX/ETX)各占1字节。

长度(LEN):ID(1字节)+DATA(N字节,具体需要根据对应ID的参数要求)

和校验(CHKSUM):(LEN + ID +(DATA0+....+DATAn))& FF; 长度,ID数据的一字节和,即是求和再按位与FF。

2.2  例子——串口助手
序列码读取请求:02 01 5A 5B 03
网关响应: 02 05 5A FF FF FF FE 5A 03

上述开放协议中请求序列码读取指令,其中01为数据长度,5A为ID,5B(0x01+0x5B)为和校验。

响应中,05 (LEN),5A (ID),FF FF FF FE (data),5A(CHKSUM)=(0x05+0x5A+0xFF+0xFF+0xFF+0xFE) & FF

如图,0108044A是我的SENT-USB的S/N,接下来用串口助手向它发送请求。


可以看到响应回的数据为02 05 5A 4A 04 08 01 B6 03,其中data为4A 04 08 01,从高字节到低字节刚刚好为0108044A。

由于我SENT1设置的为RX,SENT2为TX,所以我用ID=51(十进制)让SENT2通道发送数据。可以看到这里对LEN的要求为3-5字节,也就是除了ID的1字节,还需要2字节的DATA。

从这张表就可以看出2字节DATA代表的内容,首先DATA0(1字节)高4位表示数据数,也许有其他作用,但是可以看出好像并不会对响应数据有影响,影响数据的是LEN。低4位表示Status。
DATA1-DATA3表示SENT数据。CRC视情况设置。
下面用串口工具进行测试,这里需要注意发送的数据为十六进制,SENT2发送请求ID=51=0x33。

2.3  例子——Python串口通讯
除了串口助手,也可以使用编程的方式使用通讯协议实现自定义产品控制界面,串口通讯可以在多种编程语言中被轻松地实现,下面是一个简单的请求序列码的案例。

结果截图:


返回列表