发明名称 智能ODN系统中基于CAN总线的通信方法
摘要 本发明公开了一种智能ODN系统中基于CAN总线的通信方法,涉及智能ODN领域,包括步骤:主控管理模块与配线控制模块作为CAN节点连接到CAN总线上,主控管理模块下发的命令通过CAN总线传到各配线控制模块;每个CAN节点分配唯一的节点标识,主控管理模块是具有最高节点标识优先级的CAN节点;在数据片前后添加传输控制信息,将数据片封装成帧发送;发送CAN报文时由于总线竞争失败的CAN节点,使用二进制指数退避算法重传;接收数据的CAN节点,从接收的CAN报文中恢复数据。本发明能有效提高CPU使用效率和通信效率,比通用串行总线系统的可靠性更高。
申请公布号 CN102739488B 申请公布日期 2014.12.31
申请号 CN201210197067.X 申请日期 2012.06.15
申请人 烽火通信科技股份有限公司 发明人 陈海成;张丹;肜云;王欣;向斐
分类号 H04L12/40(2006.01)I;H04Q11/00(2006.01)I 主分类号 H04L12/40(2006.01)I
代理机构 北京捷诚信通专利事务所(普通合伙) 11221 代理人 魏殿绅;庞炳良
主权项 一种智能ODN系统中基于CAN总线的通信方法,其特征在于包括以下步骤:A、智能ODN系统的主控管理模块与配线控制模块作为CAN节点连接到CAN总线上,主控管理模块下发的命令通过CAN总线传输到各个配线控制模块;给每个CAN节点分配唯一的节点标识,主控管理模块是具有最高节点标识优先级的CAN节点,其发送的CAN报文的节点标识字段是自身节点标识与目的节点标识的或值,其它节点直接将节点标识填充到发送CAN报文的节点标识字段;B、在数据片前后添加传输控制信息,将数据片封装成帧,然后发送成帧的数据片;C、对于发送CAN报文时由于总线竞争失败的CAN节点,使用“二进制指数退避算法”进行重传;D、接收数据的CAN节点,从接收到的CAN报文中恢复数据:在接收到的CAN报文中查找开始标志字段,如果没有找到,则丢弃该CAN报文,继续在下一个CAN报文中查找开始标志字段,直到遇到有符合要求的CAN报文出现;如果找到开始标志字段,则记该CAN报文为Report‑1,从符合要求的CAN报文提取数据长度字段,再根据该字段计算该数据片总共分成的CAN报文数N,N为正整数;接下来收到的CAN报文记为Report‑2、Report‑3……Report‑N,检查接收的CAN报文数量,直到达到接收到恢复该数据片所需的N个CAN报文;在收到的最后两个CAN报文中提取出的结束标志字段不符合格式要求或CRC字段计算有错时,丢弃该CAN报文Report‑1,并继续在Report‑2、Report‑3……Report‑N中查找开始标志字段,重复前面的步骤,直到找到有符合要求的情况出现;在最后两个CAN报文中提取出的结束标志字段和CRC字段无误时,将这N个CAN报文中的数据部分提取出来,恢复成成帧后的数据片;对比提取出目的节点标识与自身的节点标识是否相等,若不相等,则丢弃该N个CAN报文;若相等,则去掉传输控制信息,然后把数据交予上层处理;数据帧接收完成。
地址 430074 湖北省武汉市东湖开发区关东科技园东信路5号
您可能感兴趣的专利