[发明专利]一种基于CAN2.0B的CAN总线通信方法有效
申请号: | 201711478076.5 | 申请日: | 2017-12-29 |
公开(公告)号: | CN108199941B | 公开(公告)日: | 2022-03-08 |
发明(设计)人: | 付天坤 | 申请(专利权)人: | 北京纳米维景科技有限公司 |
主分类号: | H04L12/40 | 分类号: | H04L12/40 |
代理公司: | 北京汲智翼成知识产权代理事务所(普通合伙) 11381 | 代理人: | 陈曦;陈丽 |
地址: | 100094 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 can2 can 总线 通信 方法 | ||
1.一种基于CAN2.0B的CAN总线通信方法,其特征在于包括如下步骤:
主设备基于CAN总线通信协议向从设备发送带有命令类型和帧次序编码的通信帧;其中,所述命令类型用于确定命令的应答关系,所述帧次序编码用于区分不同命令帧的先后次序;
从设备接收通信帧,根据通信帧的命令类型到主设备的目标寄存器地址指定的寄存器位置进行操作,并向主设备返回带有帧次序编码的响应帧;
主设备将接收的响应帧存储到从设备的目的寄存器地址指定的寄存器位置;通过所述响应帧和所述通信帧携带的命令类型和帧次序编码是否相同,判定某一帧命令是否已经被响应;
其中,所述通信帧和所述响应帧均为CAN2.0B通信帧,并具有报文识别码;在通信过程中通过接收滤波器实现报文过滤,只有与接收滤波器符合的报文被存储到相应的接收缓存队列中,否则忽略该报文。
2.如权利要求1所述的CAN总线通信方法,其特征在于当通信帧的命令类型为写指令时,通信过程包括如下步骤:
主设备基于CAN总线通信协议向从设备发送带有帧次序编码的通信帧;
从设备接收通信帧,获取通信帧的命令类型为写指令,将通信帧中数据区的数据存储到主设备的目标寄存器地址指定的寄存器位置;
向主设备返回带有帧次序编码的响应帧;
主设备将接收的响应帧存储到从设备的目的寄存器地址指定的寄存器位置。
3.如权利要求1所述的CAN总线通信方法,其特征在于当通信帧的命令类型为读指令时,通信过程包括如下步骤:
主设备基于CAN总线通信协议向从设备发送带有帧次序编码的读指令通信帧;
从设备接收通信帧,获取通信帧的命令类型为读指令,获取主设备的目标寄存器地址,并获取主设备的目标寄存器地址指定的寄存器位置的数据信息,向主设备返回带有帧次序编码和数据信息的响应帧;
主设备将接收的响应帧存储到从设备的目的寄存器地址指定的寄存器位置。
4.如权利要求1所述的CAN总线通信方法,其特征在于:
当发生突发状态时产生优先级高于主从命令的突发指令,从设备生成包含有突发指令的突发通信帧,根据突发通信帧的识别码部分的优先级,按照优先级顺序将突发通信帧发送到主设备;主设备根据从设备的目标寄存器地址,将突发通信帧的数据区内容存储到从设备的目标寄存器地址指定的寄存器位置。
5.如权利要求1所述的CAN总线通信方法,其特征在于:
当通信帧的命令类型为广播帧时,主设备向所有设置有相同广播地址的从设备同时发送广播帧,从设备将收到的数据信息存储到广播帧的目标寄存器地址指定的寄存器位置中,广播帧无需回应。
6.如权利要求1所述的CAN总线通信方法,其特征在于:
基于CAN2.0B的CAN总线通信协议包括识别码部分和数据部分。
7.如权利要求6所述的CAN总线通信方法,其特征在于:
所述识别码部分代表着CAN通信的优先级,识别码部分的数值越小优先级越高。
8.如权利要求6所述的CAN总线通信方法,其特征在于:
所述识别码部分包括命令等级、源设备地址、目标设备地址、命令类型和帧次序编码;
所述命令等级为识别码部分的Bit28-25,表示通信优先级;
所述源设备地址为识别码部分的Bit24-17,表示发送命令的源设备地址;
所述目标设备地址为识别码部分的Bit 16-9,表示接收命令的目标设备地址;
所述命令类型为识别码部分的Bit8-6,表示本帧命令的命令类型;
所述帧次序编码为识别码部分的Bit5-0,表示本帧命令的次序编码。
9.如权利要求8所述的CAN总线通信方法,其特征在于:
所述源设备地址中最低16个地址留作广播帧使用,或作为调试设备地址使用,不作为常用设备地址;
所述目标设备地址中最低16个地址留作广播帧使用,或作为调试设备地址使用,不作为常用设备地址。
10.如权利要求6所述的CAN总线通信方法,其特征在于:
所述数据部分包括目标寄存器地址、源寄存器地址和数据区;
其中,所述目标寄存器地址为数据部分的Byte0-1,表示命令要操作的目标设备的目标寄存器地址,从设备对目标寄存器地址指定的寄存器位置进行写操作或者读取该寄存器位置的内容;
源寄存器地址为数据部分的Byte2-3,表示发送命令的主设备的源寄存器地址,响应帧将响应命令内容写入所述主设备的源寄存器地址对应的寄存器位置;
所述数据区为数据部分的Byte4-7,是对寄存器操作的数据内容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京纳米维景科技有限公司,未经北京纳米维景科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711478076.5/1.html,转载请声明来源钻瓜专利网。