当前位置:文档之家› can总线的通信协议

can总线的通信协议

竭诚为您提供优质文档/双击可除
can总线的通信协议
篇一:停车场系统can总线通信协议
停车场系统can总线通信协议
本系统主控制器采用Rs485通信方式以同管理机(pc)通信。

主控制器同分控制器之间采用can通信方式。

协议按can2.0a规范设计。

标识符用法定义如下:
1定义通行的主机和从机,主控制器为主机,分控制器为从机。

2通信速率为100kbps,使用can2.0a标准帧格式。

3使用id10为命令/应答标志,id10=1时该帧为命令帧,id10=0时该帧为应答帧。

4id9出/入口标志,0表示入口/1表示出口;id8~id3为系统标识地址。

5id2广播标识。

0为广播帧,1为非广播帧。

主/从机在发送数据时必须判断总线上的数据是否为多帧数据,若是则必须等多帧数据结束才可以上传数据,而不至于使多帧数据被打断。

(1)有效数据包含命令和数据。

(2)主机/从机接收数据后,分析data1若为本机机号或广播地址,则必须处理后续数
据,否则不予处理。

主机/从机接收的有效数据应该从
数据场的第二个字节开始,共7个字节。

二)应用层协议
该层协议定义了主机和从机之间的命令和数据格式(定
义在报文的数据区,由于data1参与了滤波,所以从data2
开始),包括两部分:从机主机协议和主机从机协议。

主从
机之间相互传递的有效数据的最后一个字节为有效数据中
除去命令字节和数据长度字节之外所有数据的异或和(bcc)。

1)从机主机协议:说明:
1.如果数据长度超过5个字节,则必须多帧发送。

2.分机主动上传卡号时,data2=5ah。

,数据长度=05h(其中卡号data4—data6为
卡号,data8为bcc。

3.数据长度为data4至data8有效数据字节数。

4.从机应答命令:在分机接收到主机的命令后,返回
一个应答帧。

通知主机是否接正
确收到命令和返回执行命令的结果。

此时,如果接收命令和执行命令正确,data2为主机发送的命令字节数据,如
果接收的命令不正确或执行失败,则data2为将主机发送的
命令字节数据的最高位置1后的字节数据。

5.从机请求命令:(1).command:5bh功能:上传开闸设置length:3 data:开闸设置数据
(2).command:5ah
功能:分机主动上传卡号length:3data:卡号2)主机从机协议:
说明:
1.如果有效数据长度超过5个字节,则必须多帧发送。

2.数据长度为data4至data8有效数据字节数。

3.主机的应答命令:在主机接收到从机的请求命令后,主机返回一个应答帧。

通知从
机是否接正确收到命令和返回执行命令的结果。

此时,如果接收命令和执行命令正确,data2为从机发送的命令字节数据,如果接收的命令不正确或执行失败,则data2为将从机发送的命令字节数据的最高位置1后的字节数据。

4.主机命令:详细说明如下。

三)协议命令说明1.command:02h
功能:月卡进场语音提示与显示屏显示及开闸命令length:5bytes
data:月卡可用天数(4bytesascii码)+卡类
2.command:03h
功能:月卡出场语音提示与显示屏显示及开闸命令
length:5bytes
data:月卡可用天数+卡类
3.command:09h
功能:快到期的月卡入场
length:5bytes
4.command:2bh
功能:快到期的月卡出场length:4bytes
data:月卡可用天数+卡类
5.command:04h功能:储值卡入场length:4bytes
data:卡内的余额(3bytes十六进制)+卡类
6.command:05h功能:储值卡出场length:15bytesdata:收费金额(3bytes),余额(3bytes),停车时间(天--4bytes,时--2bytes,
分—2bytes)+卡类
7.command:0ch
功能:余额不足的储值卡入场length:4bytes
data:卡内的余额+卡类8.command:0dh
功能:余额不足的储值卡出场length:1data:卡类9.command:06h功能:临时卡入场length:1data:卡类10.command:07h功能:临时卡出场length:12
data:收费金额(3bytes)停车时间(天--4bytes,时
--2bytes,分—2bytes)+卡类
11.command:0Fh功能:此卡无效
length:1
data:卡类
12.command:0eh
length:1data:卡类13.command:10h功能:此卡已挂失length:1data:卡类14.command:11h功能:此卡已入场length:1data:卡类15.command:12h功能:此卡已出场length:1data:卡类
16.command:13h
功能:请到指定的入口入场length:1data:卡类
17.command:14h
功能:请到指定的入口出场length:1data:卡类
18.command:15h
功能:此卡本时段不可用length:1data:卡类
19.command:16h(该命令由分机自行处理)功能:有卡请读卡,无卡请取卡length:0data:无
20.command:17h(该命令由分机自行处理)功能:请读卡,时租卡请吞卡或交卡交费length:0data:无功能:请交卡交费length:0data:无
22.command:1ah
功能:请到收费处交费length:0data:无
23.command:1bh
功能:停留超时,请到收费处补交费用length:0data:无24.command:1ch功能:请取卡length:0data:无25.command:1dh功能:车位已满length:0data:无26.command:1eh功能:请稍候。

length:0data:无27.command:24h功能:此卡未授权length:0data:无28.command:2dh(该命令由分机自行处理)功能:系统禁止读卡length:0data:无
29.command:30h功能:读出卡机状态length:0data:无
篇二:can通信协议
总述:
所有通信地址,由can控制器的11位标准标识符指定,这里只规定有效数据的格式。

主机主动发送指令,请求探测器数据。

一、地址分配协议:
1、探测器
接收地址:mkaddr1-99用于接收读漏电指令和设置漏电限值
广播地址:0x7f4用于复位
2、上位机接收数据
返回信息:0x400+探测器地址
返回信息:0x600+探测器地址
二、数据通信协议
1、主机取漏电值
发送:‘R’程序如下:
canbuf[0]=0x00;
canbuf[1]=canptr/8;
canbuf[2]=canptr%8;
canbuf[2] canbuf[3]=0x00; canbuf[4]=0x00;
canbuf[5]=0x01;
canbuf[6]=R;
tx_dat(0);
2、主机复位探测器
发送:‘c’程序如下:
vv=0x7f4;
canbuf[0]=0x00;
canbuf[1]=vv/8;
canbuf[2]=vv%8;
canbuf[2] canbuf[3]=0x00; canbuf[4]=0x00;
canbuf[5]=0x01;
canbuf[6]=c;
tx_dat(0);
3、主机设置探测器
发送:‘s’+内容程序如下:
vv=txaddr;
canbuf[0]=0x00;
canbuf[1]=vv/8;
canbuf[2]=vv%8;
canbuf[2] canbuf[3]=0x00;缓冲区0前8字节缓冲区1后8字节//探测器地址:1-99//1字节数据//发送指令//探测器复位地址:0x07f4//1字节数据//探测器设置地址:1-99
canbuf[4]=0x00;
canbuf[5]=0x05;//5字节数据
canbuf[6]=s;
canbuf[7]=rx2buf[4];
canbuf[8]=rx2buf[5];
canbuf[9]=rx2buf[6];
canbuf[10]=rx2buf[7];
tx_dat(0);
4、探测器返回漏电值
返回:16字节采样信息,分两帧传送。

格式如下:
支路1[2]、支路2[2]、支路3[2]、支路4[2]、支路5[2]、。

相关主题